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
