* Herbert Xu <[EMAIL PROTECTED]> 2005-11-19 22:48 > Thomas Graf <[EMAIL PROTECTED]> wrote: > > > > I did. I think it was right, why would an allocation be necessary on > > the second call to inet6_dump_fib()? The walker allocated in process > > context on the first call should be reused from cb->args[0]. > > Continued dumps are always called under spin lock (see netlink_dump). > So we need to use GFP_ATOMIC in dumpers.
The continued dumps wouldn't be the problem, the walker is allocated on the initial dump call. It was a mistake though, nlk->cb_lock spin lock is always held for cb->dump() even though it should only be required during the nlk->cb != NULL check. netlink_dump_start() guarantees to only allow one dumper per socket at a time. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html