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 78614D68BD9 for ; Fri, 15 Nov 2024 21:53:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E494B6B00C8; Fri, 15 Nov 2024 16:52:59 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id DF7DD6B00C9; Fri, 15 Nov 2024 16:52:59 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C97206B00CA; Fri, 15 Nov 2024 16:52:59 -0500 (EST) 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 A68F46B00C8 for ; Fri, 15 Nov 2024 16:52:59 -0500 (EST) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 4F190ABBD4 for ; Fri, 15 Nov 2024 21:52:59 +0000 (UTC) X-FDA: 82789677726.07.1A52730 Received: from mail-ed1-f45.google.com (mail-ed1-f45.google.com [209.85.208.45]) by imf19.hostedemail.com (Postfix) with ESMTP id B97B41A0009 for ; Fri, 15 Nov 2024 21:51:59 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=ITtJd6gM; dmarc=none; spf=pass (imf19.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.208.45 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1731707488; h=from:from: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=wRnTlCaiEoX1K58fP8Is31Sc5LhfQsndshqNEhm1YFU=; b=8YrAJUIDZXpc9Z6TQ8JB9MfQ44bHW3aTiqKKQBWlpOfeUQ9seELmowWKxb2yNryHVAkuOS XEkqfdKAsntmnOIIagch0eeDy7AP48qPbQzkF7O17hP+qFagl8lWmPLOJRmNLbG8CTcTS5 GIKKAwMjiw5zmA+tjt94CeI/5+Vp/Ug= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=ITtJd6gM; dmarc=none; spf=pass (imf19.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.208.45 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1731707488; a=rsa-sha256; cv=none; b=mzOGLoUF9FzQCKRJ2gmv+qrl/kpBXp/Us0VabTsQtIbWmPG0iHGt9xCQRVOKos1qbQqzAZ 8zEoTkD/a/BCYSNUKp6r94t4P+Oh9ZaqDKZnbMPqUhROC5Qmkj3wilDEOMZziUbJUKjJUr 0mB0/0Ox/MRnz+KsptPIigiZXyJR2p0= Received: by mail-ed1-f45.google.com with SMTP id 4fb4d7f45d1cf-5cfa581e6aeso58480a12.1 for ; Fri, 15 Nov 2024 13:52:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; t=1731707575; x=1732312375; darn=kvack.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=wRnTlCaiEoX1K58fP8Is31Sc5LhfQsndshqNEhm1YFU=; b=ITtJd6gMR3bIPb0ZlTQNbtt9mrBWoVY/3FKnMxRRZ4id86M+1V6zVdeq3lnGHessor TRYN1KImP2J+nW0h6TfODluivQHD5o5K4ppHCoJcn/iOF8/IADzySsD28tti17nAFaDN 1SzxMUU7Vu+IerNYWe/xHKLVrPVUZFhz6u6ts= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731707575; x=1732312375; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=wRnTlCaiEoX1K58fP8Is31Sc5LhfQsndshqNEhm1YFU=; b=r69DK6GLUArzxJ318RSNTqcpQSOeDKo+JsYPkGtY9UVhxs2oM7qpETwZHbvmcxc/R5 b8Q0y98lXEvNIElLdz24KWJMUAP/BmWgtzKq1jII8a/oAjJtPHc7u9iFeIbqrK+q5bH0 QYsG1/D8ZRtvqaCfNd2Tb7VM0A2xduY6nHSMxgQKHV9QHLYiEFC+WOnruGm1eQt7+Pvd oXRlUvf5zt1RfRbRBtU9iaEisholVrvdlBHNWPDvpp9Vhh37VYPLsbsfpyMR6NRtGJJL ff6rq09uK74dzSCKJHGx4BkyGLJ193mLW2iWOE8JmcWYNicBMmh8azxLn52FTZT4vy/r 2rjw== X-Forwarded-Encrypted: i=1; AJvYcCUujs1MgvhSk8ORvOqVuGlOOBQcYDeDHs6shc6LKPxrcGfLtyco2iTWsqZeHoMbCQoGER8r048rOQ==@kvack.org X-Gm-Message-State: AOJu0YyuIHLf/vXM+tQg4VvU+2KLGvpH65yGPDQhxOO6PBh3PhB7d4sk Q/yews/6jSi76Qg3DVZRl0B9sjCm9AmJsa6J5Al3XouXPibIKrvGe/4JkQK+M7V9uElhm9XupoP D4wc= X-Google-Smtp-Source: AGHT+IHFi4ygpqb4f0XrEtForYNufz3NDavlnYYFB4MpQLS8fTxOFKoNKTv7+OlkLkCm6KeBdwXkdQ== X-Received: by 2002:a05:6402:84c:b0:5cf:9f1:c53 with SMTP id 4fb4d7f45d1cf-5cf8de47571mr4137841a12.6.1731707575363; Fri, 15 Nov 2024 13:52:55 -0800 (PST) Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com. [209.85.218.51]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-5cf79b89bcesm1893406a12.3.2024.11.15.13.52.52 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 15 Nov 2024 13:52:53 -0800 (PST) Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-aa2099efdc3so432101366b.1 for ; Fri, 15 Nov 2024 13:52:52 -0800 (PST) X-Forwarded-Encrypted: i=1; AJvYcCXtkX6LLUJndyhnzSi+ke+0HpTmlqJmGJT60QXdphQn9U0yj+w2efzfQZNj+KEvV56+E2mZiwp1mg==@kvack.org X-Received: by 2002:a17:906:ee8a:b0:a9a:cf0:8fd4 with SMTP id a640c23a62f3a-aa4819060e9mr447528566b.18.1731707572170; Fri, 15 Nov 2024 13:52:52 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Linus Torvalds Date: Fri, 15 Nov 2024 13:52:35 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [LSF/MM/BPF TOPIC] Measuring limits and enhancing buffered IO To: Matthew Wilcox Cc: Luis Chamberlain , Al Viro , lsf-pc@lists.linux-foundation.org, linux-fsdevel@vger.kernel.org, linux-mm , Daniel Gomez , Pankaj Raghav , Jens Axboe , Dave Chinner , Christoph Hellwig , Chris Mason , Johannes Weiner Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: B97B41A0009 X-Stat-Signature: wn86awjyj9e3cpxbn7x49ok4ycn418u6 X-HE-Tag: 1731707519-371272 X-HE-Meta: U2FsdGVkX19eY++rlB/nxNpE2sASYv4FxDwO4haOTZl2B/MEvt1ECrGihmI9RSJIGrbofUiLNLS9Vln7dtoxN9TmDtHAJofuUcx0xUNHFel2C85C/Ec3BRB7YBxsSrNsToBHHA+syWyf1KmakaklVzi7Q4CX0vj38huxBNZFMZweprSAzSnYqnuoSgavZYAu5lJ4qJ6EICQw4/MlAhC7C7mVrkP908BBKaiCffzHO4E9gbgRlaxNW9d/lStis9fvJW9S26JzJMO3e4eErYCpvSkhVgtfp2pRoB4/B3AeWxpt86SamW+1TmoCcK6OK3IgXWnK42fZPislIoJ5g08vzN8nxhHhn+ztC73ZD4ycOdr5CIVKts7HKmg2S0STJDszIrpNPhUZZbr5dqhtJ3LS+ud2OQugAqx5lavSvS/l+fzCmUVCjQK9ZciFDkVu78ny22BmoFwadj9O2kOtukf6kpAw9IuKRSGhkAOtj+F7cMSGJwpDYZ5ug3D+iGQgppc28vNcELA33h8dODoyDdctabfOLY5Enq6mn4WPUXseIBldkDc0zpfx+/SibqDfaBXhBWOt8RTC5iI4Mif3c1b23tIFy8+V/5AeaVLNO9jBQm3ryIjuMGs22zcQDsS5q1ca8RCB9+8nXAxnzlh4uKxI6RDGLaO4r0vUsKZpsfBt0lgRoeYXYiSBcV98Ye+FVoYXzff1/v+v8YIcvBAVYYHQdn+7KM6coe7a9lGVA8JBGk0i6iKgnaLJrgj4sj7xhQQ3vLrkVITKyO5iLbGyIOSDk3tbI2H58cnygcXy+LBrJTSCmtMnityskQIpVREtUdGSOSN6VIuonQEtY3Qye6yuWlwQX6csQYSJC/aE72kJMhWtmAm/l+kPn+JxHPFrPEDnFNrMe5iN8HqO+0qJsxuT+7ntzwMWd6F2ZlYsqm9YnO/ofIPVpez4KepjnSZyj2pK0XTAYxZ3ImSdlyZflIB dMteFxzo 67clTnNeqQm8QPMubnbljAiJOq7SCXR1/2J5p6aaGYVWG//ikNDFUnOSQxvduZDT6kDFCKB0Mnc90edmJ7maO/XftyqW2DqCZdovLjqWRq6vKlJ+DndbL8wkZxdOwiiTAkLWGtugV5SzDoVybiUg3ik/UPorfH838YawFsx8eucVro3A4RSt/mrMESYQc3ptcPCmuEDMnB4wCeAr8004sbAWkVQJiRGrGeg2yjbZT+AlmQDsCKoBgeq8zeFy/0KryHC3v64uBRDedY3fXU3GlKeGR3R0QXpCes+iBB2c5l2Ek5Fzgwby6OP4+g+gGU/dJvmtMIwuZudBMYkpbB3MuiSKE99q9cz8jTg+bmCr1O+tiVPzdM+QSm6qfWtwtq5rwSGg8vJ+KzsEmN7LxY5gYjg1PloGAtesI9R2ry99b/J5uyY/FT+qwNaQHu1J7+8eRPRHwbJuvNBozYsY6tZhOKCcKa3nROPd/imt0p8efg62UwoeN8ZrxzWnwGAkerb4YWShOUj5DJz3Rb5TBdm7xhqRCz4e40y7byvDiDyrAiG0jSkV3VPI9Lbvl3RKBUfbiITWj 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: List-Subscribe: List-Unsubscribe: On Fri, 15 Nov 2024 at 12:42, Matthew Wilcox wrote: > > I don't think you need it: D'oh! I think I was even aware of that originally, but now that I rebased it I just did a mindless "what's the difference between the fast-path and the slow path" thing. The other case I noticed - but ignored - is this part of the slow case: /* * i_size must be checked after we know the pages are Uptodate. * * Checking i_size after the check allows us to calculate * the correct value for "nr", which means the zero-filled * part of the page is not copied back to userspace (unless * another truncate extends the file - this is desired though). */ isize = i_size_read(inode); if (unlikely(iocb->ki_pos >= isize)) goto put_folios; ... /* * If users can be writing to this folio using arbitrary * virtual addresses, take care of potential aliasing * before reading the folio on the kernel side. */ if (writably_mapped) flush_dcache_folio(folio); but I thought that the truncate case shouldn't matter - because a truncate can still happen *during* the copy - and the second case is not relevant on cache-coherent architectures. In fact, now I looked at generic/095 some more, and as far as I can see, that fio script doesn't do any small reads at all! Which makes me even more confused about how it was affected by this change? Funky funky. But maybe that file size check. Because clearly there *is* some difference here, even if it has worked for me and it all looks ObviouslyCorrect(tm). Oh well. Maybe in another 9 months I'll figure it out. I'll keep the patch in my pile of random patches. Linus