On Tue, 24 Mar 2026 18:44:21 -0500
Ira Weiny <[email protected]> wrote:

> Jonathan Cameron wrote:
> > On Tue, 24 Mar 2026 00:37:53 +0000
> > John Groves <[email protected]> wrote:
> >   
> > > From: John Groves <[email protected]>
> > > 
> > > This function will be used by both device.c and fsdev.c, but both are
> > > loadable modules. Moving to bus.c puts it in core and makes it available
> > > to both.
> > > 
> > > No code changes - just relocated.
> > > 
> > > Reviewed-by: Ira Weiny <[email protected]>
> > > Reviewed-by: Dave Jiang <[email protected]>
> > > Signed-off-by: John Groves <[email protected]>  
> > Obviously this is a straight forward code move... But I can't resist
> > commenting on what is moving  (feel free to ignore! or maybe a follow
> > up patch if you agree.
> > 
> > Reviewed-by: Jonathan Cameron <[email protected]>  
> 
> Added this to the series.  LMK if I missed something.
LGTM.

Reviewed-by: Jonathan Cameron <[email protected]>
(don't bother adding it unless you are touching the tree for some other reason!)

> 
> Ira
> 
> ---
> commit ccc1878ab00178e82108bdd1ece497388a24290b (HEAD -> nvdimm-famfs-dax)
> Author: Ira Weiny <[email protected]>
> Date:   Tue Mar 24 12:36:19 2026 -0500
> 
>     dax: Modernize dax_pgoff_to_phys()
> 
>     The patch to move dax_pgoff_to_phys() to bus.c revealed that the
>     function could be improved with more modern style and the newer
>     in_range() utility function.
> 
>     Update it while we are moving it around.
> 
>     Link: https://lore.kernel.org/all/[email protected]/
>     Suggested-by: Jonathan Cameron <[email protected]>
>     Signed-off-by: Ira Weiny <[email protected]>
> 
> diff --git a/drivers/dax/bus.c b/drivers/dax/bus.c
> index e4bd5c9f006c..1b412264bb36 100644
> --- a/drivers/dax/bus.c
> +++ b/drivers/dax/bus.c
> @@ -1421,16 +1421,12 @@ static const struct device_type dev_dax_type = {
>  __weak phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff,
>                               unsigned long size)
>  {
> -       int i;
> -
> -       for (i = 0; i < dev_dax->nr_range; i++) {
> +       for (int i = 0; i < dev_dax->nr_range; i++) {
>                 struct dev_dax_range *dax_range = &dev_dax->ranges[i];
>                 struct range *range = &dax_range->range;
> -               unsigned long long pgoff_end;
>                 phys_addr_t phys;
> 
> -               pgoff_end = dax_range->pgoff + PHYS_PFN(range_len(range)) - 1;
> -               if (pgoff < dax_range->pgoff || pgoff > pgoff_end)
> +               if (!in_range(pgoff, dax_range->pgoff, 
> PHYS_PFN(range_len(range))))
>                         continue;
>                 phys = PFN_PHYS(pgoff - dax_range->pgoff) + range->start;
>                 if (phys + size - 1 <= range->end)
> 


Reply via email to