Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp1046147rwd; Wed, 7 Jun 2023 10:11:07 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7ren3CjtBKU0BvtcdFTsmZzmxCXp52VMtc9dqzg7WSY0KSoQ0wRFUg61a/DipIugyxieye X-Received: by 2002:a17:90a:5d17:b0:24e:59d2:6f with SMTP id s23-20020a17090a5d1700b0024e59d2006fmr2462666pji.11.1686157867418; Wed, 07 Jun 2023 10:11:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1686157867; cv=none; d=google.com; s=arc-20160816; b=nSKDWWWhCtyLwGSwZv0bBniByk50BcyImgp/T0wdA1AvpMb2tqpLWFVQyv7Vrww0Im iwytxEV+F1Q5d1PZVGEGE+konLmmejAfcGoKdRD5mwMUX2tz9csuGKksV5u0GZ8J9jl/ 62EBGLfZp0dj12/6+MyXb4YCT4fyZI9BYkZiN7ybJLtcsFOIRGI7vxGP0Zb9U1cSuG8P lufNKlEj0kzq7wnOkZDkpF47Z7aEb+i5w7hERpzsjT/xUtTTAHqcrObD2SzYAs7X+sPD HYdRdEHnGodBqqoY202NgiP1Dwa7ff7fxXseWOYU57oDPO4Ae+NQREjxQO9ffvjrOcDf Qxnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :dkim-signature; bh=RaNh/eQQV0/c3hFtm/zuMjogYq3Sxb0ZAH8aMfx2Q4A=; b=NDXXYzmRvu7U/Dz9lV92Yo8wtXBVSIOcBLS3752DQgDYydHSG5xEAObeb1Sjy+HjQE N2lkuYZQyM6ba/3wjPAmXBEL5Eg2ztLY5gkGLxWQdmS1fP8/vnzGZc6fjYnVs3cOiItH IM9I4qDjVu679AHa20dD1YQVioSC9U6nnEuy3Ys30jz0ri+gEM+Dar7L5ptF7ucZ8HV9 GgvZNISxo4l2RJBEs+GClrhewWnXnBrbFce6J5M09hm7JzXyJqZI/fCdX15BGkQS70Aa a6RtG83QG1c/kGGWhbcjjTaO5SFB0MIhhudaLpETLt9Sgdk6dv22BfUPW5izisSeXK1R /G5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="Inki/nRU"; 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=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d17-20020a170903231100b001ae3b512697si762060plh.113.2023.06.07.10.10.52; Wed, 07 Jun 2023 10:11:07 -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=@kernel.org header.s=k20201202 header.b="Inki/nRU"; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230447AbjFGQ4t (ORCPT + 99 others); Wed, 7 Jun 2023 12:56:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41738 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230179AbjFGQ4r (ORCPT ); Wed, 7 Jun 2023 12:56:47 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A08A413D; Wed, 7 Jun 2023 09:56:46 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 38712641B1; Wed, 7 Jun 2023 16:56:46 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A9642C433EF; Wed, 7 Jun 2023 16:56:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686157005; bh=aPvBZetYhuElDrsk7XgaTFNO0pGltg6x0ZotRqSwJPw=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=Inki/nRUfVwANPsVcJ1lXwPjALjzfm1hJuhTUtyxbCdDVKiA6DT2hysaQq7YRArkY TmcAYk6xx2FxD6ZvT/LxBhyATpqVWXVwoXsxT4L3Fk+VS7tXb7l+Ezz8YYFYq8q3oN 2VLd8kilvOMvEceRci0tIwOEfxF6ZWhZW6zJpebJLwpnoIu63ZhnwNcgUWuTFd3ibp L0MsVZNJ93F5rs2zGgKC/I5saeGGpHAMmCqleqjKHOf2+M7fX4kNpTZjTklqey4w1L GcKK0AbFASSEzR05VPsh1SBNgSFAMsHKsDl80TScNufOJ8BAovXa75T/RLI6PZf2dS ame/Hiq/DI6ow== Date: Wed, 7 Jun 2023 09:56:43 -0700 From: Jakub Kicinski To: David Howells Cc: netdev@vger.kernel.org, Linus Torvalds , Chuck Lever , Boris Pismenny , John Fastabend , "David S. Miller" , Eric Dumazet , Paolo Abeni , Willem de Bruijn , David Ahern , Matthew Wilcox , Jens Axboe , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Christoph Hellwig , Al Viro , Jan Kara , Jeff Layton , David Hildenbrand , Christian Brauner , linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org Subject: Re: [PATCH net-next v5 04/14] splice, net: Add a splice_eof op to file-ops and socket-ops Message-ID: <20230607095643.38c18ef6@kernel.org> In-Reply-To: <20230607140559.2263470-5-dhowells@redhat.com> References: <20230607140559.2263470-1-dhowells@redhat.com> <20230607140559.2263470-5-dhowells@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham 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 On Wed, 7 Jun 2023 15:05:49 +0100 David Howells wrote: > Add an optional method, ->splice_eof(), to allow splice to indicate the > premature termination of a splice to struct file_operations and struct > proto_ops. > > This is called if sendfile() or splice() encounters all of the following > conditions inside splice_direct_to_actor(): > > (1) the user did not set SPLICE_F_MORE (splice only), and > > (2) an EOF condition occurred (->splice_read() returned 0), and > > (3) we haven't read enough to fulfill the request (ie. len > 0 still), and > > (4) we have already spliced at least one byte. > > A further patch will modify the behaviour of SPLICE_F_MORE to always be > passed to the actor if either the user set it or we haven't yet read > sufficient data to fulfill the request. Reviewed-by: Jakub Kicinski