lkml.org 
[lkml]   [2008]   [Apr]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: GFP_ATOMIC page allocation failures.
    On Wed, 02 Apr 2008 13:21:44 -0400 Jeff Garzik <jeff@garzik.org> wrote:

    > Andrew Morton wrote:
    > > The appropriate thing to do here is to convert known-good drivers (such as
    > > e1000[e]) to use __GFP_NOWARN.
    > >
    > > Unfortunately netdev_alloc_skb() went and assumed GFP_ATOMIC, but I guess
    > > we can dive below the covers and use __netdev_alloc_skb():
    > >
    > >
    > >
    > > From: Andrew Morton <akpm@linux-foundation.org>
    > >
    > > We get rather a lot of reports of page allocation warnings coming out of
    > > e1000. But this driver is know to handle them properly so let's suppress
    > > them.
    >
    >
    > Do you people hear what you're saying???
    >
    > I respectfully but strongly disagree with this.
    >
    > We do __not__ need a whitelist (__GFP_NOWARN) of drivers that handle
    > allocation failures properly. That's a long list, a maintenance
    > nightmare, and it is punishing good behavior.
    >
    > It has been true for over a decade that allocations should be checked
    > for NULL, and GFP_ATOMIC allocations MUST be checked for NULL.
    >
    > Let's not crap all over good drivers, because a few bad apples don't
    > have the proper checks.
    >
    > Or at the very least, this TOTALLY BOGUS spew from working drivers
    > should not be foisted upon users. Every time a working driver complains
    > about this -- as in the examples here -- the value of the warning
    > decreases to noise.
    >
    > And the solution to noise is not _more noise_ (adding 'nowarn' to every
    > damn driver in the kernel).
    >

    After you've read Nick's comments (which I pray you have not), and after
    you've convinced us and yourself of their wrongness, you might like to
    consider adding a __GFP_NOWARN to netdev_alloc_skb().



    \
     
     \ /
      Last update: 2008-04-02 19:41    [W:4.468 / U:0.216 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site