Re: [PATCH] mm/balloon_compaction: suppress allocation warnings
On Wed, Aug 21, 2019 at 07:44:33PM +, Nadav Amit wrote: > > On Aug 21, 2019, at 12:13 PM, David Hildenbrand wrote: > > > > On 21.08.19 18:34, Nadav Amit wrote: > >>> On Aug 21, 2019, at 9:29 AM, David Hildenbrand wrote: > >>> > >>> On 21.08.19 18:23, Nadav Amit wrote: > > On Aug 21, 2019, at 9:05 AM, David Hildenbrand wrote: > > > > On 20.08.19 11:16, Nadav Amit wrote: > >> There is no reason to print warnings when balloon page allocation > >> fails, > >> as they are expected and can be handled gracefully. Since VMware > >> balloon now uses balloon-compaction infrastructure, and suppressed > >> these > >> warnings before, it is also beneficial to suppress these warnings to > >> keep the same behavior that the balloon had before. > > > > I am not sure if that's a good idea. The allocation warnings are usually > > the only trace of "the user/admin did something bad because he/she tried > > to inflate the balloon to an unsafe value". Believe me, I processed a > > couple of such bugreports related to virtio-balloon and the warning were > > very helpful for that. > > Ok, so a message is needed, but does it have to be a generic frightening > warning? > > How about using __GFP_NOWARN, and if allocation do something like: > > pr_warn(“Balloon memory allocation failed”); > > Or even something more informative? This would surely be less > intimidating > for common users. > >>> > >>> ratelimit would make sense :) > >>> > >>> And yes, this would certainly be nicer. > >> > >> Thanks. I will post v2 of the patch. > > > > As discussed in v2, we already print a warning in virtio-balloon, so I > > am fine with this patch. > > > > Reviewed-by: David Hildenbrand > > Michael, > > If it is possible to get it to 5.3, to avoid behavioral change for VMware > balloon users, it would be great. > > Thanks, > Nadav Just back from vacation, I'll try.
Re: [PATCH] mm/balloon_compaction: suppress allocation warnings
> On Aug 21, 2019, at 12:13 PM, David Hildenbrand wrote: > > On 21.08.19 18:34, Nadav Amit wrote: >>> On Aug 21, 2019, at 9:29 AM, David Hildenbrand wrote: >>> >>> On 21.08.19 18:23, Nadav Amit wrote: > On Aug 21, 2019, at 9:05 AM, David Hildenbrand wrote: > > On 20.08.19 11:16, Nadav Amit wrote: >> There is no reason to print warnings when balloon page allocation fails, >> as they are expected and can be handled gracefully. Since VMware >> balloon now uses balloon-compaction infrastructure, and suppressed these >> warnings before, it is also beneficial to suppress these warnings to >> keep the same behavior that the balloon had before. > > I am not sure if that's a good idea. The allocation warnings are usually > the only trace of "the user/admin did something bad because he/she tried > to inflate the balloon to an unsafe value". Believe me, I processed a > couple of such bugreports related to virtio-balloon and the warning were > very helpful for that. Ok, so a message is needed, but does it have to be a generic frightening warning? How about using __GFP_NOWARN, and if allocation do something like: pr_warn(“Balloon memory allocation failed”); Or even something more informative? This would surely be less intimidating for common users. >>> >>> ratelimit would make sense :) >>> >>> And yes, this would certainly be nicer. >> >> Thanks. I will post v2 of the patch. > > As discussed in v2, we already print a warning in virtio-balloon, so I > am fine with this patch. > > Reviewed-by: David Hildenbrand Michael, If it is possible to get it to 5.3, to avoid behavioral change for VMware balloon users, it would be great. Thanks, Nadav
Re: [PATCH] mm/balloon_compaction: suppress allocation warnings
On 21.08.19 18:34, Nadav Amit wrote: >> On Aug 21, 2019, at 9:29 AM, David Hildenbrand wrote: >> >> On 21.08.19 18:23, Nadav Amit wrote: On Aug 21, 2019, at 9:05 AM, David Hildenbrand wrote: On 20.08.19 11:16, Nadav Amit wrote: > There is no reason to print warnings when balloon page allocation fails, > as they are expected and can be handled gracefully. Since VMware > balloon now uses balloon-compaction infrastructure, and suppressed these > warnings before, it is also beneficial to suppress these warnings to > keep the same behavior that the balloon had before. I am not sure if that's a good idea. The allocation warnings are usually the only trace of "the user/admin did something bad because he/she tried to inflate the balloon to an unsafe value". Believe me, I processed a couple of such bugreports related to virtio-balloon and the warning were very helpful for that. >>> >>> Ok, so a message is needed, but does it have to be a generic frightening >>> warning? >>> >>> How about using __GFP_NOWARN, and if allocation do something like: >>> >>> pr_warn(“Balloon memory allocation failed”); >>> >>> Or even something more informative? This would surely be less intimidating >>> for common users. >> >> ratelimit would make sense :) >> >> And yes, this would certainly be nicer. > > Thanks. I will post v2 of the patch. > As discussed in v2, we already print a warning in virtio-balloon, so I am fine with this patch. Reviewed-by: David Hildenbrand -- Thanks, David / dhildenb
Re: [PATCH] mm/balloon_compaction: suppress allocation warnings
> On Aug 21, 2019, at 9:29 AM, David Hildenbrand wrote: > > On 21.08.19 18:23, Nadav Amit wrote: >>> On Aug 21, 2019, at 9:05 AM, David Hildenbrand wrote: >>> >>> On 20.08.19 11:16, Nadav Amit wrote: There is no reason to print warnings when balloon page allocation fails, as they are expected and can be handled gracefully. Since VMware balloon now uses balloon-compaction infrastructure, and suppressed these warnings before, it is also beneficial to suppress these warnings to keep the same behavior that the balloon had before. >>> >>> I am not sure if that's a good idea. The allocation warnings are usually >>> the only trace of "the user/admin did something bad because he/she tried >>> to inflate the balloon to an unsafe value". Believe me, I processed a >>> couple of such bugreports related to virtio-balloon and the warning were >>> very helpful for that. >> >> Ok, so a message is needed, but does it have to be a generic frightening >> warning? >> >> How about using __GFP_NOWARN, and if allocation do something like: >> >> pr_warn(“Balloon memory allocation failed”); >> >> Or even something more informative? This would surely be less intimidating >> for common users. > > ratelimit would make sense :) > > And yes, this would certainly be nicer. Thanks. I will post v2 of the patch.
Re: [PATCH] mm/balloon_compaction: suppress allocation warnings
On 21.08.19 18:23, Nadav Amit wrote: >> On Aug 21, 2019, at 9:05 AM, David Hildenbrand wrote: >> >> On 20.08.19 11:16, Nadav Amit wrote: >>> There is no reason to print warnings when balloon page allocation fails, >>> as they are expected and can be handled gracefully. Since VMware >>> balloon now uses balloon-compaction infrastructure, and suppressed these >>> warnings before, it is also beneficial to suppress these warnings to >>> keep the same behavior that the balloon had before. >> >> I am not sure if that's a good idea. The allocation warnings are usually >> the only trace of "the user/admin did something bad because he/she tried >> to inflate the balloon to an unsafe value". Believe me, I processed a >> couple of such bugreports related to virtio-balloon and the warning were >> very helpful for that. > > Ok, so a message is needed, but does it have to be a generic frightening > warning? > > How about using __GFP_NOWARN, and if allocation do something like: > > pr_warn(“Balloon memory allocation failed”); > > Or even something more informative? This would surely be less intimidating > for common users. > ratelimit would make sense :) And yes, this would certainly be nicer. -- Thanks, David / dhildenb
Re: [PATCH] mm/balloon_compaction: suppress allocation warnings
> On Aug 21, 2019, at 9:05 AM, David Hildenbrand wrote: > > On 20.08.19 11:16, Nadav Amit wrote: >> There is no reason to print warnings when balloon page allocation fails, >> as they are expected and can be handled gracefully. Since VMware >> balloon now uses balloon-compaction infrastructure, and suppressed these >> warnings before, it is also beneficial to suppress these warnings to >> keep the same behavior that the balloon had before. > > I am not sure if that's a good idea. The allocation warnings are usually > the only trace of "the user/admin did something bad because he/she tried > to inflate the balloon to an unsafe value". Believe me, I processed a > couple of such bugreports related to virtio-balloon and the warning were > very helpful for that. Ok, so a message is needed, but does it have to be a generic frightening warning? How about using __GFP_NOWARN, and if allocation do something like: pr_warn(“Balloon memory allocation failed”); Or even something more informative? This would surely be less intimidating for common users.
Re: [PATCH] mm/balloon_compaction: suppress allocation warnings
On 20.08.19 11:16, Nadav Amit wrote: > There is no reason to print warnings when balloon page allocation fails, > as they are expected and can be handled gracefully. Since VMware > balloon now uses balloon-compaction infrastructure, and suppressed these > warnings before, it is also beneficial to suppress these warnings to > keep the same behavior that the balloon had before. I am not sure if that's a good idea. The allocation warnings are usually the only trace of "the user/admin did something bad because he/she tried to inflate the balloon to an unsafe value". Believe me, I processed a couple of such bugreports related to virtio-balloon and the warning were very helpful for that. > > Cc: Jason Wang > Signed-off-by: Nadav Amit > --- > mm/balloon_compaction.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/mm/balloon_compaction.c b/mm/balloon_compaction.c > index 798275a51887..26de020aae7b 100644 > --- a/mm/balloon_compaction.c > +++ b/mm/balloon_compaction.c > @@ -124,7 +124,8 @@ EXPORT_SYMBOL_GPL(balloon_page_list_dequeue); > struct page *balloon_page_alloc(void) > { > struct page *page = alloc_page(balloon_mapping_gfp_mask() | > -__GFP_NOMEMALLOC | __GFP_NORETRY); > +__GFP_NOMEMALLOC | __GFP_NORETRY | > +__GFP_NOWARN); > return page; > } > EXPORT_SYMBOL_GPL(balloon_page_alloc); > -- Thanks, David / dhildenb
[PATCH] mm/balloon_compaction: suppress allocation warnings
There is no reason to print warnings when balloon page allocation fails, as they are expected and can be handled gracefully. Since VMware balloon now uses balloon-compaction infrastructure, and suppressed these warnings before, it is also beneficial to suppress these warnings to keep the same behavior that the balloon had before. Cc: Jason Wang Signed-off-by: Nadav Amit --- mm/balloon_compaction.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mm/balloon_compaction.c b/mm/balloon_compaction.c index 798275a51887..26de020aae7b 100644 --- a/mm/balloon_compaction.c +++ b/mm/balloon_compaction.c @@ -124,7 +124,8 @@ EXPORT_SYMBOL_GPL(balloon_page_list_dequeue); struct page *balloon_page_alloc(void) { struct page *page = alloc_page(balloon_mapping_gfp_mask() | - __GFP_NOMEMALLOC | __GFP_NORETRY); + __GFP_NOMEMALLOC | __GFP_NORETRY | + __GFP_NOWARN); return page; } EXPORT_SYMBOL_GPL(balloon_page_alloc); -- 2.19.1