[v3] vmalloc: Add the right hint when vmalloc failed
diff mbox series

Message ID 1594383472-52983-1-git-send-email-tiantao6@hisilicon.com
State New
Headers show
Series
  • [v3] vmalloc: Add the right hint when vmalloc failed
Related show

Commit Message

Tian Tao July 10, 2020, 12:17 p.m. UTC
In fact "vmalloc=<size>" cmdline option is not available on many
platforms.When the user encounters this error, add the correct
hint to prevent misleading.

Signed-off-by: Tian Tao <tiantao6@hisilicon.com>

v2:
Add appropriate hints and let users decide if they can increase
the size of the vmalloc by vmalloc=<size> depending on their platform

v3:
change the patch name and commit messages.
---
 mm/vmalloc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Matthew Wilcox July 10, 2020, 12:43 p.m. UTC | #1
On Fri, Jul 10, 2020 at 08:17:52PM +0800, Tian Tao wrote:
> In fact "vmalloc=<size>" cmdline option is not available on many
> platforms.When the user encounters this error, add the correct
> hint to prevent misleading.

i don't think this is an improvement.
Uladzislau Rezki (Sony) July 10, 2020, 1:49 p.m. UTC | #2
> On Fri, Jul 10, 2020 at 08:17:52PM +0800, Tian Tao wrote:
> > In fact "vmalloc=<size>" cmdline option is not available on many
> > platforms.When the user encounters this error, add the correct
> > hint to prevent misleading.
> 
> i don't think this is an improvement.
>
Matthew, maybe it should not be considered as improvements?

It is rather an extra information that indicates that your
ARCH may not support "vmalloc" early parameter.

Thanks!

--
Vlad Rezki
Matthew Wilcox July 10, 2020, 1:53 p.m. UTC | #3
On Fri, Jul 10, 2020 at 03:49:56PM +0200, Uladzislau Rezki wrote:
> > On Fri, Jul 10, 2020 at 08:17:52PM +0800, Tian Tao wrote:
> > > In fact "vmalloc=<size>" cmdline option is not available on many
> > > platforms.When the user encounters this error, add the correct
> > > hint to prevent misleading.
> > 
> > i don't think this is an improvement.
> >
> Matthew, maybe it should not be considered as improvements?

Every patch should be an improvement along some dimension.  This doesn't
feel like an improvement in any way.

> It is rather an extra information that indicates that your
> ARCH may not support "vmalloc" early parameter.

If anything needs to be improved, it's the documentation, not this
error message.
Uladzislau Rezki (Sony) July 10, 2020, 2:04 p.m. UTC | #4
On Fri, Jul 10, 2020 at 02:53:01PM +0100, Matthew Wilcox wrote:
> On Fri, Jul 10, 2020 at 03:49:56PM +0200, Uladzislau Rezki wrote:
> > > On Fri, Jul 10, 2020 at 08:17:52PM +0800, Tian Tao wrote:
> > > > In fact "vmalloc=<size>" cmdline option is not available on many
> > > > platforms.When the user encounters this error, add the correct
> > > > hint to prevent misleading.
> > > 
> > > i don't think this is an improvement.
> > >
> > Matthew, maybe it should not be considered as improvements?
> 
> Every patch should be an improvement along some dimension.  This doesn't
> feel like an improvement in any way.
> 
> > It is rather an extra information that indicates that your
> > ARCH may not support "vmalloc" early parameter.
> 
> If anything needs to be improved, it's the documentation, not this
> error message.
>
As i mentioned before, i do not have a strong opinion about this
patch. From the other hand improving that message looks normal
to me. Especially in a context that it took a time to understand
that ARM64 does not support it, so we have had a precedent. I am
talking about author of this patch.

--
Vlad Rezki

Patch
diff mbox series

diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index 89e83d3..c6ae7e6 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -1238,8 +1238,8 @@  static struct vmap_area *alloc_vmap_area(unsigned long size,
 	}
 
 	if (!(gfp_mask & __GFP_NOWARN) && printk_ratelimit())
-		pr_warn("vmap allocation for size %lu failed: use vmalloc=<size> to increase size\n",
-			size);
+		pr_warn("vmap allocation for size %lu failed: use vmalloc=<size> to increase size,
+			if your ARCH supports it\n", size);
 
 	kmem_cache_free(vmap_area_cachep, va);
 	return ERR_PTR(-EBUSY);