[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200805271833.55880.opurdila@ixiacom.com>
Date: Tue, 27 May 2008 18:33:55 +0300
From: Octavian Purdila <opurdila@...acom.com>
To: Evgeniy Polyakov <johnpol@....mipt.ru>
Cc: Ben Hutchings <bhutchings@...arflare.com>, netdev@...r.kernel.org,
davem@...emloft.net
Subject: Re: race in skb_splice_bits?
On Tuesday 27 May 2008, Evgeniy Polyakov wrote:
>
> The same wrong one, sorry about that.
>
> Idea is to hold skb between release/lock sock calls and thus do not
> allow to free it by core stack when it is being released. Patch still
> misses the case, when socket is released and skb was dequeued, so splice
> will try to dequeue it again, which will crash. I will think on how to
> fix the issue.
Yes, I think I got the idea you are trying to use here. But, somehow I feel
uneasy with this approach :) Isn't it cleaner to keep the lock and try to
avoid the deadlock on the sendfile() side? Or is that unfeasible?
I don't think we can drop the socket lock, it will introduce at least on type
of races: since the skb we are processing is still on the socket queue, any
entity accessing the socket queue will possible collide with us.
Thanks,
tavi
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists