From patchwork Tue Jun 27 20:50:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ahelenia_Ziemia=C5=84ska?= X-Patchwork-Id: 113607 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:994d:0:b0:3d9:f83d:47d9 with SMTP id k13csp8471438vqr; Tue, 27 Jun 2023 14:08:01 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7pIm7LUlIpnZzRLSZ6r02UtFB212d8Hu+PpC2NeVJlKzEI+jcQwJAHk8SdF0cJuPVyIbeW X-Received: by 2002:a05:6a00:3a0a:b0:657:bdf1:cce1 with SMTP id fj10-20020a056a003a0a00b00657bdf1cce1mr43312091pfb.25.1687900080501; Tue, 27 Jun 2023 14:08:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687900080; cv=none; d=google.com; s=arc-20160816; b=yxm0qppu7m732C5I4a1/V7HPTdGgIZ65Ia75LaF/UWlu3MF4VmotGqhTCsH8gpou9c 0mWqMn37p5dVaOiSl3RuRdUUneVCod9GGcdpCLncs3DbkZXbvzoaTk9W5/fU47ci1dI8 A/fE2VTvMoahikNAHt9GOs0p7KsahJuWpDSItZ6bhhLwUt3bKvfUCJl8HDcsStxHhsvL 3su4qoi6NOX1lv+pYvZPrja6sqj8f5Xo9Inu8/TxRX32OKDu8yGqUzzcdPjhGasnLqOc 0uTopQmvkHPm/tJ3E1yaWVHzGme2TDdcVGpum03+/rNk/Qg8l+nIORA9ftG5WLwPYr40 +lmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=c7zI3Ikn18m+weO0Q9d4yhnigfqyd1iPv7UrHGPbFTU=; fh=EwHFucLs4bwDakTQKl/ndDudi5N9htFCanErUntz+qw=; b=BqV0oXEdKU467gX0Cq3NX9LZ65VIzlwRv1qqpIQu+boLGIcM8FLeTn4ouLkPLw6aej ah03dRC8l+ixVGTJqfNjn7tniZSBPh7M8Rl/p4vqdZ+FhivVjA+3imeJyGaFUkb5c56t q4EwDDZYykd2xK03woBqzWqY+/pvZmk7VKN9TSesKEn5REw34rf9dV7G0JHwOUZgySXl vDcgRD1c0lWPiNZG0d4GiJ4rJMfXfE29OwQDnkcAIeF7qJfj0+LfmW8fkl+uAho8yb2o c80tpOjhOxCupCh1IN73f0a8pWNdlWRgQSCwUZoWbydM2ii6QG7ZJwx+WGXyqlUJdc17 NKeQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nabijaczleweli.xyz header.s=202305 header.b=Xz4XR+Xh; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nabijaczleweli.xyz Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id r25-20020a6560d9000000b0053f0bfcd4fasi8070949pgv.173.2023.06.27.14.07.47; Tue, 27 Jun 2023 14:08:00 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@nabijaczleweli.xyz header.s=202305 header.b=Xz4XR+Xh; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nabijaczleweli.xyz Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231488AbjF0Uuy (ORCPT + 99 others); Tue, 27 Jun 2023 16:50:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53914 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230113AbjF0Uuu (ORCPT ); Tue, 27 Jun 2023 16:50:50 -0400 Received: from tarta.nabijaczleweli.xyz (unknown [139.28.40.42]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 194BBED; Tue, 27 Jun 2023 13:50:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nabijaczleweli.xyz; s=202305; t=1687899047; bh=zhLge2fIvDMjALdhMD05+tueCYzIk6/Kl0MFRGFrYIQ=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Xz4XR+XhvVLaJ53FyxpTAVg+9gCf9wr8ep7qkuA+qDeraK1HpJ1LFDrexTiH/h75M fiPAAfxv9YULL4NL+HtBNQ+TLY/cMJW9zfR72jw0vJGQdyX71kSN1Ja9b7DcQRIX6G uouB8Cz9aeDP7eBTLwVKcuV6rZujjsk3IK7oP6v2ncr7dQrxnzRF+ky+zdW1ZYlgDh gn4fp6+g/5C8ftj9KCKTfTjJAoUmRxsQblZGus9n5v4zfWvKkgCPmtOpi2KZTM+e3P qYtGNNIhsd0Rq2Jcr1BtxCpjBzPYw65ZiD+sf7wBX8HU7T8EClw/kigOXlHJ4y8Tlj P8WKYPLisSabw== Received: from tarta.nabijaczleweli.xyz (unknown [192.168.1.250]) by tarta.nabijaczleweli.xyz (Postfix) with ESMTPSA id 55DF412C2; Tue, 27 Jun 2023 22:50:47 +0200 (CEST) Date: Tue, 27 Jun 2023 22:50:46 +0200 From: Ahelenia =?utf-8?q?Ziemia=C5=84ska?= To: Amir Goldstein Cc: Alexander Viro , Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Jan Kara , Chung-Chiang Cheng , ltp@lists.linux.it Subject: [PATCH v4 0/3] fanotify accounting for fs/splice.c Message-ID: References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20230517 X-Spam-Status: No, score=-1.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,PDS_RDNS_DYNAMIC_FP, RDNS_DYNAMIC,SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1769891514921608179?= X-GMAIL-MSGID: =?utf-8?q?1769891514921608179?= Always generate modify out, access in for splice; this gets automatically merged with no ugly special cases. No changes to 2/3 or 3/3. Ahelenia ZiemiaƄska (3): splice: always fsnotify_access(in), fsnotify_modify(out) on success splice: fsnotify_access(fd)/fsnotify_modify(fd) in vmsplice splice: fsnotify_access(in), fsnotify_modify(out) on success in tee fs/splice.c | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) Interdiff against v3: Acked-by: Jan Kara diff --git a/fs/splice.c b/fs/splice.c index 2ecfccbda956..bdbabc2ebfff 100644 --- a/fs/splice.c +++ b/fs/splice.c @@ -1184,10 +1184,6 @@ long do_splice(struct file *in, loff_t *off_in, struct file *out, out->f_pos = offset; else *off_out = offset; - - // splice_write-> already marked out - // as modified via vfs_iter_write() - goto noaccessout; } else if (opipe) { if (off_out) return -ESPIPE; @@ -1211,11 +1207,10 @@ long do_splice(struct file *in, loff_t *off_in, struct file *out, } else return -EINVAL; - if (ret > 0) + if (ret > 0) { fsnotify_modify(out); -noaccessout: - if (ret > 0) fsnotify_access(in); + } return ret; }