Re: [PATCH 3/4]percpu_counter: fix code for 32bit systems

From: Eric Dumazet
Date: Tue Apr 12 2011 - 22:32:18 EST


Le mercredi 13 avril 2011 Ã 09:01 +0800, Shaohua Li a Ãcrit :
> On Tue, 2011-04-12 at 17:03 +0800, Eric Dumazet wrote:
> >
> > Hmm... did you test this with LOCKDEP on ?
> >
> > You add a possible deadlock here.
> >
> > Hint : Some percpu_counter are used from irq context.
> there are some places we didn't disable interrupt, for example
> percpu_counter_add. So the API isn't irq safe to me.
>

So what ? Callers must disable IRQ before calling percpu_counter_add(),
and they actually do in network stack. Please check again,
tcp_sockets_allocated for example.

> > This interface assumes caller take the appropriate locking.
> no comments say this, and some places we don't hold locking.
> for example, meminfo_proc_show.
>

This doesnt answer my question about LOCKDEP ;)

Just fix the few callers that might need a fix, since this is the only
way to deal with potential problems without adding performance penalty
(for stable trees)



--
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/