Messages in this thread | | | Date | Tue, 30 Jan 2018 21:33:26 +0000 | From | Al Viro <> | Subject | [git pull] reducing kernel_recvmsg() use |
| |
kernel_recvmsg() is a set_fs()-using wrapper for sock_recvmsg(). In all but one case that is not needed - use of ITER_KVEC for ->msg_iter takes care of the data and does not care about set_fs(). The only exception is svc_udp_recvfrom() where we want cmsg to be store into kernel object; everything else can just use sock_recvmsg() and be done with that.
A followup converting svc_udp_recvfrom() away from set_fs() (and killing kernel_recvmsg() off) is *NOT* in that one - I'd like to hear what netdev folks think of the approach proposed in that followup.
The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323:
Linux 4.15-rc1 (2017-11-26 16:01:47 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git work.sock_recvmsg
for you to fetch changes up to bc4802736d8b17eddde52e00838c348770f67c19:
tipc: switch to sock_recvmsg() (2017-12-02 20:38:10 -0500)
---------------------------------------------------------------- Al Viro (10): svc_recvfrom(): switch to sock_recvmsg() dlm: switch to sock_recvmsg() ncpfs: switch to sock_recvmsg() cfs2: switch to sock_recvmsg() lustre lnet_sock_read(): switch to sock_recvmsg() drbd: switch to sock_recvmsg() mISDN: switch to sock_recvmsg() ipvs: switch to sock_recvmsg() smc: switch to sock_recvmsg() tipc: switch to sock_recvmsg()
drivers/block/drbd/drbd_main.c | 8 +------- drivers/block/drbd/drbd_receiver.c | 3 ++- drivers/isdn/mISDN/l1oip_core.c | 22 +++++++++------------- drivers/staging/lustre/lnet/lnet/lib-socket.c | 24 +++++++++++------------- fs/dlm/lowcomms.c | 4 ++-- fs/ncpfs/sock.c | 3 ++- fs/ocfs2/cluster/tcp.c | 3 ++- net/netfilter/ipvs/ip_vs_sync.c | 9 +++------ net/smc/smc_clc.c | 18 ++++++++++-------- net/sunrpc/svcsock.c | 4 ++-- net/tipc/server.c | 4 ++-- 11 files changed, 46 insertions(+), 56 deletions(-)
| |