Re: [RFC Patch] bonding: move to net/ directory
From: Michał Mirosław <hidden>
Date: 2011-05-26 14:25:36
2011/5/26 Neil Horman [off-list ref]:
On Thu, May 26, 2011 at 05:32:08PM +0800, Américo Wang wrote:quoted
I don't think other drivers are supposed to use this function to register a packet handler, which is an important difference from my view.Note you just referred to the bridge/bond and vlan code as 'drivers' :). And why is that function the gating factor? Why not register_netdev? or netif_receive_skb or dev_add_pack? They all relate to the creation of device interface and the reception of network data. The fact is, bonding/bridging/vlans/tunnels/etc all have aspects that make them more than just drivers. They are where they are for a myrriad of reasons. Moving them around changes their location, but does _nothing_ about the underlying fact that they're driver code plus other stuff, and as such provides no real advantage in terms of organization.
If you want to draw a line between net/ and drivers/net I propose following idea: net/ - everything that is about networking (or library for it) and interacts only within the system (kernel<->user, or in-kernel) drivers/net/ - everything that is a connecting point between the system and external world - be it hardware, other VMs or hypervisor. net/ would include wireless stack, all kinds of loopback devices, tunnels (incl. vlan), bridging, bonding, tuntap, etc. drivers/net/ would keep only what is hardware or external ABI dependent Just my 2 cents (3 grosze ;-). Best Regards, Michał Mirosław