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, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>