On lunedì 16 maggio 2022 16:55:54 CEST Matthew Wilcox wrote:
> On Mon, May 16, 2022 at 12:19:25PM +0200, Fabio M. De Francesco wrote:
> > The use of kmap() is being deprecated in favor of kmap_local_page().
With
> > kmap_local_page(), the mapping is per thread, CPU local and not
globally
> > visible.
> >
> > The usage of kmap_local_page() in fs/ufs is pre-thread, therefore
replace
> > kmap() / kunmap() calls with kmap_local_page() / kunmap_local().
> >
> > kunmap_local() requires the mapping address, so return that address
from
> > ufs_get_page() to be used in ufs_put_page().
> >
> > These changes are essentially ported from fs/ext2 and are largely based
on
> > commit 782b76d7abdf ("fs/ext2: Replace kmap() with kmap_local_page()").
> >
> > Suggested-by: Ira Weiny <[email protected]>
> > Reviewed-by: Ira Weiny <[email protected]>
> > Signed-off-by: Fabio M. De Francesco <[email protected]>
>
> Have you done more than compile-tested this? I'd like to know that it's
> been tested on a machine with HIGHMEM enabled (in a VM, presumably).
> UFS doesn't get a lot of testing, and it'd be annoying to put out a
> patch that breaks the kmap_local() rules.
>
No, I have not done more than compile-testing.
However, I understand your concerns regarding these changes. I can only say
that, while they may seem like mechanical replacements, I have carefully
checked the code to be sure enough not to break the logic of the UFS and /
or the rules of local mapping.
I have nothing against testing, but I think they are not needed here unless
you see something that is potentially harmful or suspiciously broken and
you explicitly request it. If so, I'll be testing the code by the end of
this week (I cannot before).
Thanks,
Fabio