Re: [PATCH] mm: do not print backtraces on GFP_ATOMIC failures

From: KOSAKI Motohiro
Date: Sun Sep 26 2010 - 22:17:32 EST


> > > @@ -72,7 +72,7 @@ struct vm_area_struct;
> > > /* This equals 0, but use constants in case they ever change */
> > > #define GFP_NOWAIT (GFP_ATOMIC & ~__GFP_HIGH)
> > > /* GFP_ATOMIC means both !wait (__GFP_WAIT not set) and use emergency pool */
> > > -#define GFP_ATOMIC (__GFP_HIGH)
> > > +#define GFP_ATOMIC (__GFP_HIGH | __GFP_NOWARN)
> > > #define GFP_NOIO (__GFP_WAIT)
> > > #define GFP_NOFS (__GFP_WAIT | __GFP_IO)
> > > #define GFP_KERNEL (__GFP_WAIT | __GFP_IO | __GFP_FS)
> >
> > A much finer-tuned implementation would be to add __GFP_NOWARN just to
> > the networking call sites. I asked about this in June and it got
> > nixed:
> >
> > http://www.spinics.net/lists/netdev/msg131965.html
> > --
>
> Yes, I remember this particular report was useful to find and correct a
> bug.
>
> I dont know what to say.
>
> Being silent or verbose, it really depends on the context ?

At least, MM developers don't want to track network allocation failure
issue. We don't have enough knowledge in this area. To be honest, We
are unhappy current bad S/N bug report rate ;)

Traditionally, We hoped this warnings help to debug VM issue. but
It haven't happen. We haven't detect VM issue from this allocation
failure report. Instead, We've received a lot of network allocation
failure report.

Recently, The S/N ratio became more bad. If the network device enable
jumbo frame feature, order-2 GFP_ATOMIC allocation is called frequently.
Anybody don't have to assume order-2 allocation can success anytime.

I'm not against accurate warning at all. but I cant tolerate this
semi-random warning steal our time. If anyone will not make accurate
warning, I hope to remove this one completely instead.





--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/