All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ira Weiny <ira.weiny@intel.com>
To: "Fabio M. De Francesco" <fmdefrancesco@gmail.com>
Cc: "Matthew Wilcox (Oracle)" <willy@infradead.org>,
	reiserfs-devel@vger.kernel.org, Jan Kara <jack@suse.cz>,
	linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH 0/8] Convert reiserfs from b_page to b_folio
Date: Sat, 17 Dec 2022 15:39:56 -0800	[thread overview]
Message-ID: <Y55TTKG2tgWL7UsQ@iweiny-mobl> (raw)
In-Reply-To: <11295613.F0gNSz5aLb@suse>

On Sat, Dec 17, 2022 at 09:43:11PM +0100, Fabio M. De Francesco wrote:
> On venerdì 16 dicembre 2022 21:53:39 CET Matthew Wilcox (Oracle) wrote:
> > These patches apply on top of
> > https://lore.kernel.org/linux-fsdevel/20221215214402.3522366-1-willy@infradead
> > .org/
> > 
> > The non-trivial ones mostly revolve around uses of kmap()/kmap_atomic(),
> > so review from the experts on those would be welcome.
> 
> I took a quick look at your conversions and they made me recall that months 
> ago you converted to kmap_local_folio() a previous conversion from kmap() to 
> kmap_local_page() in ext2_get_page(): commit 37ce0b319b287 ("ext2: Use a folio 
> in ext2_get_page()").
> 
> So I just saw kmap_local_folio again. Unfortunately, because of my 
> inexperience,  I'm not able to see why we should prefer the use of this 
> function instead of kmap_local_page().
> 
> Can you please tell me why and when we should prefer kmap_local_folio() in 
> those cases too where kmap_local_page() can work properly? I'm asking because 
> these days I'm converting other *_get_page() from kmap() (including the series 
> to fs/ufs that I sent today).

Fabio kmap_local_folio() works on folios and handles determining which page in
the folio is the correct one to map.

AFAICT (from a quick grep) fs/ufs does not have folio support.  I am sure
Mathew would appreciate converting fs/ufs to folios if you have the time and
want to figure it out.

Ira

> 
> > If these all look
> > good to people, I can pass them off to Andrew for the 6.3 merge window.
> > 
> > Running xfstests against reiserfs gives me 313/701 failures before and
> > after this set of patches.
> 
> It has happened several times to me too. Some patches of mine have failures 
> from xfstests whose amounts and types don't change with or without my changes.
> 
> Several of them have already been merged. I guess that if they don't add 
> further failures everything is alright.
> 
> However, something is broken for sure... xfstests or the filesystems? :-/ 
> 
> Thanks,
> 
> Fabio
> 
> > I don't have a huge amount of confidence
> > that we're really getting good coverage from that test run!
> > 
> > Matthew Wilcox (Oracle) (8):
> >   reiserfs: use b_folio instead of b_page in some obvious cases
> >   reiserfs: use kmap_local_folio() in _get_block_create_0()
> >   reiserfs: Convert direct2indirect() to call folio_zero_range()
> >   reiserfs: Convert reiserfs_delete_item() to use kmap_local_folio()
> >   reiserfs: Convert do_journal_end() to use kmap_local_folio()
> >   reiserfs: Convert map_block_for_writepage() to use kmap_local_folio()
> >   reiserfs: Convert convert_tail_for_hole() to use folios
> >   reiserfs: Use flush_dcache_folio() in reiserfs_quota_write()
> > 
> >  fs/reiserfs/inode.c           | 73 +++++++++++++++++------------------
> >  fs/reiserfs/journal.c         | 12 +++---
> >  fs/reiserfs/prints.c          |  4 +-
> >  fs/reiserfs/stree.c           |  9 +++--
> >  fs/reiserfs/super.c           |  2 +-
> >  fs/reiserfs/tail_conversion.c | 19 ++++-----
> >  6 files changed, 59 insertions(+), 60 deletions(-)
> > 
> > --
> > 2.35.1
> 
> 
> 
> 

WARNING: multiple messages have this Message-ID (diff)
From: Ira Weiny <ira.weiny@intel.com>
To: "Fabio M. De Francesco" <fmdefrancesco@gmail.com>
Cc: "Matthew Wilcox (Oracle)" <willy@infradead.org>,
	<reiserfs-devel@vger.kernel.org>, Jan Kara <jack@suse.cz>,
	<linux-fsdevel@vger.kernel.org>
Subject: Re: [PATCH 0/8] Convert reiserfs from b_page to b_folio
Date: Sat, 17 Dec 2022 15:39:56 -0800	[thread overview]
Message-ID: <Y55TTKG2tgWL7UsQ@iweiny-mobl> (raw)
In-Reply-To: <11295613.F0gNSz5aLb@suse>

On Sat, Dec 17, 2022 at 09:43:11PM +0100, Fabio M. De Francesco wrote:
> On venerdì 16 dicembre 2022 21:53:39 CET Matthew Wilcox (Oracle) wrote:
> > These patches apply on top of
> > https://lore.kernel.org/linux-fsdevel/20221215214402.3522366-1-willy@infradead
> > .org/
> > 
> > The non-trivial ones mostly revolve around uses of kmap()/kmap_atomic(),
> > so review from the experts on those would be welcome.
> 
> I took a quick look at your conversions and they made me recall that months 
> ago you converted to kmap_local_folio() a previous conversion from kmap() to 
> kmap_local_page() in ext2_get_page(): commit 37ce0b319b287 ("ext2: Use a folio 
> in ext2_get_page()").
> 
> So I just saw kmap_local_folio again. Unfortunately, because of my 
> inexperience,  I'm not able to see why we should prefer the use of this 
> function instead of kmap_local_page().
> 
> Can you please tell me why and when we should prefer kmap_local_folio() in 
> those cases too where kmap_local_page() can work properly? I'm asking because 
> these days I'm converting other *_get_page() from kmap() (including the series 
> to fs/ufs that I sent today).

