Re: [PATCH 2/3] mm: Add SECTION_ALIGN_UP() andSECTION_ALIGN_DOWN() macro

From: Dave Hansen
Date: Mon Mar 28 2011 - 11:41:53 EST


On Mon, 2011-03-28 at 11:24 +0200, Daniel Kiper wrote:
> Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro which aligns
> given pfn to upper section and lower section boundary accordingly.
>
> Signed-off-by: Daniel Kiper <dkiper@xxxxxxxxxxxx>
> ---
> include/linux/mmzone.h | 3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
> index 02ecb01..d342820 100644
> --- a/include/linux/mmzone.h
> +++ b/include/linux/mmzone.h
> @@ -931,6 +931,9 @@ static inline unsigned long early_pfn_to_nid(unsigned long pfn)
> #define pfn_to_section_nr(pfn) ((pfn) >> PFN_SECTION_SHIFT)
> #define section_nr_to_pfn(sec) ((sec) << PFN_SECTION_SHIFT)
>
> +#define SECTION_ALIGN_UP(pfn) (((pfn) + PAGES_PER_SECTION - 1) & PAGE_SECTION_MASK)
> +#define SECTION_ALIGN_DOWN(pfn) ((pfn) & PAGE_SECTION_MASK)

There are certainly a lot of different ways to do this, including using
the existing ALIGN() macro, but you won't be the first to open-code
it. :)

Acked-by: Dave Hansen <dave@xxxxxxxxxxxxxxxxxx>

-- Dave

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/