>-----Original Message----- >From: kvm-owner@xxxxxxxxxxxxxxx [mailto:kvm-owner@xxxxxxxxxxxxxxx] On Behalf Of Xin, >Xiaohui >Sent: Thursday, November 11, 2010 4:28 PM >To: David Miller >Cc: netdev@xxxxxxxxxxxxxxx; kvm@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; >mst@xxxxxxxxxx; mingo@xxxxxxx; herbert@xxxxxxxxxxxxxxxxxxx; jdike@xxxxxxxxxxxxxxx >Subject: RE: [PATCH v15 00/17] Provide a zero-copy method on KVM virtio-net. > >>-----Original Message----- >>From: David Miller [mailto:davem@xxxxxxxxxxxxx] >>Sent: Thursday, November 11, 2010 1:47 AM >>To: Xin, Xiaohui >>Cc: netdev@xxxxxxxxxxxxxxx; kvm@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; >>mst@xxxxxxxxxx; mingo@xxxxxxx; herbert@xxxxxxxxxxxxxxxxxxx; jdike@xxxxxxxxxxxxxxx >>Subject: Re: [PATCH v15 00/17] Provide a zero-copy method on KVM virtio-net. >> >>From: xiaohui.xin@xxxxxxxxx >>Date: Wed, 10 Nov 2010 17:23:28 +0800 >> >>> From: Xin Xiaohui <xiaohui.xin@xxxxxxxxx> >>> >>>>2) The idea to key off of skb->dev in skb_release_data() is >>>> fundamentally flawed since many actions can change skb->dev on you, >>>> which will end up causing a leak of your external data areas. >>> >>> How about this one? If the destructor_arg is not a good candidate, >>> then I have to add an apparent field in shinfo. >> >>If destructor_arg is actually a net_device pointer or similar, >>you will need to take a reference count on it or similar. >> >Do you mean destructor_arg will be consumed by other user? >If that case, may I add a new structure member in shinfo? >Thus only zero-copy will use it, and no need for the reference count. > How about this? It really needs somewhere to track the external data area, and if something wrong with it, we can also release the data area. We think skb_release_data() is the right place to deal with it. If I understood right, that destructor_arg will be used by other else that why reference count is needed, then how about add a new structure member in shinfo? Thanks Xiaohui >>Which means --> good bye performance especially on SMP. >> >>You're going to be adding new serialization points and at >>least two new atomics per packet. >-- >To unsubscribe from this list: send the line "unsubscribe kvm" in >the body of a message to majordomo@xxxxxxxxxxxxxxx >More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html