lkml.org 
[lkml]   [2006]   [Aug]   [9]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateWed, 09 Aug 2006 03:20:11 -0400
FromJeff Garzik <>
SubjectRe: [RFC][PATCH 8/9] 3c59x driver conversion
Peter Zijlstra wrote:
> On Wed, 2006-08-09 at 02:30 -0400, Jeff Garzik wrote:
>> David Miller wrote:
>>> From: Daniel Phillips <phillips@google.com>
>>> Date: Tue, 08 Aug 2006 22:51:20 -0700
>>>
>>>> Elaborate please.  Do you think that all drivers should be updated to
>>>> fix the broken blockdev semantics, making NETIF_F_MEMALLOC redundant?
>>>> If so, I trust you will help audit for it?
>>> I think he's saying that he doesn't think your code is yet a
>>> reasonable way to solve the problem, and therefore doesn't belong
>>> upstream.
>> Pretty much.  It is completely non-sensical to add NETIF_F_MEMALLOC, 
>> when it should be blindingly obvious that every net driver will be 
>> allocating memory, and every net driver could potentially be used with 
>> NBD and similar situations.
> 
> Sure, but until every single driver is converted I'd like to warn people
> about the fact that their setups is not up to expectations. Iff all
> drivers are converted I'll be the forst to submit a patch that removes
> the feature flag.

A temporary-for-years flag is not a good approach.  The flag is not 
_needed_ for technical reasons, but for supposed user expectation reasons.

Rather, just go ahead and convert drivers to netdev_alloc_skb() where 
people care.  If someone suddenly gets a burr up their ass about the 
sunlance or epic100 driver deadlocking on NBD, then they can convert it 
or complain loudly themselves.

Overall, a good solution needs to be uniform across all net drivers. 
NETIF_F_MEMALLOC is just _encouraging_ people to be slackers and delay 
converting other drivers, creating two classes of drivers, the "haves" 
and the "have nots".
Just make a big netdev_alloc_skb() patch that converts most users. 
netdev_alloc_skb() is a good thing to use, because it builds an 
association with struct net_device and the allocation.

	Jeff



P.S.  Since netdev_alloc_skb() calls skb_reserve(), you need to take 
that into account.  That's a bug in current patches.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-08-09 09:23    [from the cache]
©2003-2008