Fabio kmap_local_folio() works on folios and handles determining which page in
the folio is the correct one to map.

AFAICT (from a quick grep) fs/ufs does not have folio support.  I am sure
Mathew would appreciate converting fs/ufs to folios if you have the time and
want to figure it out.

Ira

> 
> > If these all look
> > good to people, I can pass them off to Andrew for the 6.3 merge window.
> > 
> > Running xfstests against reiserfs gives me 313/701 failures before and
> > after this set of patches.
> 
> It has happened several times to me too. Some patches of mine have failures 
> from xfstests whose amounts and types don't change with or without my changes.
> 
> Several of them have already been merged. I guess that if they don't add 
> further failures everything is alright.
> 
> However, something is broken for sure... xfstests or the filesystems? :-/ 
> 
> Thanks,
> 
> Fabio
> 
> > I don't have a huge amount of confidence
> > that we're really getting good coverage from that test run!
> > 
> > Matthew Wilcox (Oracle) (8):
> >   reiserfs: use b_folio instead of b_page in some obvious cases
> >   reiserfs: use kmap_local_folio() in _get_block_create_0()
> >   reiserfs: Convert direct2indirect() to call folio_zero_range()
> >   reiserfs: Convert reiserfs_delete_item() to use kmap_local_folio()
> >   reiserfs: Convert do_journal_end() to use kmap_local_folio()
> >   reiserfs: Convert map_block_for_writepage() to use kmap_local_folio()
> >   reiserfs: Convert convert_tail_for_hole() to use folios
> >   reiserfs: Use flush_dcache_folio() in reiserfs_quota_write()
> > 
> >  fs/reiserfs/inode.c           | 73 +++++++++++++++++------------------
> >  fs/reiserfs/journal.c         | 12 +++---
> >  fs/reiserfs/prints.c          |  4 +-
> >  fs/reiserfs/stree.c           |  9 +++--
> >  fs/reiserfs/super.c           |  2 +-
> >  fs/reiserfs/tail_conversion.c | 19 ++++-----
> >  6 files changed, 59 insertions(+), 60 deletions(-)
> > 
> > --
> > 2.35.1
> 
> 
> 
> 

  reply	other threads:[~2022-12-17 23:39 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-16 20:53 [PATCH 0/8] Convert reiserfs from b_page to b_folio Matthew Wilcox (Oracle)
2022-12-16 20:53 ` [PATCH 1/8] reiserfs: use b_folio instead of b_page in some obvious cases Matthew Wilcox (Oracle)
2022-12-16 20:53 ` [PATCH 2/8] reiserfs: use kmap_local_folio() in _get_block_create_0() Matthew Wilcox (Oracle)
2022-12-17 17:14   ` Ira Weiny
2022-12-17 17:14     ` Ira Weiny
2022-12-17 19:07     ` Matthew Wilcox
2022-12-17 23:33       ` Ira Weiny
2022-12-17 23:33         ` Ira Weiny
2022-12-19 10:42       ` Jan Kara
2022-12-16 20:53 ` [PATCH 3/8] reiserfs: Convert direct2indirect() to call folio_zero_range() Matthew Wilcox (Oracle)
2022-12-17 21:08   ` Ira Weiny
2022-12-17 21:08     ` Ira Weiny
2022-12-16 20:53 ` [PATCH 4/8] reiserfs: Convert reiserfs_delete_item() to use kmap_local_folio() Matthew Wilcox (Oracle)
2022-12-17 23:44   ` Ira Weiny
2022-12-17 23:44     ` Ira Weiny
2022-12-16 20:53 ` [PATCH 5/8] reiserfs: Convert do_journal_end() " Matthew Wilcox (Oracle)
2022-12-17 23:52   ` Ira Weiny
2022-12-17 23:52     ` Ira Weiny
2022-12-20  9:35     ` Matthew Wilcox
2022-12-20 11:18       ` Jan Kara
2022-12-20 16:58         ` Ira Weiny
2022-12-20 16:58           ` Ira Weiny
2022-12-20 18:34           ` Matthew Wilcox
2022-12-20 23:59             ` Ira Weiny
2022-12-20 23:59               ` Ira Weiny
2022-12-21 19:04               ` Matthew Wilcox
2022-12-22 10:37                 ` Jan Kara
2022-12-16 20:53 ` [PATCH 6/8] reiserfs: Convert map_block_for_writepage() " Matthew Wilcox (Oracle)
2022-12-18  0:02   ` Ira Weiny
2022-12-18  0:02     ` Ira Weiny
2022-12-16 20:53 ` [PATCH 7/8] reiserfs: Convert convert_tail_for_hole() to use folios Matthew Wilcox (Oracle)
2022-12-16 20:53 ` [PATCH 8/8] reiserfs: Use flush_dcache_folio() in reiserfs_quota_write() Matthew Wilcox (Oracle)
2022-12-17 20:43 ` [PATCH 0/8] Convert reiserfs from b_page to b_folio Fabio M. De Francesco
2022-12-17 23:39   ` Ira Weiny [this message]
2022-12-17 23:39     ` Ira Weiny
2022-12-18  8:09     ` Fabio M. De Francesco
2022-12-18 17:59       ` Matthew Wilcox

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Y55TTKG2tgWL7UsQ@iweiny-mobl \
    --to=ira.weiny@intel.com \
    --cc=fmdefrancesco@gmail.com \
    --cc=jack@suse.cz \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=reiserfs-devel@vger.kernel.org \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.