1. 20 11月, 2008 1 次提交
  2. 29 10月, 2008 1 次提交
  3. 12 9月, 2008 1 次提交
  4. 15 7月, 2008 1 次提交
  5. 08 7月, 2008 3 次提交
  6. 06 7月, 2008 3 次提交
  7. 23 5月, 2008 1 次提交
  8. 21 5月, 2008 2 次提交
  9. 19 5月, 2008 1 次提交
  10. 16 4月, 2008 6 次提交
  11. 02 4月, 2008 1 次提交
  12. 27 3月, 2008 1 次提交
    • P
      [VLAN]: Reduce memory consumed by vlan_groups · 67727184
      Pavel Emelyanov 提交于
      Currently each vlan_groupd contains 8 pointers on arrays with 512
      pointers on struct net_device each  :)  Such a construction "in many
      cases ... wastes memory".
      
      My proposal is to allow for some of these arrays pointers be NULL,
      meaning that there are no devices in it. When a new device is added
      to the vlan_group, the appropriate array is allocated.
      
      The check in vlan_group_get_device's is safe, since the pointer
      vg->vlan_devices_arrays[x] can only switch from NULL to not-NULL.
      The vlan_group_prealloc_vid() is guarded with rtnl lock and is
      also safe.
      
      I've checked (I hope that) all the places, that use these arrays
      and found, that the register_vlan_dev is the only place, that can
      put a vlan device on an empty vlan_group.
      
      Rough calculations shows, that after the patch a setup with a
      single vlan dev (or up to 512 vlans with sequential vids) will
      occupy approximately 8 times less memory.
      
      The question I have is - does this patch makes sense, or a totally
      new structures are required to store the vlan_devs?
      Signed-off-by: NPavel Emelyanov <xemul@openvz.org>
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      67727184
  13. 26 3月, 2008 1 次提交
  14. 29 1月, 2008 11 次提交
  15. 11 1月, 2008 1 次提交
  16. 11 12月, 2007 1 次提交
  17. 07 12月, 2007 1 次提交
  18. 11 11月, 2007 2 次提交
  19. 07 11月, 2007 1 次提交
    • P
      [VLAN]: Fix SET_VLAN_INGRESS_PRIORITY_CMD ioctl · fffe470a
      Patrick McHardy 提交于
      Based on report and patch by Doug Kehn <rdkehn@yahoo.com>:
      
      vconfig returns the following error when attempting to execute the
      set_ingress_map command:
      
      vconfig: socket or ioctl error for set_ingress_map: Operation not permitted
      
      In vlan.c, vlan_ioctl_handler for SET_VLAN_INGRESS_PRIORITY_CMD
      sets err = -EPERM and calls vlan_dev_set_ingress_priority.
      vlan_dev_set_ingress_priority is a void function so err remains
      at -EPERM and results in the vconfig error (even though the ingress
      map was set).
      
      Fix by setting err = 0 after the vlan_dev_set_ingress_priority call.
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fffe470a