Re: race in skb_splice_bits?
From: Evgeniy Polyakov <hidden>
Date: 2008-05-28 17:51:20
From: Evgeniy Polyakov <hidden>
Date: 2008-05-28 17:51:20
On Wed, May 28, 2008 at 08:08:01PM +0300, Octavian Purdila (opurdila@ixiacom.com) wrote:
Hmm, might have found a problem with this approach: say we drop the lock, queue the data into the pipe, and at the same time tcp_collapse() is called which frees some of the skbs of which data we just queued in the pipe. Later, when we will read from the pipe, we will get random data instead of socket data...
We queue data under the lock and clone appropriate skb (and then grab it multiple times), so even it will be dropped, its data will not freed, and thus we will be able to read it. Or you are talking about different skbs? -- Evgeniy Polyakov