All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V3 1/2] mm: Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro
@ 2011-05-17 21:37 ` Daniel Kiper
  0 siblings, 0 replies; 7+ messages in thread
From: Daniel Kiper @ 2011-05-17 21:37 UTC (permalink / raw)
  To: ian.campbell, akpm, andi.kleen, haicheng.li, fengguang.wu,
	jeremy, konrad.wilk, dan.magenheimer, v.tolstov, pasik, dave,
	wdauchy, rientjes, xen-devel, linux-kernel, linux-mm

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@net-space.pl>
Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
---
 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 d715200..217bcf6 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
@@ -956,6 +956,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)
+
 struct page;
 struct page_cgroup;
 struct mem_section {
-- 
1.5.6.5

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH V3 1/2] mm: Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro
@ 2011-05-17 21:37 ` Daniel Kiper
  0 siblings, 0 replies; 7+ messages in thread
From: Daniel Kiper @ 2011-05-17 21:37 UTC (permalink / raw)
  To: ian.campbell, akpm, andi.kleen, haicheng.li, fengguang.wu,
	jeremy, konrad.wilk, dan.magenheimer, v.tolstov, pasik, dave,
	wdauchy, rientjes, xen-devel, linux-kernel, linux-mm

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@net-space.pl>
Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
---
 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 d715200..217bcf6 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
@@ -956,6 +956,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)
+
 struct page;
 struct page_cgroup;
 struct mem_section {
-- 
1.5.6.5

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  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@kvack.org"> email@kvack.org </a>

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH V3 1/2] mm: Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro
  2011-05-17 21:37 ` Daniel Kiper
@ 2011-05-19  3:21   ` David Rientjes
  -1 siblings, 0 replies; 7+ messages in thread
From: David Rientjes @ 2011-05-19  3:21 UTC (permalink / raw)
  To: Daniel Kiper
  Cc: ian.campbell, Andrew Morton, Andi Kleen, haicheng.li,
	fengguang.wu, jeremy, konrad.wilk, dan.magenheimer, v.tolstov,
	pasik, Dave Hansen, wdauchy, xen-devel, linux-kernel, linux-mm

On Tue, 17 May 2011, Daniel Kiper wrote:

> diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
> index d715200..217bcf6 100644
> --- a/include/linux/mmzone.h
> +++ b/include/linux/mmzone.h
> @@ -956,6 +956,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)
> +
>  struct page;
>  struct page_cgroup;
>  struct mem_section {

These seem useful.  Could you convert the code in drivers/base/node.c, 
mm/page_cgroup.c, mm/page_alloc.c, and mm/sparse.c that already do this to 
use the new macros?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH V3 1/2] mm: Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro
@ 2011-05-19  3:21   ` David Rientjes
  0 siblings, 0 replies; 7+ messages in thread
From: David Rientjes @ 2011-05-19  3:21 UTC (permalink / raw)
  To: Daniel Kiper
  Cc: ian.campbell, Andrew Morton, Andi Kleen, haicheng.li,
	fengguang.wu, jeremy, konrad.wilk, dan.magenheimer, v.tolstov,
	pasik, Dave Hansen, wdauchy, xen-devel, linux-kernel, linux-mm

On Tue, 17 May 2011, Daniel Kiper wrote:

> diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
> index d715200..217bcf6 100644
> --- a/include/linux/mmzone.h
> +++ b/include/linux/mmzone.h
> @@ -956,6 +956,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)
> +
>  struct page;
>  struct page_cgroup;
>  struct mem_section {

These seem useful.  Could you convert the code in drivers/base/node.c, 
mm/page_cgroup.c, mm/page_alloc.c, and mm/sparse.c that already do this to 
use the new macros?

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  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@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH V3 1/2] mm: Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro
  2011-05-19  3:21   ` David Rientjes
@ 2011-05-19 19:56     ` Daniel Kiper
  -1 siblings, 0 replies; 7+ messages in thread
From: Daniel Kiper @ 2011-05-19 19:56 UTC (permalink / raw)
  To: David Rientjes
  Cc: Daniel Kiper, ian.campbell, Andrew Morton, Andi Kleen,
	haicheng.li, fengguang.wu, jeremy, konrad.wilk, dan.magenheimer,
	v.tolstov, pasik, Dave Hansen, wdauchy, xen-devel, linux-kernel,
	linux-mm

On Wed, May 18, 2011 at 08:21:23PM -0700, David Rientjes wrote:
> On Tue, 17 May 2011, Daniel Kiper wrote:
>
> > diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
> > index d715200..217bcf6 100644
> > --- a/include/linux/mmzone.h
> > +++ b/include/linux/mmzone.h
> > @@ -956,6 +956,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)
> > +
> >  struct page;
> >  struct page_cgroup;
> >  struct mem_section {
>
> These seem useful.  Could you convert the code in drivers/base/node.c,
> mm/page_cgroup.c, mm/page_alloc.c, and mm/sparse.c that already do this to
> use the new macros?

No problem. I do that in next week or two.

Daniel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH V3 1/2] mm: Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro
@ 2011-05-19 19:56     ` Daniel Kiper
  0 siblings, 0 replies; 7+ messages in thread
From: Daniel Kiper @ 2011-05-19 19:56 UTC (permalink / raw)
  To: David Rientjes
  Cc: Daniel Kiper, ian.campbell, Andrew Morton, Andi Kleen,
	haicheng.li, fengguang.wu, jeremy, konrad.wilk, dan.magenheimer,
	v.tolstov, pasik, Dave Hansen, wdauchy, xen-devel, linux-kernel,
	linux-mm

On Wed, May 18, 2011 at 08:21:23PM -0700, David Rientjes wrote:
> On Tue, 17 May 2011, Daniel Kiper wrote:
>
> > diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
> > index d715200..217bcf6 100644
> > --- a/include/linux/mmzone.h
> > +++ b/include/linux/mmzone.h
> > @@ -956,6 +956,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)
> > +
> >  struct page;
> >  struct page_cgroup;
> >  struct mem_section {
>
> These seem useful.  Could you convert the code in drivers/base/node.c,
> mm/page_cgroup.c, mm/page_alloc.c, and mm/sparse.c that already do this to
> use the new macros?

No problem. I do that in next week or two.

Daniel

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  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@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH V3 1/2] mm: Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro
@ 2011-05-17 21:37 Daniel Kiper
  0 siblings, 0 replies; 7+ messages in thread
From: Daniel Kiper @ 2011-05-17 21:37 UTC (permalink / raw)
  To: ian.campbell, akpm, andi.kleen, haicheng.li, fengguang.wu,
	jeremy, konrad.wilk, dan.magenheimer

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@net-space.pl>
Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
---
 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 d715200..217bcf6 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
@@ -956,6 +956,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)
+
 struct page;
 struct page_cgroup;
 struct mem_section {
-- 
1.5.6.5

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2011-05-19 19:58 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-05-17 21:37 [PATCH V3 1/2] mm: Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro Daniel Kiper
2011-05-17 21:37 ` Daniel Kiper
2011-05-19  3:21 ` David Rientjes
2011-05-19  3:21   ` David Rientjes
2011-05-19 19:56   ` Daniel Kiper
2011-05-19 19:56     ` Daniel Kiper
  -- strict thread matches above, loose matches on Subject: below --
2011-05-17 21:37 Daniel Kiper

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.