From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 203A6C77B61 for ; Thu, 13 Apr 2023 21:01:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id AE6CA6B0072; Thu, 13 Apr 2023 17:01:33 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id AA0416B0074; Thu, 13 Apr 2023 17:01:33 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 95E8B900003; Thu, 13 Apr 2023 17:01:33 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 81E056B0072 for ; Thu, 13 Apr 2023 17:01:33 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 57637A0479 for ; Thu, 13 Apr 2023 21:01:33 +0000 (UTC) X-FDA: 80677588866.30.EFBE011 Received: from zeniv.linux.org.uk (zeniv.linux.org.uk [62.89.141.173]) by imf30.hostedemail.com (Postfix) with ESMTP id 3878380026 for ; Thu, 13 Apr 2023 21:01:30 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=linux.org.uk header.s=zeniv-20220401 header.b=m9duPWlE; spf=none (imf30.hostedemail.com: domain of viro@ftp.linux.org.uk has no SPF policy when checking 62.89.141.173) smtp.mailfrom=viro@ftp.linux.org.uk; dmarc=pass (policy=none) header.from=zeniv.linux.org.uk ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681419691; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=KYHbzCI9LXyDIUFvJhYJMsas+FJ9lhW+iBOsXt4bUjI=; b=0/H9A5OgSfFgo7H24TOgommmOVdC8wwHc3AVTND1S2LevpmvE8C6dFOZkDRESvcVnPwhKQ hMTsKG9hsL0RBqtaIAwqri8sdCmq5JHwMKahdZ9xGO9OldXbvE67eFva6NVtZ3O/4gXbHB HfGx1ZJAyHQ6A7r6MAgiz8xCb4VgbtQ= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=linux.org.uk header.s=zeniv-20220401 header.b=m9duPWlE; spf=none (imf30.hostedemail.com: domain of viro@ftp.linux.org.uk has no SPF policy when checking 62.89.141.173) smtp.mailfrom=viro@ftp.linux.org.uk; dmarc=pass (policy=none) header.from=zeniv.linux.org.uk ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681419691; a=rsa-sha256; cv=none; b=PCuN+fidnRXq6kYky0HPmDln9Ea+wosxoAFB82j90MJHM74kvaw5MF1C2f/FLhQNrEdRDn oNVM0JpU2qy9CAK+0kz4EckvQntxVcl1Ut3v6QRr+bPLLcxt7TPEHP1pyi5dkggvOVXKRQ urCIpEmMMxhDb1c6/5wfVfRrX1sN2is= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=linux.org.uk; s=zeniv-20220401; h=Sender:In-Reply-To:Content-Type: MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=KYHbzCI9LXyDIUFvJhYJMsas+FJ9lhW+iBOsXt4bUjI=; b=m9duPWlEGjDU8+VCf197UaEupq LmiGNeX5d9YHt6/xhMqh+0OMTFW2a1Be1J2tKTGq1r1+Uchpe6v/yGf/0R05b3zOb8PzC6kRvN0vm fb1Y8c7xO8rUV2GDKMtTbRV168AyJyngsher5v7fO3ZqvKWN07iACzr2Nk7RcJrNv7w/fJVJaz1Q/ zEC+jLGw5Z+eEZ3NfEdQj6G3mxmH0IWXUq1pwbhKiK0lWDR3gFKtrLQd52tuvgF/ZmBzpyfEnReLY 9wHZvOc3wwBjlXfE9JnBb88p9qZPL2b62vsOxxoUKoJrB4jUOtWElqTKhCcuTIiyPquDP3jUKF/Xw k9u+K00Q==; Received: from viro by zeniv.linux.org.uk with local (Exim 4.96 #2 (Red Hat Linux)) id 1pn448-008kCS-2f; Thu, 13 Apr 2023 21:01:12 +0000 Date: Thu, 13 Apr 2023 22:01:12 +0100 From: Al Viro To: David Howells Cc: netdev@vger.kernel.org, "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Willem de Bruijn , David Ahern , Matthew Wilcox , Christoph Hellwig , Jens Axboe , Jeff Layton , Christian Brauner , Chuck Lever III , Linus Torvalds , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Willem de Bruijn Subject: Re: [PATCH net-next v6 01/18] net: Declare MSG_SPLICE_PAGES internal sendmsg() flag Message-ID: <20230413210112.GD3390869@ZenIV> References: <20230413042917.GA3390869@ZenIV> <20230411160902.4134381-1-dhowells@redhat.com> <20230411160902.4134381-2-dhowells@redhat.com> <20230413005129.GZ3390869@ZenIV> <1147766.1681418362@warthog.procyon.org.uk> <20230413204918.GC3390869@ZenIV> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230413204918.GC3390869@ZenIV> X-Stat-Signature: aqc7oa1gq4ybh6q55w7pxpceaxabyx5e X-Rspam-User: X-Rspamd-Queue-Id: 3878380026 X-Rspamd-Server: rspam06 X-HE-Tag: 1681419690-223056 X-HE-Meta: U2FsdGVkX198I5HSfl9MddOaj5vRu2JI3W2ziiNvgwY26AaWJ4zx01Tk8LkE8+y1cxTAdSyeYowa8pZSN2j9bjZomJrF4rd3Yw+LzR5O7vTjfgqgGvomy5vBtsfp0ltcIYi5HpVV1z5R1jCWvFtiFcDErRK15oA3Zv+U8XW/bJtZ/W5GztB/zGmqSmM1tN2dQB4mp6m+6rSd2oZow9VgiyF6lMVYpmQ02ts/RaP5jwhRZxL459NHOt48s5QlvbRmthic4plSmtQcdsGNLdBNinmdfzXks6gmZ1RLWZ2wdaf9lrsdAEdJ1Lji19eF+XI9piGP5bivtkro3L/wREu9QzfWbJ0smgFQglookQkbwoZGyWnjIfA/I32jdLx0L+JrvUy3JbS9W/lNnJdwybc2X1gKpEV+/+94NryT2kQT/bLL+SbA5cr6RnqlgW0wUivwyhvPb8t2+mzwingaX+dyqqovBnyh52bWLqYjp1TD8+pMzZBJPvTXfiswmCjqU0TrKwEwZVtx7Sk6UEnm/IpsWYkHE1UMexeT6vCMffq9DClH6QQ9MLPVrtURazi3HIql83kN1/Yf9lCs+sv79zSvXoK6aFJudVfLoTZ+qTWcl9nsu/6ZfJLqNud/bj3Ks50VWQjl3IOy1Y+oR4N+BBrA+r+uTg2OSAZzziRwGYT7o01S99sYbAV1zr1EH88PGCH1CvSAFBpGRp5otmT55P97FpMubXeCE73V5wHIMmS2W5GPJapq/5MImYCk/byFplR/IXF6nodHNi7jhuO2WR8yxG/iYhiIxLF3l7AzbhYduvv+zUQ4iZbXDgpFZ9Mz6W5jHgTB0C/9lYulPcsZ3hIsorDrKzJVO30sCPSLNeCiJPt+rb9b66YuVbLgy1YRySsBrEiZtv/H4B6hLY3SfdYv5Z9giLVRgNGBSoVA/cK6jgQpXrn6PxkRKljZU8vELil+zvHp5p7dv+BbtkSM5kU jTJ9t/sG 2lNkQ5FyV+kq96moOWkQKLfcZ9WbXdT0EStEq40zHw7oVjCOwF0a51IyDy8lQKOta7aQzrfu2ZhPJ5st5DpuxwHB+L1uw1/tOCzCelTX+VgmrLRgbQ01BzsIJGOxIM+2xeDYFEDODr+m4BcgzU4IRbdj7xzYEVOXOWMqUgXASYjAi7/rpTRavRUhgP5qCsRCpoELxEAHfM7h4eU9EILSy7NqNQlBLcXOk2118ITv5HI12fblHPtb5rQ1LiQTElOFRHCuFS86oKT4uRiwm3ztfnPU08uXBluGhikZ+29R0tYFm90aomkGooQtENJIqKRWspUxGQ0wJZudoRHTjqr1CsKe16/WlfxDXk8TyguYdyJrPVHpOpju7ZNyB6SXI8XTAYq/I1QAVrymuVaT9dyB/LDGw3+evP50jjAvh85/6dZrQ9dXYBFC913z2HroD8z42areV1WXMvN3HhqaN1VrLw5AYz2nyeaySMHh8glXtp4q8a1vPWKQeUYARkUErvJIj6dMPr3umgM+TPkmH2JvwXuRNLZC6Jk4AXQQq X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Thu, Apr 13, 2023 at 09:49:18PM +0100, Al Viro wrote: > On Thu, Apr 13, 2023 at 09:39:22PM +0100, David Howells wrote: > > Al Viro wrote: > > > > > Note that io_sendmsg_prep() handles both IORING_OP_SENDMSG and IORING_OP_SEND, > > > so this pair of functions can hit the same request. And sqe->msg_flags is > > > not sanitized at all - it comes straight from user buffer. > > > > Assuming ____sys_sendmsg() is fixed, I think it should be sufficient to make > > io_send() and io_send_zc(). io_sendmsg() and io_sendmsg_zc() will go through > > ____sys_sendmsg(). > > Sure; what I wanted to point out was that despite the name, > io_sendmsg_prep() gets used not only with io_sendmsg(). io_sendmsg() > does go through ____sys_sendmsg(), but io_send() goes straight to > sock_sendmsg() and evades all your checks... Incidentally, having ____sendmsg and ___sendmsg in the same file is more than slightly antisocial - compiler can sort it out, but there are human readers as well. We have ____sys_sendmsg ___sys_sendmsg __sys_sendmsg __sys_sendmmsg next to each other. Maze of twisty little identifiers, all alike...