From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sowmini Varadhan Subject: Re: [PATCH RFC net-next 1/6] sock: MSG_PEEK support for sk_error_queue Date: Thu, 18 Jan 2018 11:10:48 -0500 Message-ID: <20180118161048.GB24553@oracle.com> References: <05d060dc1169649d84c37ad51b0f8fe54a2a3185.1516147540.git.sowmini.varadhan@oracle.com> <20180118110207.GA24920@oracle.com> <1516290887.3606.21.camel@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Willem de Bruijn , Network Development , David Miller , rds-devel@oss.oracle.com, santosh.shilimkar@oracle.com To: Eric Dumazet Return-path: Received: from userp2130.oracle.com ([156.151.31.86]:33082 "EHLO userp2130.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933360AbeARQP4 (ORCPT ); Thu, 18 Jan 2018 11:15:56 -0500 Content-Disposition: inline In-Reply-To: <1516290887.3606.21.camel@gmail.com> Sender: netdev-owner@vger.kernel.org List-ID: On (01/18/18 07:54), Eric Dumazet wrote: > > Some applications out there would break horribly, trust me. > so I'm not particularly attached to that solution, and I appreciate the wisdom (and the NACK), but lets try to find a useful alternative The current zcopy completion notification mechanism involves syscall overhead already, and is also inadequate for threaded applications sharing an fd. Plus it wont work for datagram sockets. I'm fine with Willem's suggestion of passing a fixed number of cookies as ancillary data (with CTRUNC to denote inadequate buffer) but if we are really so thrifty about syscall overhead, we should not be using sk_error_queue in the first place- perhaps we can pass up the completion notification as ancillary data with recvmsg() on the POLLIN channel itself (which is weird if there is no data to recv, and only ancillary info to pass up, but hey, we are "performant"!). --Sowmini