Messages in this thread | ![/](/images/icornerl.gif) | | From | Steven French <> | Subject | RE: [EXTERNAL] [PATCH v3 05/12] cifs: drop usage of page_file_offset | Date | Tue, 30 Apr 2024 02:23:03 +0000 |
| |
Makes sense - I will try to look at this fixing the swapon and reading from swap over smb3.1.1 mounts in the next few weeks, but if you have a good example of sample code (from one of the other FS that does this well) that would help.
-----Original Message----- From: Matthew Wilcox <willy@infradead.org> Sent: Monday, April 29, 2024 3:26 PM To: Steven French <Steven.French@microsoft.com> Cc: Kairui Song <kasong@tencent.com>; linux-mm@kvack.org; Andrew Morton <akpm@linux-foundation.org>; Huang, Ying <ying.huang@intel.com>; Chris Li <chrisl@kernel.org>; Barry Song <v-songbaohua@oppo.com>; Ryan Roberts <ryan.roberts@arm.com>; Neil Brown <neilb@suse.de>; Minchan Kim <minchan@kernel.org>; Hugh Dickins <hughd@google.com>; David Hildenbrand <david@redhat.com>; Yosry Ahmed <yosryahmed@google.com>; linux-fsdevel@vger.kernel.org; linux-kernel@vger.kernel.org; Namjae Jeon <linkinjeon@kernel.org>; Paulo Alcantara (SUSE) <pc@manguebit.com>; Shyam Prasad <Shyam.Prasad@microsoft.com>; Bharath S M <bharathsm@microsoft.com> Subject: Re: [EXTERNAL] [PATCH v3 05/12] cifs: drop usage of page_file_offset
On Mon, Apr 29, 2024 at 08:19:31PM +0000, Steven French wrote: > Wouldn't this make it harder to fix the regression when swap file support was temporarily removed from cifs.ko (due to the folio migration)? I was hoping to come back to fixing swapfile support for cifs.ko in 6.10-rc (which used to pass the various xfstests for this but code got removed with folios/netfs changes).
It was neither the folio conversion nor the netfs conversion which removed the claim of swap support from cifs, but NeilBrown's introduction of ->swap_rw. In commit e1209d3a7a67 he claims that
Only two filesystems set SWP_FS_OPS: - cifs sets the flag, but ->direct_IO always fails so swap cannot work. - nfs sets the flag, but ->direct_IO calls generic_write_checks() which has failed on swap files for several releases.
As I recall the xfstests only checked that swapon/swapoff works; they don't actually test that writing to swap and reading back from it work.
| ![\](/images/icornerr.gif) |