From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcelo Ricardo Leitner Date: Fri, 29 May 2020 16:10:18 +0000 Subject: Re: [PATCH 4/4] net: remove kernel_setsockopt Message-Id: <20200529161018.GK2491@localhost.localdomain> List-Id: References: <20200529120943.101454-1-hch@lst.de> <20200529120943.101454-5-hch@lst.de> In-Reply-To: <20200529120943.101454-5-hch@lst.de> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Christoph Hellwig Cc: "David S. Miller" , Jakub Kicinski , Vlad Yasevich , Neil Horman , David Laight , linux-sctp@vger.kernel.org, linux-kernel@vger.kernel.org, cluster-devel@redhat.com, netdev@vger.kernel.org On Fri, May 29, 2020 at 02:09:43PM +0200, Christoph Hellwig wrote: > No users left. > > Signed-off-by: Christoph Hellwig Reviewed-by: Marcelo Ricardo Leitner Thanks. > --- > include/linux/net.h | 2 -- > net/socket.c | 31 ------------------------------- > 2 files changed, 33 deletions(-) > > diff --git a/include/linux/net.h b/include/linux/net.h > index 74ef5d7315f70..e10f378194a59 100644 > --- a/include/linux/net.h > +++ b/include/linux/net.h > @@ -303,8 +303,6 @@ int kernel_connect(struct socket *sock, struct sockaddr *addr, int addrlen, > int flags); > int kernel_getsockname(struct socket *sock, struct sockaddr *addr); > int kernel_getpeername(struct socket *sock, struct sockaddr *addr); > -int kernel_setsockopt(struct socket *sock, int level, int optname, char *optval, > - unsigned int optlen); > int kernel_sendpage(struct socket *sock, struct page *page, int offset, > size_t size, int flags); > int kernel_sendpage_locked(struct sock *sk, struct page *page, int offset, > diff --git a/net/socket.c b/net/socket.c > index 81a98b6cbd087..976426d03f099 100644 > --- a/net/socket.c > +++ b/net/socket.c > @@ -3624,37 +3624,6 @@ int kernel_getpeername(struct socket *sock, struct sockaddr *addr) > } > EXPORT_SYMBOL(kernel_getpeername); > > -/** > - * kernel_setsockopt - set a socket option (kernel space) > - * @sock: socket > - * @level: API level (SOL_SOCKET, ...) > - * @optname: option tag > - * @optval: option value > - * @optlen: option length > - * > - * Returns 0 or an error. > - */ > - > -int kernel_setsockopt(struct socket *sock, int level, int optname, > - char *optval, unsigned int optlen) > -{ > - mm_segment_t oldfs = get_fs(); > - char __user *uoptval; > - int err; > - > - uoptval = (char __user __force *) optval; > - > - set_fs(KERNEL_DS); > - if (level = SOL_SOCKET) > - err = sock_setsockopt(sock, level, optname, uoptval, optlen); > - else > - err = sock->ops->setsockopt(sock, level, optname, uoptval, > - optlen); > - set_fs(oldfs); > - return err; > -} > -EXPORT_SYMBOL(kernel_setsockopt); > - > /** > * kernel_sendpage - send a &page through a socket (kernel space) > * @sock: socket > -- > 2.26.2 >