diff mbox series

arm64/fixmap: make notes of fixed_addresses more precisely

Message ID 1594388602-17790-1-git-send-email-kernelfans@gmail.com (mailing list archive)
State New, archived
Headers show
Series arm64/fixmap: make notes of fixed_addresses more precisely | expand

Commit Message

Pingfan Liu July 10, 2020, 1:43 p.m. UTC
These 'compile-time allocated' memory buffers can occupy more than one
page. So improve the note about it.

Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
To: linux-arm-kernel@lists.infradead.org
---
 arch/arm64/include/asm/fixmap.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Catalin Marinas July 30, 2020, 11:09 a.m. UTC | #1
On Fri, Jul 10, 2020 at 09:43:22PM +0800, Pingfan Liu wrote:
> These 'compile-time allocated' memory buffers can occupy more than one
> page. So improve the note about it.
> 
> Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
> Cc: Catalin Marinas <catalin.marinas@arm.com>
> Cc: Will Deacon <will@kernel.org>
> To: linux-arm-kernel@lists.infradead.org
> ---
>  arch/arm64/include/asm/fixmap.h | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/include/asm/fixmap.h b/arch/arm64/include/asm/fixmap.h
> index f987b8a..318aee1 100644
> --- a/arch/arm64/include/asm/fixmap.h
> +++ b/arch/arm64/include/asm/fixmap.h
> @@ -29,7 +29,8 @@
>   * in the boot process.
>   *
>   * These 'compile-time allocated' memory buffers are
> - * page-sized. Use set_fixmap(idx,phys) to associate
> + * page-sized (or larger if used with an increment
> + * higher than 1). Use set_fixmap(idx,phys) to associate
>   * physical memory with fixmap indices.

I don't get this. set_fixmap() only maps a page. Also, what's
"increment" in this context?
Pingfan Liu July 31, 2020, 2:47 a.m. UTC | #2
On Thu, Jul 30, 2020 at 7:09 PM Catalin Marinas <catalin.marinas@arm.com> wrote:
>
> On Fri, Jul 10, 2020 at 09:43:22PM +0800, Pingfan Liu wrote:
> > These 'compile-time allocated' memory buffers can occupy more than one
> > page. So improve the note about it.
> >
> > Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
> > Cc: Catalin Marinas <catalin.marinas@arm.com>
> > Cc: Will Deacon <will@kernel.org>
> > To: linux-arm-kernel@lists.infradead.org
> > ---
> >  arch/arm64/include/asm/fixmap.h | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/arm64/include/asm/fixmap.h b/arch/arm64/include/asm/fixmap.h
> > index f987b8a..318aee1 100644
> > --- a/arch/arm64/include/asm/fixmap.h
> > +++ b/arch/arm64/include/asm/fixmap.h
> > @@ -29,7 +29,8 @@
> >   * in the boot process.
> >   *
> >   * These 'compile-time allocated' memory buffers are
> > - * page-sized. Use set_fixmap(idx,phys) to associate
> > + * page-sized (or larger if used with an increment
> > + * higher than 1). Use set_fixmap(idx,phys) to associate
> >   * physical memory with fixmap indices.
>
> I don't get this. set_fixmap() only maps a page. Also, what's
> "increment" in this context?
I refer to the notes in the counterpart in x86. And for the time
being, it is the case for the ranges (FIX_FDT, FIX_FDT_END), which may
cost more than one page size.

Thanks,
Pingfan
Catalin Marinas July 31, 2020, 12:13 p.m. UTC | #3
On Fri, Jul 31, 2020 at 10:47:13AM +0800, Pingfan Liu wrote:
> On Thu, Jul 30, 2020 at 7:09 PM Catalin Marinas <catalin.marinas@arm.com> wrote:
> > On Fri, Jul 10, 2020 at 09:43:22PM +0800, Pingfan Liu wrote:
> > > These 'compile-time allocated' memory buffers can occupy more than one
> > > page. So improve the note about it.
> > >
> > > Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
> > > Cc: Catalin Marinas <catalin.marinas@arm.com>
> > > Cc: Will Deacon <will@kernel.org>
> > > To: linux-arm-kernel@lists.infradead.org
> > > ---
> > >  arch/arm64/include/asm/fixmap.h | 3 ++-
> > >  1 file changed, 2 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/arch/arm64/include/asm/fixmap.h b/arch/arm64/include/asm/fixmap.h
> > > index f987b8a..318aee1 100644
> > > --- a/arch/arm64/include/asm/fixmap.h
> > > +++ b/arch/arm64/include/asm/fixmap.h
> > > @@ -29,7 +29,8 @@
> > >   * in the boot process.
> > >   *
> > >   * These 'compile-time allocated' memory buffers are
> > > - * page-sized. Use set_fixmap(idx,phys) to associate
> > > + * page-sized (or larger if used with an increment
> > > + * higher than 1). Use set_fixmap(idx,phys) to associate
> > >   * physical memory with fixmap indices.
> >
> > I don't get this. set_fixmap() only maps a page. Also, what's
> > "increment" in this context?
> 
> I refer to the notes in the counterpart in x86. And for the time
> being, it is the case for the ranges (FIX_FDT, FIX_FDT_END), which may
> cost more than one page size.

