Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1450994 > unrolled thread

[PATCH v2 repost 3/7] mm: add a function to get the max pfn

Started byLiang Li <liang.z.li@intel.com>
First post2016-07-27 03:40 +0200
Last post2016-07-28 01:00 +0200
Articles 3 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH v2 repost 3/7] mm: add a function to get the max pfn Liang Li <liang.z.li@intel.com> - 2016-07-27 03:40 +0200
    Re: [PATCH v2 repost 3/7] mm: add a function to get the max pfn "Michael S. Tsirkin" <mst@redhat.com> - 2016-07-28 00:10 +0200
      Re: [PATCH v2 repost 3/7] mm: add a function to get the max pfn Dave Hansen <dave.hansen@intel.com> - 2016-07-28 01:00 +0200

#1450994 — [PATCH v2 repost 3/7] mm: add a function to get the max pfn

FromLiang Li <liang.z.li@intel.com>
Date2016-07-27 03:40 +0200
Subject[PATCH v2 repost 3/7] mm: add a function to get the max pfn
Message-ID<rZlZg-1d6-15@gated-at.bofh.it>
Expose the function to get the max pfn, so it can be used in the
virtio-balloon device driver.

Signed-off-by: Liang Li <liang.z.li@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Cornelia Huck <cornelia.huck@de.ibm.com>
Cc: Amit Shah <amit.shah@redhat.com>
---
 mm/page_alloc.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 8b3e134..7da61ad 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -4517,6 +4517,12 @@ void show_free_areas(unsigned int filter)
 	show_swap_cache_info();
 }
 
+unsigned long get_max_pfn(void)
+{
+	return max_pfn;
+}
+EXPORT_SYMBOL(get_max_pfn);
+
 static void zoneref_set_zone(struct zone *zone, struct zoneref *zoneref)
 {
 	zoneref->zone = zone;
-- 
1.9.1

[toc] | [next] | [standalone]


#1451541

From"Michael S. Tsirkin" <mst@redhat.com>
Date2016-07-28 00:10 +0200
Message-ID<rZFbA-5js-15@gated-at.bofh.it>
In reply to#1450994
On Wed, Jul 27, 2016 at 09:23:32AM +0800, Liang Li wrote:
> Expose the function to get the max pfn, so it can be used in the
> virtio-balloon device driver.
> 
> Signed-off-by: Liang Li <liang.z.li@intel.com>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Cc: Vlastimil Babka <vbabka@suse.cz>
> Cc: Mel Gorman <mgorman@techsingularity.net>
> Cc: Michael S. Tsirkin <mst@redhat.com>
> Cc: Paolo Bonzini <pbonzini@redhat.com>
> Cc: Cornelia Huck <cornelia.huck@de.ibm.com>
> Cc: Amit Shah <amit.shah@redhat.com>
> ---
>  mm/page_alloc.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 8b3e134..7da61ad 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -4517,6 +4517,12 @@ void show_free_areas(unsigned int filter)
>  	show_swap_cache_info();
>  }
>  
> +unsigned long get_max_pfn(void)
> +{
> +	return max_pfn;
> +}
> +EXPORT_SYMBOL(get_max_pfn);
> +


This needs a coment that this can change at any time.
So it's only good as a hint e.g. for sizing data structures.

>  static void zoneref_set_zone(struct zone *zone, struct zoneref *zoneref)
>  {
>  	zoneref->zone = zone;
> -- 
> 1.9.1

[toc] | [prev] | [next] | [standalone]


#1451560

FromDave Hansen <dave.hansen@intel.com>
Date2016-07-28 01:00 +0200
Message-ID<rZFXX-5J0-5@gated-at.bofh.it>
In reply to#1451541
On 07/27/2016 03:08 PM, Michael S. Tsirkin wrote:
>> > +unsigned long get_max_pfn(void)
>> > +{
>> > +	return max_pfn;
>> > +}
>> > +EXPORT_SYMBOL(get_max_pfn);
>> > +
> 
> This needs a coment that this can change at any time.
> So it's only good as a hint e.g. for sizing data structures.

Or, if we limit the batches to 1GB like you suggested earlier, then we
might not even need this exported.  It would mean that in the worst
case, we temporarily waste 28k out of the 32k allocation for a small VM
that had <128MB of memory.

That seems like a small price to pay for not having to track max_pfn
anywhere.

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web