From: Oliver Hartkopp <[email protected]>
Date: Sun, 01 Aug 2010 12:50:16 +0200

> On 01.08.2010 10:03, David Miller wrote:
>> From: Oliver Hartkopp <[email protected]>
>> Date: Fri, 30 Jul 2010 11:44:27 +0200
>> 
>>> Hello Eric, hello Patrick,
>>>
>>> Commit fc6055a5ba31e2c14e36e8939f9bf2b6d586a7f5 (net: Introduce
>>> skb_orphan_try()) allows an early orphan of the skb and takes care on
>>> tx timestamping, which needs the sk-reference in the skb on driver level.
>>> So does the can-raw socket, which has not been taken into account here.
>>>
>>> The patch below adds a 'prevent_sk_orphan' bit in the skb tx shared info,
>>> which fixes the problem discovered by Matthias Fuchs here:
>>>
>>>       http://marc.info/?t=128030411900003&r=1&w=2
>> 
>> Your patch sets this new value, but I never see it getting tested anywhere.
>> 
>> How does this work?
> 
> 
> The flags are tested all together in skb_orphan_try() ...

This is why I hate using unions in situations like this... it makes
code impossible to audit easily.

This damn thing should just be a "u8 flags" and a bunch of bit mask
CPP macro defines for the various boolean values.

Anyways, I'll apply your patch thanks.
_______________________________________________
Socketcan-core mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/socketcan-core

Reply via email to