vlan.c (cdccfc8dc0bf62a1da327324a8d639139acc9279) | vlan.c (8a0427bb688eae86a8bb939b6a74e5aa00aa035a) |
---|---|
1/* 2 * INET 802.1Q VLAN 3 * Ethernet-type device handling. 4 * 5 * Authors: Ben Greear <greearb@candelatech.com> 6 * Please send support related email to: netdev@vger.kernel.org 7 * VLAN Home Page: http://www.candelatech.com/~greear/vlan.html 8 * --- 313 unchanged lines hidden (view full) --- 322 dev_uc_add(dev, vlandev->dev_addr); 323 324 memcpy(vlan->real_dev_addr, dev->dev_addr, ETH_ALEN); 325} 326 327static void vlan_transfer_features(struct net_device *dev, 328 struct net_device *vlandev) 329{ | 1/* 2 * INET 802.1Q VLAN 3 * Ethernet-type device handling. 4 * 5 * Authors: Ben Greear <greearb@candelatech.com> 6 * Please send support related email to: netdev@vger.kernel.org 7 * VLAN Home Page: http://www.candelatech.com/~greear/vlan.html 8 * --- 313 unchanged lines hidden (view full) --- 322 dev_uc_add(dev, vlandev->dev_addr); 323 324 memcpy(vlan->real_dev_addr, dev->dev_addr, ETH_ALEN); 325} 326 327static void vlan_transfer_features(struct net_device *dev, 328 struct net_device *vlandev) 329{ |
330 u32 old_features = vlandev->features; 331 332 vlandev->features &= ~dev->vlan_features; 333 vlandev->features |= dev->features & dev->vlan_features; | |
334 vlandev->gso_max_size = dev->gso_max_size; 335 336 if (dev->features & NETIF_F_HW_VLAN_TX) 337 vlandev->hard_header_len = dev->hard_header_len; 338 else 339 vlandev->hard_header_len = dev->hard_header_len + VLAN_HLEN; 340 341#if defined(CONFIG_FCOE) || defined(CONFIG_FCOE_MODULE) 342 vlandev->fcoe_ddp_xid = dev->fcoe_ddp_xid; 343#endif | 330 vlandev->gso_max_size = dev->gso_max_size; 331 332 if (dev->features & NETIF_F_HW_VLAN_TX) 333 vlandev->hard_header_len = dev->hard_header_len; 334 else 335 vlandev->hard_header_len = dev->hard_header_len + VLAN_HLEN; 336 337#if defined(CONFIG_FCOE) || defined(CONFIG_FCOE_MODULE) 338 vlandev->fcoe_ddp_xid = dev->fcoe_ddp_xid; 339#endif |
344 if (old_features != vlandev->features) 345 netdev_features_change(vlandev); | 340 341 netdev_update_features(vlandev); |
346} 347 348static void __vlan_device_event(struct net_device *dev, unsigned long event) 349{ 350 switch (event) { 351 case NETDEV_CHANGENAME: 352 vlan_proc_rem_dev(dev); 353 if (vlan_proc_add_dev(dev) < 0) --- 371 unchanged lines hidden --- | 342} 343 344static void __vlan_device_event(struct net_device *dev, unsigned long event) 345{ 346 switch (event) { 347 case NETDEV_CHANGENAME: 348 vlan_proc_rem_dev(dev); 349 if (vlan_proc_add_dev(dev) < 0) --- 371 unchanged lines hidden --- |