OK, so increment refers to the enum increment. But if we update this, we
also need to state that set_fixmap() only maps page-size buffers,
otherwise one may think that set_fixmap(FIX_FDT, phys) maps the whole
FDT. We could say that each enum increment represents a page-sized
buffer.
Pingfan Liu Aug. 3, 2020, 2:07 a.m. UTC | #4
On Fri, Jul 31, 2020 at 8:13 PM Catalin Marinas <catalin.marinas@arm.com> wrote:
>
> On Fri, Jul 31, 2020 at 10:47:13AM +0800, Pingfan Liu wrote:
> > On Thu, Jul 30, 2020 at 7:09 PM Catalin Marinas <catalin.marinas@arm.com> wrote:
> > > On Fri, Jul 10, 2020 at 09:43:22PM +0800, Pingfan Liu wrote:
> > > > These 'compile-time allocated' memory buffers can occupy more than one
> > > > page. So improve the note about it.
> > > >
> > > > Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
> > > > Cc: Catalin Marinas <catalin.marinas@arm.com>
> > > > Cc: Will Deacon <will@kernel.org>
> > > > To: linux-arm-kernel@lists.infradead.org
> > > > ---
> > > >  arch/arm64/include/asm/fixmap.h | 3 ++-
> > > >  1 file changed, 2 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git a/arch/arm64/include/asm/fixmap.h b/arch/arm64/include/asm/fixmap.h
> > > > index f987b8a..318aee1 100644
> > > > --- a/arch/arm64/include/asm/fixmap.h
> > > > +++ b/arch/arm64/include/asm/fixmap.h
> > > > @@ -29,7 +29,8 @@
> > > >   * in the boot process.
> > > >   *
> > > >   * These 'compile-time allocated' memory buffers are
> > > > - * page-sized. Use set_fixmap(idx,phys) to associate
> > > > + * page-sized (or larger if used with an increment
> > > > + * higher than 1). Use set_fixmap(idx,phys) to associate
> > > >   * physical memory with fixmap indices.
> > >
> > > I don't get this. set_fixmap() only maps a page. Also, what's
> > > "increment" in this context?
> >
> > I refer to the notes in the counterpart in x86. And for the time
> > being, it is the case for the ranges (FIX_FDT, FIX_FDT_END), which may
> > cost more than one page size.
>
> OK, so increment refers to the enum increment. But if we update this, we
> also need to state that set_fixmap() only maps page-size buffers,
> otherwise one may think that set_fixmap(FIX_FDT, phys) maps the whole
> FDT. We could say that each enum increment represents a page-sized
> buffer.
What about description like:
diff --git a/arch/arm64/include/asm/fixmap.h b/arch/arm64/include/asm/fixmap.h
index f987b8a..4335800 100644
--- a/arch/arm64/include/asm/fixmap.h
+++ b/arch/arm64/include/asm/fixmap.h
@@ -28,10 +28,9 @@
  * compile time, but to set the physical address only
  * in the boot process.
  *
- * These 'compile-time allocated' memory buffers are
- * page-sized. Use set_fixmap(idx,phys) to associate
- * physical memory with fixmap indices.
- *
+ * Each enum increment in these 'compile-time allocated'
+ * memory buffers is page-sized. Use set_fixmap(idx,phys)
+ * to associate physical memory with a fixmap index.
  */

Thanks,
Pingfan
Catalin Marinas Aug. 3, 2020, 11:53 a.m. UTC | #5
On Mon, Aug 03, 2020 at 10:07:16AM +0800, Pingfan Liu wrote:
> What about description like:
> diff --git a/arch/arm64/include/asm/fixmap.h b/arch/arm64/include/asm/fixmap.h
> index f987b8a..4335800 100644
> --- a/arch/arm64/include/asm/fixmap.h
> +++ b/arch/arm64/include/asm/fixmap.h
> @@ -28,10 +28,9 @@
>   * compile time, but to set the physical address only
>   * in the boot process.
>   *
> - * These 'compile-time allocated' memory buffers are
> - * page-sized. Use set_fixmap(idx,phys) to associate
> - * physical memory with fixmap indices.
> - *
> + * Each enum increment in these 'compile-time allocated'
> + * memory buffers is page-sized. Use set_fixmap(idx,phys)
> + * to associate physical memory with a fixmap index.
>   */

It looks fine. Please send it as a separate patch. Thanks.
diff mbox series

Patch

diff --git a/arch/arm64/include/asm/fixmap.h b/arch/arm64/include/asm/fixmap.h
index f987b8a..318aee1 100644
--- a/arch/arm64/include/asm/fixmap.h
+++ b/arch/arm64/include/asm/fixmap.h
@@ -29,7 +29,8 @@ 
  * in the boot process.
  *
  * These 'compile-time allocated' memory buffers are
- * page-sized. Use set_fixmap(idx,phys) to associate
+ * page-sized (or larger if used with an increment
+ * higher than 1). Use set_fixmap(idx,phys) to associate
  * physical memory with fixmap indices.
  *
  */