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 4BAF1C5472F for ; Tue, 27 Aug 2024 14:52:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C4BB26B0085; Tue, 27 Aug 2024 10:52:09 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BFB916B0088; Tue, 27 Aug 2024 10:52:09 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A9BE36B0089; Tue, 27 Aug 2024 10:52:09 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 8B5C86B0085 for ; Tue, 27 Aug 2024 10:52:09 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 343C781A39 for ; Tue, 27 Aug 2024 14:52:09 +0000 (UTC) X-FDA: 82498315578.07.F5EDE0E Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf22.hostedemail.com (Postfix) with ESMTP id 865E6C000F for ; Tue, 27 Aug 2024 14:52:06 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=IdFgGB3+; spf=pass (imf22.hostedemail.com: domain of dhowells@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhowells@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1724770306; 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:resent-to: resent-from:resent-message-id:in-reply-to:references:dkim-signature; bh=aFd0/WLiPXvJiPqmeiXOS+H/ZKM/prGo2nSmnbwce94=; b=Ea6tYT1U0Xqf0qz1KREXuIT1O5L9LOQY0xp3UanjrA1TNRr0+NAb/lng5UWuT2u2j8eDnN z+5Gptofu4MHTJ2q3nLS0h0mziLVFS/YKbAe5vCvVdTsmeZThPVLT8Bbvn5auumMukzVV/ v+EMJGLTMHUEP6GlmoiurmuAOZyHS3E= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=IdFgGB3+; spf=pass (imf22.hostedemail.com: domain of dhowells@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhowells@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1724770306; a=rsa-sha256; cv=none; b=jQxT7h0lPeVAc5zwz5iahCYUo76PNimq5+4iqYUEnfrtwaMw7GZWvxS96arRDjusToJWGI z4Ut4oePC1NOwUzeE9f0ovhR0uncSGqkffKkS6rrO08Lr4YBpRnQkrdETmjGs/EbepshXM XEOf+y5z1bkgH/6z13lvZ8RRNF99FfU= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1724770325; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: resent-to:resent-from:resent-message-id; bh=aFd0/WLiPXvJiPqmeiXOS+H/ZKM/prGo2nSmnbwce94=; b=IdFgGB3+yqE6Q5f8HT84uOu60tMCl5uO0WM/8J+ZtzARkaQQFiH7Ycmh8boUCEKAmAvixY QTsvi+4Efup91dYH0oYMjE5G35y8mREgRzXmhoZfU0cUnuhQoh8oOYhDmkzXACAI/f8w2U mssK93tfbovYqTcNKc/qC3+99w50WA4= Received: from mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-528-ozcH9n_JNOytbu-WcbG79g-1; Tue, 27 Aug 2024 10:52:04 -0400 X-MC-Unique: ozcH9n_JNOytbu-WcbG79g-1 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id E840E1955F65 for ; Tue, 27 Aug 2024 14:52:03 +0000 (UTC) Received: from warthog.procyon.org.uk (unknown [10.42.28.30]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 793971955DDD for ; Tue, 27 Aug 2024 14:52:03 +0000 (UTC) X-Mailbox-Line: From dhowells Tue Aug 27 15: 47:14 2024 Received: from imap.gmail.com [74.125.133.108] by warthog.procyon.org.uk with IMAP (fetchmail-7.0.0-alpha9) for (single-drop); Tue, 27 Aug 2024 15:47:14 +0100 (BST) Received: by 2002:a05:6214:1fd3:b0:6bf:960c:8f88 with SMTP id jh19csp263131qvb; Tue, 27 Aug 2024 07:47:01 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVIjcZ89wX77NeiQh5Nsxbwyu1gb+ARm5/jZM3hokJDsyxI6fRWwN7HLIOnjMdXc/AroxCZVFSwRA==@gapps.redhat.com X-Google-Smtp-Source: AGHT+IFzUK+QlaX+R+FUqHKBU3fMGOelPzWozeZXjXTPY2BlW1vKxebVbmd8QLNod9H20Y4aZGK4 X-Received: by 2002:a05:620a:4448:b0:7a1:c40d:7575 with SMTP id af79cd13be357-7a6896ed92bmr1601128485a.17.1724770021105; Tue, 27 Aug 2024 07:47:01 -0700 (PDT) Received: from us-smtp-inbound-delivery-1.mimecast.com (us-smtp-delivery-1.mimecast.com. [170.10.128.131]) by mx.google.com with ESMTPS id d75a77b69052e-454fe1ab202si127561771cf.256.2024.08.27.07.47.00 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Aug 2024 07:47:01 -0700 (PDT) Received: from mx-prod-mc-02.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-465-kvywVcfqPJi2GcaPaR6zLA-1; Tue, 27 Aug 2024 10:46:59 -0400 X-MC-Unique: kvywVcfqPJi2GcaPaR6zLA-1 Received: from mx-prod-int-02.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-02.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.15]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-02.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id CC6231955D48 for ; Tue, 27 Aug 2024 14:46:58 +0000 (UTC) Received: by mx-prod-int-02.mail-002.prod.us-west-2.aws.redhat.com (Postfix) id C7B421955F1B; Tue, 27 Aug 2024 14:46:58 +0000 (UTC) Received: from warthog.procyon.org.uk (unknown [10.42.28.30]) by mx-prod-int-02.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 61AAD19560AA; Tue, 27 Aug 2024 14:46:56 +0000 (UTC) Organization: Red Hat UK Ltd. Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SI4 1TE, United Kingdom. Registered in England and Wales under Company Registration No. 3798903 From: David Howells To: Jan Kara cc: dhowells@redhat.com, Matthew Wilcox , Steve French , netfs@lists.linux.dev, linux-cifs@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: The mapping->invalidate_lock, copy-offload and cifs MIME-Version: 1.0 Date: Tue, 27 Aug 2024 15:46:55 +0100 Message-ID: <774275.1724770015@warthog.procyon.org.uk> X-Scanned-By: MIMEDefang 3.0 on 10.30.177.15 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="us-ascii" Content-ID: <774274.1724770015.1@warthog.procyon.org.uk> X-Rspam-User: X-Stat-Signature: u91nc8a6bbissfupeinaosd716imcp9c X-Rspamd-Queue-Id: 865E6C000F X-Rspamd-Server: rspam11 X-HE-Tag: 1724770326-599385 X-HE-Meta: U2FsdGVkX1/e6RYd4WvXf//AA5nS7EBtaC/HSXzkXigxV1q0dGDyMC+tTvokb7ESwt/fLWXTcA6KRUQ2lE/cCPu4VirYAwStSPRTvmwBi1WRNJOakO2MhY7kpRDI2zEgaDWVKUDa51uGLSUk3P5c7lr9P886uXZa8sYuFEA5ffKZ/oSSM/6GD58lBsLlRhz9dAV+VPWsAk7+oizzdj2eyXvsd4Z41PsOfU0FMOe4KDQZxhrktevJplU96iN8o3qu2s8MBIJni3+7SqTqHbpeIrMPZTrC70tYWYMko4JU5+faNVK2cvLyJXO/MzEjCrYOjaLgZWn6Wm8XKPUvAijEosbVu8IxNKDuogrVUEJ0pUNQrX//iKpC5hZ8b10h+JWhur4ZltBjWVD2FNpIu4wxXxsSE4mTc+vMVlA+wRKRgPVYzPRfZzE/Ip2YKmZtns56kpV5LfSZh8yH3aONRXPZvnuhNz6AosG8WcZ5SQSJQLRG2ohdV75GnbXtbRD/6eaiYyeIjScZnDnIU36W1JtmaGdf3m0pPXOvguOOZsCkt2eSMY3tis8Rx09YiPm9ZwDEY9z6ME+zc7qxRouTq9jNWtpTgAPKvFqAE20HjbGCHX8Dejc6tydwU6rasyvFYGeqARM6Pd22i4M50UfR612LULqBBtjqoV5TR3Ns0+xqpbWJrLK6ufk6imdbzGhtIImc2j9LFmwTszlyMUFRH/cNpxCKVdrDd7h75DlshC7xsoTAXlQsjyGuREPA66Z9CxZmqLn5yF5RBC7p/DUipuSMG9VSztUxVQN6cfaPFzHfYAaZdw2NlOwI4D8ECaRH4N6+P00rcpvRbOMH+jUmvdRwCnX7IveImEsze8z6We6f3BDnJmGAEdQgf0lhhDJYfJ3l5CqjLGUi8cpFpwTNcuw3+JzcxIDzCwylhXxndwTK4EgT5gQgFhZxBev7VAQd7KMBT2ad+pbXsgEIcWDxDHd kLIo4odC Xfs8C9PEccjQ6NfV+QdvNEp0lwpUlniM3AXCUoxQyunNfh3cQRyN51CUq/77fnriAPfOcnaYuR8y0oUvfHEHX9sWj0UlMqNyyxrqTxR08ZJ/gW51y8PL9aoMr0d+MmbJqXIcZ5o4UDC1RnCFaaWKBd+LIyt5AmCcfP32MvaGN4uEN5JxSo2mq0auIPqGYN7FM3H/hi3QeC7R0pVgmhOL/WOj9QFG9ZuSZXIGWWCXshMZRDF6AR+dOtBt0Iw16NIflg++QQ5iwevc2Bo6jdYcVpTcDoSSrh+GmT8e8UJAbgYjSQzY7oSZlFLUxh0HpuzUtocXZnNLu9/rHjp8QjjKNNzdFWr+ZDvPgcaEJBTjBGnpHZbJXx/XOqwDqIwVh12nPfmvHf6Bznr2VJjYVVP+NGYkICetAMWLSekP9HjjrbkczB3qqee8Evl5g3R38zH0Z1CpLpaTXg8yUM2DLISoPOIUAnvgbc0UT1wZj0ZkklseY9ww66bCNeW7a3M0rCwSyzaRXn4w0B8hqTFf2vn3fBzp5lpQbPrapwwGguBQbAergZJVtHZrT10kpLix/C2UGC1J2bpcaDuZwnNqRr9MkAtfqaL866nsyAGM3 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000016, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hi Jann, I'm looking at trying to fix cifs_file_copychunk_range(). Currently, it invalidates the destination range, apart from a partial folio at either end which will be flushed, and then tries the copy. But if the copy fails or can only be partially completed (eg. ENOSPC), we lose any data in the destination region, so I think it needs to be flushed and invalidated rather than just being invalidated. Now, we have filemap_invalidate_inode() which I can use to flush back and invalidate the folios under the invalidate_lock (thereby avoiding the need for launder_folio). However, that doesn't prevent mmap from reinstating the destination folios with modifications whilst the copy is ongoing the moment the invalidate_lock is dropped. Question is: would it be reasonable to do the copy offload whilst holding the invalidate_lock for the duration? Thanks, David