Messages in this thread | | | Date | Sun, 13 Aug 2006 16:49:34 -0700 (PDT) | Subject | Re: [RFC][PATCH 2/9] deadlock prevention core | From | David Miller <> |
| |
From: Daniel Phillips <phillips@google.com> Date: Sun, 13 Aug 2006 14:22:31 -0700
> David Miller wrote: > > The reason is that there is no refcounting performed on these devices > > when they are attached to the skb, for performance reasons, and thus > > the device can be downed, the module for it removed, etc. long before > > the skb is freed up. > > The virtual block device can refcount the network device on virtual > device create and un-refcount on virtual device delete.
What if the packet is originally received on the device in question, and then gets redirected to another device by a packet scheduler traffic classifier action or a netfilter rule?
It is necessary to handle the case where the device changes on the skb, and the skb gets freed up in a context and assosciation different from when the skb was allocated (for example, different from the device attached to the virtual block device). - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |