)]}'
{
  "log": [
    {
      "commit": "7d720c3e4f0c4fc152a6bf17e24244a3c85412d2",
      "tree": "36e037187ce79acb211702bea22e99c625787757",
      "parents": [
        "2bb4646fce8d09916b351d1a62f98db7cec6fc41"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Feb 16 15:20:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 16 23:05:38 2010 -0800"
      },
      "message": "percpu: add __percpu sparse annotations to net\n\nAdd __percpu sparse annotations to net.\n\nThese annotations are to make sparse consider percpu variables to be\nin a different address space and warn if accessed without going\nthrough percpu accessors.  This patch doesn\u0027t affect normal builds.\n\nThe macro and type tricks around snmp stats make things a bit\ninteresting.  DEFINE/DECLARE_SNMP_STAT() macros mark the target field\nas __percpu and SNMP_UPD_PO_STATS() macro is updated accordingly.  All\nsnmp_mib_*() users which used to cast the argument to (void **) are\nupdated to cast it to (void __percpu **).\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nCc: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8a83a00b0735190384a348156837918271034144",
      "tree": "f69d903405e2424c196d8648bb6cb18443359373",
      "parents": [
        "6884b348ed759184032306c9435a727741a72298"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Jan 30 12:23:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 20:20:32 2010 -0800"
      },
      "message": "net: maintain namespace isolation between vlan and real device\n\nIn the vlan and macvlan drivers, the start_xmit function forwards\ndata to the dev_queue_xmit function for another device, which may\npotentially belong to a different namespace.\n\nTo make sure that classification stays within a single namespace,\nthis resets the potentially critical fields.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "05ba712d7eb156009753e18e5116cabd869cc6e2",
      "tree": "1ad850d6889f6b3671a5636653940f20a7d22bdf",
      "parents": [
        "257ddbdad13cd3c4f7d03b85af632c508aa8abc9",
        "b473946a0853860e13b51c28add5524741117786"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 28 06:12:38 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 28 06:12:38 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "2dc85e91d05be91343033df78e4e6d99dc7ea50e",
      "tree": "64d63c2cd1cf0ee6f768261f5992010d0110bde6",
      "parents": [
        "e071041be037eca208b62b84469a06bdfc692bea"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Jan 24 19:52:24 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 24 19:52:24 2010 -0800"
      },
      "message": "vlan: fix vlan_skb_recv()\n\nBruno Prémont found commit 9793241fe92f7d930\n(vlan: Precise RX stats accounting) added a regression for non\nhw accelerated vlans.\n\n[   26.390576] BUG: unable to handle kernel NULL pointer dereference at (null)\n[   26.396369] IP: [\u003cdf856b89\u003e] vlan_skb_recv+0x89/0x280 [8021q]\n\nvlan_dev_info() was used with original device, instead of\nskb-\u003edev. Also spotted by Américo Wang.\n\nReported-By: Bruno Prémont \u003cbonbons@linux-vserver.org\u003e\nTested-By: Bruno Prémont \u003cbonbons@linux-vserver.org\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c8c1e7297e19bdef3c178c3ea41d898a7716e3e",
      "tree": "4d336562e8d5379732a0646e17b0bb1750111ef6",
      "parents": [
        "72659ecce68588b74f6c46862c2b4cec137d7a5a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Jan 17 03:35:32 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 17 19:16:02 2010 -0800"
      },
      "message": "net: spread __net_init, __net_exit\n\n__net_init/__net_exit are apparently not going away, so use them\nto full extent.\n\nIn some cases __net_init was removed, because it was called from\n__net_exit code.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1f3c8804acba841b5573b953f5560d2683d2db0d",
      "tree": "453fae141b4a37e72ee0513ea1816fbff8f1cf8a",
      "parents": [
        "3a999e6eb5d277cd6a321dcda3fc43c3d9e4e4b8"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Mon Dec 14 10:48:58 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 03 21:17:16 2010 -0800"
      },
      "message": "bonding: allow arp_ip_targets on separate vlans to use arp validation\n\nThis allows a bond device to specify an arp_ip_target as a host that is\nnot on the same vlan as the base bond device and still use arp\nvalidation.  A configuration like this, now works:\n\nBONDING_OPTS\u003d\"mode\u003dactive-backup arp_interval\u003d1000 arp_ip_target\u003d10.0.100.1 arp_validate\u003d3\"\n\n1: lo: \u003cLOOPBACK,UP,LOWER_UP\u003e mtu 16436 qdisc noqueue\n    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n    inet 127.0.0.1/8 scope host lo\n    inet6 ::1/128 scope host\n       valid_lft forever preferred_lft forever\n2: eth1: \u003cBROADCAST,MULTICAST,SLAVE,UP,LOWER_UP\u003e mtu 1500 qdisc pfifo_fast master bond0 qlen 1000\n    link/ether 00:13:21:be:33:e9 brd ff:ff:ff:ff:ff:ff\n3: eth0: \u003cBROADCAST,MULTICAST,SLAVE,UP,LOWER_UP\u003e mtu 1500 qdisc pfifo_fast master bond0 qlen 1000\n    link/ether 00:13:21:be:33:e9 brd ff:ff:ff:ff:ff:ff\n8: bond0: \u003cBROADCAST,MULTICAST,MASTER,UP,LOWER_UP\u003e mtu 1500 qdisc noqueue\n    link/ether 00:13:21:be:33:e9 brd ff:ff:ff:ff:ff:ff\n    inet6 fe80::213:21ff:febe:33e9/64 scope link\n       valid_lft forever preferred_lft forever\n9: bond0.100@bond0: \u003cBROADCAST,MULTICAST,MASTER,UP,LOWER_UP\u003e mtu 1500 qdisc noqueue\n    link/ether 00:13:21:be:33:e9 brd ff:ff:ff:ff:ff:ff\n    inet 10.0.100.2/24 brd 10.0.100.255 scope global bond0.100\n    inet6 fe80::213:21ff:febe:33e9/64 scope link\n       valid_lft forever preferred_lft forever\n\nEthernet Channel Bonding Driver: v3.6.0 (September 26, 2009)\n\nBonding Mode: fault-tolerance (active-backup)\nPrimary Slave: None\nCurrently Active Slave: eth1\nMII Status: up\nMII Polling Interval (ms): 0\nUp Delay (ms): 0\nDown Delay (ms): 0\nARP Polling Interval (ms): 1000\nARP IP target/s (n.n.n.n form): 10.0.100.1\n\nSlave Interface: eth1\nMII Status: up\nLink Failure Count: 1\nPermanent HW addr: 00:40:05:30:ff:30\n\nSlave Interface: eth0\nMII Status: up\nLink Failure Count: 0\nPermanent HW addr: 00:13:21:be:33:e9\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf9ae5386bca8836c16e69ab8fdbe46767d7452a",
      "tree": "1184d7062dd74f7ad2b85379a5bd40ab5b8ca4d6",
      "parents": [
        "f83d664eef180478c2dc0a0099e9d7bc1c8177ff"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "opurdila@ixiacom.com",
        "time": "Sat Dec 26 11:50:59 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 26 20:38:23 2009 -0800"
      },
      "message": "llc: use dev_hard_header\n\nUsing dev_hard_header allows us to use LLC with VLANs and potentially\nother Ethernet/TokernRing specific encapsulations. It also removes code\nduplication between LLC and Ethernet/TokenRing core code.\n\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc4a7489663250360cd40d5adf06a08d1c5d54df",
      "tree": "ce8fed0a2dfc175b03834bb94717f5f2970c9146",
      "parents": [
        "012093f6d5d89e6ed6e89c55c383f84b1cff7a78"
      ],
      "author": {
        "name": "Patrick Mullaney",
        "email": "pmullaney@novell.com",
        "time": "Thu Dec 03 15:59:22 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 03 15:59:22 2009 -0800"
      },
      "message": "netdevice: provide common routine for macvlan and vlan operstate management\n\nProvide common routine for the transition of operational state for a leaf\ndevice during a root device transition.\n\nSigned-off-by: Patrick Mullaney \u003cpmullaney@novell.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91e2ff3528ac90b9dbcb04b76488e8ad74e3d3d9",
      "tree": "33b346ebaab318dab8beb1f433453ceae65bced1",
      "parents": [
        "650de8de16aa7c168c34d1b6a3191e4a5e2648c8"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Dec 02 13:19:08 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 02 22:10:24 2009 -0800"
      },
      "message": "net: Teach vlans to cleanup as a pernet subsystem\n\nTake advantage of the fact that an explicit rtnl_kill_links is\nunnecessary (and skipping it improves batching), as network namespace\nexit calls dellink on all remaining virtual devices, and\nrtnl_link_unregister calls dellink on all outstanding devices in that\nnetwork namespace.  To do this we need to leave the vlan proc\ndirectories in place until after network device exit time, which is\ndone by using register_pernet_subsys instead of\nregister_pernet_device.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "946d1a9298c9e592b189a168326603c92d782b5f",
      "tree": "170e0e7410172146c99068ed17159a80c9d02f94",
      "parents": [
        "15449745e5d181ae214ceaf0880350bb4e63512a"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Nov 29 15:46:05 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 01 16:15:53 2009 -0800"
      },
      "message": "net: Simplify vlan pernet operations.\n\nTake advantage of the new pernet automatic storage management,\nand stop using compatibility network namespace functions.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e7565930524410f097f5b04f8aba663089a6ffc",
      "tree": "7575fb4b06fdad1e2e9796e0dc99ca011e59980e",
      "parents": [
        "cc83f6d6922018a1b762f67af539867a6b05398e"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Nov 25 07:54:54 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 26 16:00:36 2009 -0800"
      },
      "message": "vlan: support \"loose binding\" to the underlying network device\n\nCurrently the UP/DOWN state of VLANs is synchronized to the state of the\nunderlying device, meaning all VLANs are set down once the underlying\ndevice is set down. This causes all routes to the VLAN devices to vanish.\n\nAdd a flag to specify a \"loose binding\" mode, in which only the operstate\nis transfered, but the VLAN device state is independant.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3505d1a9fd65e2d3e00827857b6795d9d8983658",
      "tree": "941cfafdb57c427bb6b7ebf6354ee93b2a3693b5",
      "parents": [
        "dfef948ed2ba69cf041840b5e860d6b4e16fa0b1",
        "66b00a7c93ec782d118d2c03bd599cfd041e80a1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 18 22:19:03 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 18 22:19:03 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/sfc/sfe4001.c\n\tdrivers/net/wireless/libertas/cmd.c\n\tdrivers/staging/Kconfig\n\tdrivers/staging/Makefile\n\tdrivers/staging/rtl8187se/Kconfig\n\tdrivers/staging/rtl8192e/Kconfig\n"
    },
    {
      "commit": "f99189b186f3922ede4fa33c02f6edc735b8c981",
      "tree": "e216447fc284d6ec98ac1550638ac3a79d71e084",
      "parents": [
        "615534bc490606685621d63a40c0670d0f049d86"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 17 10:42:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 18 05:03:25 2009 -0800"
      },
      "message": "netns: net_identifiers should be read_mostly\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9793241fe92f7d9303fb221e43fc598eb065f267",
      "tree": "5f7a347c3a6b32a49e54f1f6ead1c96f2351208c",
      "parents": [
        "d83345adf96bc13a5e360f4649a2e68ef968dec0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 17 04:53:09 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 17 23:51:55 2009 -0800"
      },
      "message": "vlan: Precise RX stats accounting\n\nWith multi queue devices, its possible that several cpus call\nvlan RX routines simultaneously for the same vlan device.\n\nWe update RX stats counter without any locking, so we can\nget slightly wrong counters.\n\nOne possible fix is to use percpu counters, to get precise\naccounting and also get guarantee of no cache line ping pongs\nbetween cpus.\n\nNote: this adds 16 bytes (32 bytes on 64bit arches) of percpu\ndata per vlan device.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b863d1d3239eff0f45c2e6e672f5b56db828db0",
      "tree": "8384f6f29891d684725015e1dad5a96e6d9fb8fc",
      "parents": [
        "69c0cab120a85471054614418b447349caba22d7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 17 06:45:04 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 17 06:45:04 2009 -0800"
      },
      "message": "vlan: Fix register_vlan_dev() error path\n\nIn case register_netdevice() returns an error, and a new vlan_group\nwas allocated and inserted in vlan_group_hash[] we call\nvlan_group_free() without deleting group from hash table. Future\nlookups can give infinite loops or crashes.\n\nWe must delete the vlan_group using RCU safe procedure.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b93ab837a2d3eb394082c9eae4ee0a4f83060027",
      "tree": "7189349bad6a0d145c6ba6a051e8eb79d07bc1ec",
      "parents": [
        "c5d5d1721763842a516529e553433d13b11c3f31"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Nov 13 06:33:11 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 15 22:21:33 2009 -0800"
      },
      "message": "vlan: Use __vlan_hwaccel_put_tag() in rx\n\nCommit 05423b241311c9380 (vlan: allow null VLAN ID to be used)\nforgot to update __vlan_hwaccel_rx() \u0026 vlan_gro_common()\n\nWe need to set VLAN_TAG_PRESENT flag in skb-\u003evlan_tci\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbbef5e183079455763fc470ccf69008f92ab4b6",
      "tree": "04063bfe9498e622623ed3e46155bcbd9b18c9c0",
      "parents": [
        "572a9d7b6fc7f20f573664063324c086be310c42"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Nov 10 06:14:24 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 13 14:07:33 2009 -0800"
      },
      "message": "vlan/macvlan: propagate transmission state to upper layers\n\nBoth vlan and macvlan devices usually don\u0027t use a qdisc and immediately\nqueue packets to the underlying device. Propagate transmission state of\nthe underlying device to the upper layers so they can react on congestion\nand/or inform the sending process.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9e067597ee0e51a07bc158e9e2703ca676920e8b",
      "tree": "07436378544524a78d834aa664819ce64f969e19",
      "parents": [
        "254245d23396aca1f9100d500163d7bd6019ab6f"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Nov 10 07:54:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 10 22:26:30 2009 -0800"
      },
      "message": "vlan: eliminate use of dev_base_lock\n\nDo not need to use read_lock(\u0026dev_base_lock), use RCU instead.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81adee47dfb608df3ad0b91d230fb3cef75f0060",
      "tree": "e9d7a41872f84c1395e21915e5f92c05ab872e69",
      "parents": [
        "f7a3a1d8affe563846fc17f0e7c0cc1500190c57"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Sun Nov 08 00:53:51 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 08 00:53:51 2009 -0800"
      },
      "message": "net: Support specifying the network namespace upon device creation.\n\nThere is no good reason to not support userspace specifying the\nnetwork namespace during device creation, and it makes it easier\nto create a network device and pass it to a child network namespace\nwith a well known name.\n\nWe have to be careful to ensure that the target network namespace\nfor the new device exists through the life of the call.  To keep\nthat logic clear I have factored out the network namespace grabbing\nlogic into rtnl_link_get_net.\n\nIn addtion we need to continue to pass the source network namespace\nto the rtnl_link_ops.newlink method so that we can find the base\ndevice source network namespace.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\n"
    },
    {
      "commit": "29906f6a427d2004a515ebbcdc7b28bae8f6c19c",
      "tree": "12749e2d6afd82ec9c1b40aa08d012a5d4709cc6",
      "parents": [
        "f0816ce39d8de7646301aac52cc7351a2424d97f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 29 23:43:00 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 23:43:00 2009 -0700"
      },
      "message": "vlan: cleanup multiple unregistrations\n\nThe temporary copy of the VLAN group is not neccessary since the lower device\nis already in the process of being unregistered, if it was neccessary the\nmemset of the global group would introduce a race condition.\n\nWith this removed, the changes to the original code are only a few lines, so\nremove the new function and move the code back into vlan_device_event().\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c7c4b3b6e976b95facbb723951bdcd554a3530a4",
      "tree": "9a53a7f850eec755b3c66d4a129d31ce4a8591da",
      "parents": [
        "5b252f0c2f98df21fadf0f6cf189b87a0b938228"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Thu Oct 29 21:36:53 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 21:36:53 2009 -0700"
      },
      "message": "gro: Change all receive functions to return GRO result codes\n\nThis will allow drivers to adjust their receive path dynamically\nbased on whether GRO is being applied successfully.\n\nCurrently all in-tree callers ignore the return values of these\nfunctions and do not need to be changed.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b252f0c2f98df21fadf0f6cf189b87a0b938228",
      "tree": "d3003625d8c5fd6d54466f81cffab1b5459bb98f",
      "parents": [
        "0519d83d83ed485b5a1f9222ff69d7d6c9bb8a01"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Thu Oct 29 07:17:09 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 21:33:55 2009 -0700"
      },
      "message": "gro: Name the GRO result enumeration type\n\nThis clarifies which return and parameter types are GRO result codes\nand not RX result codes.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d6534799410d2b53e5e80b8a90d6a8bab3de30ed",
      "tree": "14b585f2282cb6a19d181684bccbe8decc5f7851",
      "parents": [
        "61a1fa102ada6d8ee9f2293d126ed9f580ca0751"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Wed Oct 28 18:25:16 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 01:04:04 2009 -0700"
      },
      "message": "vlan: Add support to netdev_ops.ndo_fcoe_get_wwn for VLAN device\n\nImplements the netdev_ops.ndo_fcoe_get_wwn for VLAN device.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "63c8099d90096db56ee1c66c31f05d4fcfbc1c69",
      "tree": "1c0393ab776d49476858a4f97b3d60597330f370",
      "parents": [
        "23289a37e2b127dfc4de1313fba15bb4c9f0cd5b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Oct 27 07:06:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 28 02:22:08 2009 -0700"
      },
      "message": "vlan: Optimize multiple unregistration\n\nUse unregister_netdevice_many() to speedup master device unregister.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "23289a37e2b127dfc4de1313fba15bb4c9f0cd5b",
      "tree": "209edb2cb43dedb97477e1297873ada4759a1066",
      "parents": [
        "9b5e383c11b08784eb0087617f880077982ef769"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Oct 27 07:06:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 28 02:22:07 2009 -0700"
      },
      "message": "net: add a list_head parameter to dellink() method\n\nAdding a list_head parameter to rtnl_link_ops-\u003edellink() methods\nallow us to queue devices on a list, in order to dismantle\nthem all at once.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "05423b241311c9380b7280179295bac7794281b6",
      "tree": "8a84aca48cbc30b142bdf143dbf11fdbab9cad67",
      "parents": [
        "9dbb58d867e90d2528752339751216c955523e62"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 26 18:40:35 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 27 01:02:33 2009 -0700"
      },
      "message": "vlan: allow null VLAN ID to be used\n\nWe currently use a 16 bit field (vlan_tci) to store VLAN ID/PRIO on a skb.\n\nNull value is used as a special value, meaning vlan tagging not enabled.\nThis forbids use of null vlan ID.\n\nAs pointed by David, some drivers use the 3 high order bits (PRIO)\n\nAs VLAN ID is 12 bits, we can use the remaining bit (CFI) as a flag, and\nallow null VLAN ID.\n\nIn case future code really wants to use VLAN_CFI_MASK, we\u0027ll have to use\na bit outside of vlan_tci.\n\n#define VLAN_PRIO_MASK         0xe000 /* Priority Code Point */\n#define VLAN_PRIO_SHIFT        13\n#define VLAN_CFI_MASK          0x1000 /* Canonical Format Indicator */\n#define VLAN_TAG_PRESENT       VLAN_CFI_MASK\n#define VLAN_VID_MASK          0x0fff /* VLAN Identifier */\n\nReported-by: Gertjan Hofman \u003cgertjan_hofman@yahoo.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc482cc54e56bde012585905eb0f3565bec18ff5",
      "tree": "e8e9c493268c34ba2b729d9a21dcd2b74b99f9fa",
      "parents": [
        "a71b4f5e2b42a773947625ce0a6367837f8d9359"
      ],
      "author": {
        "name": "John Fastabend",
        "email": "john.r.fastabend@intel.com",
        "time": "Fri Sep 25 13:11:24 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Sep 26 20:16:07 2009 -0700"
      },
      "message": "net: fix vlan_get_size to include vlan_flags size\n\nFix vlan_get_size to include vlan-\u003eflags.  Currently, the\nsize of the vlan flags is not included in the nlmsg size.\n\nSigned-off-by: John Fastabend \u003cjohn.r.fastabend@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a123a3168566b10f87f228ae963770b26f27420",
      "tree": "cebf893e0ae4de5ee5077b69002f41d8f61d45f9",
      "parents": [
        "2c11455321f37da6fe6cc36353149f9ac9183334"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 03 00:39:16 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 03 20:02:17 2009 -0700"
      },
      "message": "vlan: adds drops accounting\n\nIts hard to tell if vlans are dropping frames, since\nevery frame given to vlan_???_start_xmit() functions\nis accounted as fully transmitted by lower device.\n\nWe can test dev_queue_xmit() return values to\nproperly account for dropped frames.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2f8bc32b7a08502a79e0ccec8697000f2977f2fd",
      "tree": "c08fc64bc8b7cfe5b71d832ca9854f2dc21e6991",
      "parents": [
        "d1b19dff9159bb88fe839c30a7c071faf4761933"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 03 02:19:58 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 03 02:19:58 2009 -0700"
      },
      "message": "vlan: enable multiqueue xmits\n\nvlan_dev_hard_start_xmit() \u0026 vlan_dev_hwaccel_hard_start_xmit()\nselect txqueue number 0, instead of using index provided by\nskb_get_queue_mapping().\n\nThis is not correct after commit 2e59af3dcbdf11635c03f\n[vlan: multiqueue vlan device] because\ntxq-\u003etx_packets  \u0026 txq-\u003etx_bytes changes are performed on\na single location, and not the right locking.\n\nFix is to take the appropriate struct netdev_queue pointer\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "2e59af3dcbdf11635c03f22bfc9706744465d589",
      "tree": "c01e87c0ef6568bae987f4628a8656ba0d05aa23",
      "parents": [
        "5848cc096a23b80b3d15c27d72299f79caf7c517"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 02 18:03:00 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 18:03:00 2009 -0700"
      },
      "message": "vlan: multiqueue vlan device\n\nvlan devices are currently not multi-queue capable.\n\nWe can do that with a new rtnl_link_ops method,\nget_tx_queues(), called from rtnl_create_link()\n\nThis new method gets num_tx_queues/real_num_tx_queues\nfrom real device.\n\nregister_vlan_device() is also handled.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0af46d997fcbfd25a9e166c2431bfebc03720a36",
      "tree": "9516091be48bed458de11e9c6da529c16c2dffc3",
      "parents": [
        "cb45439977d3602b91dd0aca2d94fa3b32aebba6"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Mon Aug 31 12:31:55 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 01:24:23 2009 -0700"
      },
      "message": "vlan: Add support for net_devices_ops.ndo_fcoe_enable/_disable to VLAN\n\nThis adds implementation of the net_devices_ops.ndo_fcoe_enable/_disable to\nthe VLAN driver. It checks if the real_dev has support for ndo_fcoe_enable/\nndo_fcoe_disable and if so, passes on to call the associated real_dev.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6fef4c0c8eeff7de13007a5f56113475444a253d",
      "tree": "216bafb88ab84c5e0a048598cd6c05f7eb8f438d",
      "parents": [
        "dc1f8bf68b311b1537cb65893430b6796118498a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Aug 31 19:50:41 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 01:13:07 2009 -0700"
      },
      "message": "netdev: convert pseudo-devices to netdev_tx_t\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b85daa5324a3c9e560a4351c17d18f49c647eb5c",
      "tree": "0616b7adcb0b785560b4826a211517aeb84f03d3",
      "parents": [
        "cf9911166113e471e1796eaf273982d8e43b138d"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Aug 14 12:41:07 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 14 16:12:06 2009 -0700"
      },
      "message": "vlan: adds fcoe offload related net_device_ops and updates fcoe_ddp_xid field\n\nAdds fcoe offload related net_device_ops functions vlan_dev_fcoe_ddp_setup\nand vlan_dev_fcoe_ddp_done, their implementation simply calls real eth device\nnet_device_ops for FCoE DDP setup and done operations.\n\nUpdates VLAN netdev field value for fcoe_ddp_xid from real eth device netdev.\n\nAbove changes are required for fcoe DDP offload working on a VLAN interface.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36cbd3dcc10384f813ec0814255f576c84f2bcd4",
      "tree": "c3579edea972519d2f9ae99d7da9a5dd56e6f5c1",
      "parents": [
        "db71789c01ae7b641f83c5aa64e7df25122f4b28"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Aug 05 10:42:58 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 05 10:42:58 2009 -0700"
      },
      "message": "net: mark read-only arrays as const\n\nString literals are constant, and usually, we can also tag the array\nof pointers const too, moving it to the .rodata section.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b4076d1715b8a38138db0805a85932b3b650d583",
      "tree": "3b7ab6f84953f16a8ea8bed8aa40617e71308fad",
      "parents": [
        "573dd788ccd919f90c78f971c0da124ffa4b8bff"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Jul 30 13:16:45 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 30 13:16:45 2009 -0700"
      },
      "message": "vlan: allow creating vlan when real device is not up\n\nThere is no reason for the arbitrary restriction that device must be\nup to create a vlan. This patch was added to Vyatta kernel to resolve startup\nordering issues where vlan\u0027s are created but real device was disabled.\n\nNote: the vlan already correctly inherits the operstate from real device; so\nif vlan is created and real device is marked down, the vlan is marked\ndown.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e477c9bd2bb6a1606e498adb53ba913378ecdf2",
      "tree": "fc1e7b9488cac5a66ac1c5f2196a2400fe5fdf52",
      "parents": [
        "37cf2b8d1622897cf57e70cdab9eba57feb5ff6c"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jul 20 07:35:37 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 20 07:35:37 2009 -0700"
      },
      "message": "vlan: Propagate physical MTU changes\n\nWhen the physical MTU changes we want to ensure that all existing\nVLAN device MTUs do not exceed the new underlying MTU.  This patch\nadds that propagation.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6e327c11a91d190650df9aabe7d3694d4838bfa1",
      "tree": "14e1df4f759109548dea22372ad971624e23b8ab",
      "parents": [
        "1abb0de2f89c1f9c454c973356b9e4867722f10a"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Mon Jun 08 03:11:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:11:22 2009 -0700"
      },
      "message": "8021q: Vlan driver should use rcu_barrier() on unload instead of syncronize_net()\n\nThe VLAN 8021q driver needs to call rcu_barrier() when unloading the module,\ninstead of syncronize_net().  This is needed to make sure that outstanding\ncall_rcu() callbacks have completed, before the callback function code is\nremoved on module unload.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ccffad25b5136958d4769ed6de5e87992dd9c65c",
      "tree": "cd5f36fe67f4deeae23d76436f7a032a201cba44",
      "parents": [
        "ae63e808f508c38fe65e23a1480c85d5bd00ecbd"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Fri May 22 23:22:17 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 29 22:12:32 2009 -0700"
      },
      "message": "net: convert unicast addr list\n\nThis patch converts unicast address list to standard list_head using\npreviously introduced struct netdev_hw_addr. It also relaxes the\nlocking. Original spinlock (still used for multicast addresses) is not\nneeded and is no longer used for a protection of this list. All\nreading and writing takes place under rtnl (with no changes).\n\nI also removed a possibility to specify the length of the address\nwhile adding or deleting unicast address. It\u0027s always dev-\u003eaddr_len.\n\nThe convertion touched especially e1000 and ixgbe codes when the\nchange is not so trivial.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\n\n drivers/net/bnx2.c               |   13 +--\n drivers/net/e1000/e1000_main.c   |   24 +++--\n drivers/net/ixgbe/ixgbe_common.c |   14 ++--\n drivers/net/ixgbe/ixgbe_common.h |    4 +-\n drivers/net/ixgbe/ixgbe_main.c   |    6 +-\n drivers/net/ixgbe/ixgbe_type.h   |    4 +-\n drivers/net/macvlan.c            |   11 +-\n drivers/net/mv643xx_eth.c        |   11 +-\n drivers/net/niu.c                |    7 +-\n drivers/net/virtio_net.c         |    7 +-\n drivers/s390/net/qeth_l2_main.c  |    6 +-\n drivers/scsi/fcoe/fcoe.c         |   16 ++--\n include/linux/netdevice.h        |   18 ++--\n net/8021q/vlan.c                 |    4 +-\n net/8021q/vlan_dev.c             |   10 +-\n net/core/dev.c                   |  195 +++++++++++++++++++++++++++-----------\n net/dsa/slave.c                  |   10 +-\n net/packet/af_packet.c           |    4 +-\n 18 files changed, 227 insertions(+), 137 deletions(-)\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3804cbebb67887879102925961d41b503f7fbe3",
      "tree": "0c2290608f511bf97978767e159121e3009c56e3",
      "parents": [
        "c649c0e31d5736a4b7c5c3454182091dda4bbe62"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Mon May 25 01:53:53 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 25 01:53:53 2009 -0700"
      },
      "message": "net: remove COMPAT_NET_DEV_OPS\n\nAll drivers are already converted to new net_device_ops API\nand nobody uses old API anymore.\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "93f154b594fe47e4a7e5358b309add449a046cd3",
      "tree": "479d9f2db25922a2312547c97e73d5a11b68bb1c",
      "parents": [
        "496a60cdcd5d0d884dddf6c3b4ea912923a70f13"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon May 18 22:19:19 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 22:19:19 2009 -0700"
      },
      "message": "net: release dst entry in dev_hard_start_xmit()\n\nOne point of contention in high network loads is the dst_release() performed\nwhen a transmited skb is freed. This is because NIC tx completion calls\ndev_kree_skb() long after original call to dev_queue_xmit(skb).\n\nCPU cache is cold and the atomic op in dst_release() stalls. On SMP, this is\nquite visible if one CPU is 100% handling softirqs for a network device,\nsince dst_clone() is done by other cpus, involving cache line ping pongs.\n\nIt seems right place to release dst is in dev_hard_start_xmit(), for most\ndevices but ones that are virtual, and some exceptions.\n\nDavid Miller suggested to define a new device flag, set in alloc_netdev_mq()\n(so that most devices set it at init time), and carefuly unset in devices\nwhich dont want a NULL skb-\u003edst in their ndo_start_xmit().\n\nList of devices that must clear this flag is :\n\n- loopback device, because it calls netif_rx() and quoting Patrick :\n    \"ip_route_input() doesn\u0027t accept loopback addresses, so loopback packets\n     already need to have a dst_entry attached.\"\n- appletalk/ipddp.c : needs skb-\u003edst in its xmit function\n\n- And all devices that call again dev_queue_xmit() from their xmit function\n(as some classifiers need skb-\u003edst) : bonding, vlan, macvlan, eql, ifb, hdlc_fr\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "450c4ea15ecb89567e6a75b89cbb8a598a7efb75",
      "tree": "5e99e5e58ca2e5e046d47963773ef66857bec46a",
      "parents": [
        "7004bf252c53da18f6b55103e0c92f777f846806"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon May 18 00:35:38 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 15:15:06 2009 -0700"
      },
      "message": "vlan: use struct netdev_queue counters instead of dev-\u003estats\n\nWe can update netdev_queue tx_bytes/tx_packets/tx_dropped counters instead\nof dev-\u003estats ones, to reduce number of cache lines dirtied in xmit path.\n\nThis fixes a performance problem on SMP when many different cpus take\nvlan tx path.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aba7453037c3a90714caae77a622dceaf1173786",
      "tree": "bf07f9f432b0d8e9db9486f1f32ad065c0aa7c5c",
      "parents": [
        "a4fe91ee711f4e955ea85ab05b092cfe384b073e",
        "93af7aca44f0e82e67bda10a0fb73d383edcc8bd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 29 20:30:35 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 29 20:30:35 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tDocumentation/isdn/00-INDEX\n\tdrivers/net/wireless/iwlwifi/iwl-scan.c\n\tdrivers/net/wireless/rndis_wlan.c\n\tnet/mac80211/main.c\n"
    },
    {
      "commit": "adc667e84f086aa110d810f3476c494e48eaabaa",
      "tree": "4a1267f1d2aa44893e2dc6c779ae686a01db409d",
      "parents": [
        "1c41e238e0beaac530c5c9d629e8dfbbadc4a099"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Sat Apr 25 18:03:35 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 25 18:03:35 2009 -0700"
      },
      "message": "vlan: update vlan carrier state for admin up/down\n\n\tCurrently, the VLAN event handler does not adjust the VLAN\ndevice\u0027s carrier state when the real device or the VLAN device is set\nadministratively up or down.\n\n\tThe following patch adds a transfer of operating state from the\nreal device to the VLAN device when the real device is administratively\nset up or down, and sets the carrier state up or down during init, open\nand close of the VLAN device.\n\n\tThis permits observers above the VLAN device that care about the\ncarrier state (bonding\u0027s link monitor, for example) to receive updates\nfor administrative changes by more closely mimicing the behavior of real\ndevices.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "b1b67dd45a6b629eb41553856805aaa1614fbb83",
      "tree": "23d2b8dc59223b649f466564dac338c899595a7c",
      "parents": [
        "4510d7cb8b4e7d389652b8a4f89fad469a5ecc92"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 20 04:49:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 21 02:00:51 2009 -0700"
      },
      "message": "net: factor out ethtool invocation of vlan/macvlan drivers\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5e9743bb7429f53c83ad69b432f7b661e74c3f0",
      "tree": "db3691aef0d46c4aed4a2be6dc8ab7c44c3488cb",
      "parents": [
        "a0f82f64e26929776c58a5c93c2ecb38e3d82815",
        "775d8d931581764a1ec982ebe5a927b12762fb6d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 21 01:32:26 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 21 01:32:26 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/core/dev.c\n"
    },
    {
      "commit": "7816a0a862d851d0b05710e7d94bfe390f3180e2",
      "tree": "0b4f9099df21b1f7295637e8c28aa72721150b7d",
      "parents": [
        "75a241f959a65ec9bde237d1af1a34ef794f0c9c"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Apr 17 15:59:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 17 15:59:23 2009 -0700"
      },
      "message": "vlan/macvlan: fix NULL pointer dereferences in ethtool handlers\n\nCheck whether the underlying device provides a set of ethtool ops before\nchecking for individual handlers to avoid NULL pointer dereferences.\n\nReported-by: Art van Breemen \u003card@telegraafnet.nl\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a54bfa40fd16aeb90bc556189221576f746f8567",
      "tree": "176bb7a99ffab5f42f0dd4e9671f335be3f3efa0",
      "parents": [
        "fe957c40ec5e2763b9977c565beab3bde3aaf85b",
        "134ffb4cad92a6aa534e55a9be145bca780a32c1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 16 17:35:26 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 16 17:35:26 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "76620aafd66f0004829764940c5466144969cffc",
      "tree": "38041e6938121b5611546c582cd23f289db047b0",
      "parents": [
        "861ab44059350e5cab350238606cf8814abab93b"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Apr 16 02:02:07 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 16 02:02:07 2009 -0700"
      },
      "message": "gro: New frags interface to avoid copying shinfo\n\nIt turns out that copying a 16-byte area at ~800k times a second\ncan be really expensive :) This patch redesigns the frags GRO\ninterface to avoid copying that area twice.\n\nThe two disciples of the frags interface have been converted.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1db9e29bb0ff3c9366e8a50fb09ca8dbc364bfd6",
      "tree": "2fc6f44fed9784fa3d136bbafa6bc7a3ab50c4bb",
      "parents": [
        "03a980d162eb48a79ce21d47f45b9ec7d9db20e9"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 13 04:41:01 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 13 15:44:50 2009 -0700"
      },
      "message": "gro: Normalise skb before bypassing GRO on netpoll VLAN path\n\nHi:\n\ngro: Normalise skb before bypassing GRO on netpoll VLAN path\n\nWhen we detect netpoll RX on the GRO VLAN path we bail out and\ncall the normal VLAN receive handler.  However, the packet needs\nto be normalised by calling eth_type_trans since that\u0027s what the\nnormal path expects (normally the GRO path does the fixup).\n\nThis patch adds the necessary call to vlan_gro_frags.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n\nThanks,\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2ffb4558194037133121e260022baa0d21590473",
      "tree": "15e070b0b42ba4466a23ee61a5352e59bf1bd4fc",
      "parents": [
        "d1c76af9e2434fac3add561e26c61b06503de986"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Mar 17 13:10:52 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 17 13:10:52 2009 -0700"
      },
      "message": "gro: Fix vlan/netpoll check again\n\nJarek Poplawski pointed out that my previous fix is broken for\nVLAN+netpoll as if netpoll is enabled we\u0027d end up in the normal\nreceive path instead of the VLAN receive path.\n\nThis patch fixes it by calling the VLAN receive hook.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d1c76af9e2434fac3add561e26c61b06503de986",
      "tree": "cbedc7c96c4b7db3d7a5a8300117804c5e0230d9",
      "parents": [
        "afece1c6587010cc81d1a43045c855774e8234a3"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Mar 16 10:50:02 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 16 10:50:02 2009 -0700"
      },
      "message": "GRO: Move netpoll checks to correct location\n\nAs my netpoll fix for net doesn\u0027t really work for net-next, we\nneed this update to move the checks into the right place.  As it\nstands we may pass freed skbs to netpoll_receive_skb.\n\nThis patch also introduces a netpoll_rx_on function to avoid GRO\ncompletely if we\u0027re invoked through netpoll.  This might seem\nparanoid but as netpoll may have an external receive hook it\u0027s\nbetter to be safe than sorry.  I don\u0027t think we need this for\n2.6.29 though since there\u0027s nothing immediately broken by it.\n\nThis patch also moves the GRO_* return values to netdevice.h since\nVLAN needs them too (I tried to avoid this originally but alas\nthis seems to be the easiest way out).  This fixes a bug in VLAN\nwhere it continued to use the old return value 2 instead of the\ncorrect GRO_DROP.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7546dd97d27306d939c13e03318aae695badaa88",
      "tree": "ced310466fd679ceae4e676ae8c31fd78b7bd72f",
      "parents": [
        "3f612132c7164d5cc9ed677a2fdf8950222d2170"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Mar 09 08:18:29 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 10 05:22:43 2009 -0700"
      },
      "message": "net: convert usage of packet_type to read_mostly\n\nProtocols that use packet_type can be __read_mostly section for better\nlocality. Elminate any unnecessary initializations of NULL.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "508827ff0ac3981d420edac64a70de7f4e304d38",
      "tree": "b0cee8ddef9f0ceab68c388e4ae46b7295eb2cb5",
      "parents": [
        "2c3c3d02f28801d7ad2da4952b2c7ca6621ef221",
        "72e2240f181871675d3a979766330c91d48a1673"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 05 02:06:47 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 05 02:06:47 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/tokenring/tmspci.c\n\tdrivers/net/ucc_geth_mii.c\n"
    },
    {
      "commit": "9d40bbda599def1e1d155d7f7dca14fe8744bd2b",
      "tree": "d246fbaec294830ecab0bb4b3b38d925abb5ffd8",
      "parents": [
        "54acd0efab072cb70e87206329d561b297f93bbb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 04 23:46:25 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 04 23:46:25 2009 -0800"
      },
      "message": "vlan: Fix vlan-in-vlan crashes.\n\nAs analyzed by Patrick McHardy, vlan needs to reset it\u0027s\nnetdev_ops pointer in it\u0027s -\u003einit() function but this\nleaves the compat method pointers stale.\n\nAdd a netdev_resync_ops() and call it from the vlan code.\n\nAny other driver which changes -\u003enetdev_ops after register_netdevice()\nwill need to call this new function after doing so too.\n\nWith help from Patrick McHardy.\n\nTested-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa4abc9bcce0d2a7ec189e897f8f8c58ca04643b",
      "tree": "22ef88d84a2e06380bb6a853c3ba28657e4e5f92",
      "parents": [
        "814c01dc7c533033b4e99981a2e24a6195bfb43c",
        "52c0326beaa3cb0049d0f1c51c6ad5d4a04e4430"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 21:35:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 21:35:16 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-tx.c\n\tnet/8021q/vlan_core.c\n\tnet/core/dev.c\n"
    },
    {
      "commit": "4ead443163b798661c2a2ede5e512e116a9e41e7",
      "tree": "7fb2f0cf1446315805c9ddc3362b124c374c8695",
      "parents": [
        "18963caaf55240d6a0491bdb27b7fef2882ffb15"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Mar 01 00:11:52 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 00:11:52 2009 -0800"
      },
      "message": "netpoll: Add drop checks to all entry points\n\nThe netpoll entry checks are required to ensure that we don\u0027t\nreceive normal packets when invoked via netpoll.  Unfortunately\nit only ever worked for the netif_receive_skb/netif_rx entry\npoints.  The VLAN (and subsequently GRO) entry point didn\u0027t\nhave the check and therefore can trigger all sorts of weird\nproblems.\n\nThis patch adds the netpoll check to all entry points.\n\nI\u0027m still uneasy with receiving at all under netpoll (which\napparently is only used by the out-of-tree kdump code).  The\nreason is it is perfectly legal to receive all data including\nheaders into highmem if netpoll is off, but if you try to do\nthat with netpoll on and someone gets a printk in an IRQ handler                                             \nyou\u0027re going to get a nice BUG_ON.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa4b9f533ed5a22952e038b9fac2447ccc682124",
      "tree": "91722b13a63dcd0e49695388e633cfa91b856b80",
      "parents": [
        "4ae5544f9a33e4ae306e337f96951eb3ff2df6d9"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Feb 08 18:00:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 08 20:22:18 2009 -0800"
      },
      "message": "gro: Optimise Ethernet header comparison\n\nThis patch optimises the Ethernet header comparison to use 2-byte\nand 4-byte xors instead of memcmp.  In order to facilitate this,\nthe actual comparison is now carried out by the callers of the\nshared dev_gro_receive function.\n\nThis has a significant impact when receiving 1500B packets through\n10GbE.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09640e6365c679b5642b1c41b6d7078f51689ddf",
      "tree": "a2b80c153bd23fe59db8c6994fda29923819fcea",
      "parents": [
        "ee437770c42088b9b653e8b3bf28a61fa647f84e"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Sun Feb 01 00:45:17 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 01 00:45:17 2009 -0800"
      },
      "message": "net: replace uses of __constant_{endian}\n\nBase versions handle constant folding now.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "86911732d3996a9da07914b280621450111bb6da",
      "tree": "e787240d5ba869ddf4d0adfc3f9c69e0372e96ef",
      "parents": [
        "5d0d9be8ef456afc6c3fb5f8aad06ef19b704b05"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jan 29 14:19:50 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 29 16:33:03 2009 -0800"
      },
      "message": "gro: Avoid copying headers of unmerged packets\n\nUnfortunately simplicity isn\u0027t always the best.  The fraginfo\ninterface turned out to be suboptimal.  The problem was quite\nobvious.  For every packet, we have to copy the headers from\nthe frags structure into skb-\u003ehead, even though for 99% of the\npackets this part is immediately thrown away after the merge.\n\nLRO didn\u0027t have this problem because it directly read the headers\nfrom the frags structure.\n\nThis patch attempts to address this by creating an interface\nthat allows GRO to access the headers in the first frag without\nhaving to copy it.  Because all drivers that use frags place the\nheaders in the first frag this optimisation should be enough.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5d0d9be8ef456afc6c3fb5f8aad06ef19b704b05",
      "tree": "9fc987d5c6850800a83465105af43af4ce9c76a4",
      "parents": [
        "7019298a2a5058c4e324494d6c8d0598214c28f4"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jan 29 14:19:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 29 16:33:02 2009 -0800"
      },
      "message": "gro: Move common completion code into helpers\n\nCurrently VLAN still has a bit of common code handling the aftermath\nof GRO that\u0027s shared with the common path.  This patch moves them\ninto shared helpers to reduce code duplication.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "116cb42855fbd052fc8cd2ca3e06050bff762673",
      "tree": "ad61cd5a69dc68a4851fb196120baba6052d2689",
      "parents": [
        "e8b5fc514d1c7637cb4b8f77e7d8ac33ef66130c"
      ],
      "author": {
        "name": "Ben Greear",
        "email": "greearb@candelatech.com",
        "time": "Mon Jan 26 12:37:53 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 26 12:37:53 2009 -0800"
      },
      "message": "vlan: Export symbols as non GPL symbols.\n\nIn previous kernels, any kernel module could get access to the\n\u0027real-device\u0027 and the VLAN-ID for a particular VLAN.  In more recent\nkernels, the code was restructured such that this is hard to do\nwithout accessing private .h files for any module that cannot use\nGPL-only symbols.\n\nAttached is a patch to once again allow non-GPL modules the ability to\naccess the real-device and VLAN id for VLANs.\n\nSigned-off-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cc883d16c3b7434c7da2c45b54a49c2a99e83db7",
      "tree": "12ad0db6989cdbcae745cb09a33e4e7ded7383c6",
      "parents": [
        "f52deb0e8408515ecf58c330c93fa99b8cb53cb4"
      ],
      "author": {
        "name": "Frank Blaschka",
        "email": "frank.blaschka@de.ibm.com",
        "time": "Thu Jan 08 10:50:20 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 08 10:50:20 2009 -0800"
      },
      "message": "vlan: add neigh_setup\n\nIn case the real device has a neigh_setup function, this\nneigh_setup function should be used for the vlan device.\n\nSigned-off-by: Frank Blaschka \u003cfrank.blaschka@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e1c096e251e52773afeffbbcb74d0a072be47ea3",
      "tree": "f49f4a34015ba7a4bee16c15942b8f1d47f8c20a",
      "parents": [
        "96e93eab20337d063c70d537bd7bc70d90e04fa3"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Jan 06 10:50:09 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 06 10:50:09 2009 -0800"
      },
      "message": "vlan: Add GRO interfaces\n\nThis patch adds GRO interfaces for hardware-assisted VLAN reception.\nWith this in place we\u0027re now at parity with LRO as far as the\ninterface is concerned.  That is, you can now take any LRO driver\nand convert it over to GRO.\n\nAs the CB memory clashes with GRO\u0027s use of CB, I\u0027ve removed it\nentirely by storing dev in skb-\u003edev.  This is OK because VLAN\ngets called first thing in netif_receive_skb and skb-\u003edev is\nnot used in between us calling netif_rx and netif_receive_skb\ngetting called.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f7d1b9f5aafa371d7f51f644aa3c38bc914e9205",
      "tree": "7120c076df7226818a416822fe972de2efc74b12",
      "parents": [
        "d45227391c70ea12ec129ebfa97841e9b7ff34fd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Dec 25 16:45:19 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:45:19 2008 -0800"
      },
      "message": "vlan: fix convertion to net_device_ops\n\ncommit 656299f706e52e0409733d704c2761f1b12d6954\n(vlan: convert to net_device_ops) added a net_device_ops\nwith a NULL ndo_start_xmit field.\n\nThis gives a crash in dev_hard_start_xmit()\n\nFix it using two net_device_ops structures, one for hwaccel vlan,\none for non hwaccel vlan.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "656299f706e52e0409733d704c2761f1b12d6954",
      "tree": "fcf2013d86e552eda9e9576acc58a32912c616f4",
      "parents": [
        "5bc3eb7e2f0026f246d939851109df99e8e9f64a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Nov 19 21:53:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 19 22:42:41 2008 -0800"
      },
      "message": "vlan: convert to net_device_ops\n\nConvert vlan devices and function pointers to net_device_ops.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7e452baf6b96b5aeba097afd91501d33d390cc97",
      "tree": "9b0e062d3677d50d731ffd0fba47423bfdee9253",
      "parents": [
        "3ac38c3a2e7dac3f8f35a56eb85c27881a4c3833",
        "f21f237cf55494c3a4209de323281a3b0528da10"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 11 15:43:02 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 11 15:43:02 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/message/fusion/mptlan.c\n\tdrivers/net/sfc/ethtool.c\n\tnet/mac80211/debugfs_sta.c\n"
    },
    {
      "commit": "309f796f301bf1c2731d9b9eb8642c76b523ebf7",
      "tree": "5f4a2cbcf4775a4fc5494778aa376a22d7065531",
      "parents": [
        "ffaf4c76526aaf94698e0c0612f09a6128437ad4"
      ],
      "author": {
        "name": "Ferenc Wagner",
        "email": "wferi@niif.hu",
        "time": "Mon Nov 10 13:37:40 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 10 13:37:40 2008 -0800"
      },
      "message": "vlan: Fix typos in proc output string\n\nSigned-off-by: Ferenc Wagner \u003cwferi@niif.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9eeda9abd1faf489f3df9a1f557975f4c8650363",
      "tree": "3e0a58e25b776cfbee193195460324dccb1886c7",
      "parents": [
        "61c9eaf90081cbe6dc4f389e0056bff76eca19ec",
        "4bab0ea1d42dd1927af9df6fbf0003fc00617c50"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 06 22:43:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 06 22:43:03 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/ath5k/base.c\n\tnet/8021q/vlan_core.c\n"
    },
    {
      "commit": "9b22ea560957de1484e6b3e8538f7eef202e3596",
      "tree": "e922feeebfc8795e8ec2f02b58a99a23ae0ce74b",
      "parents": [
        "79654a7698195fa043063092f5c1ca5245276fba"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Nov 04 14:49:57 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 04 14:49:57 2008 -0800"
      },
      "message": "net: fix packet socket delivery in rx irq handler\n\nThe changes to deliver hardware accelerated VLAN packets to packet\nsockets (commit bc1d0411) caused a warning for non-NAPI drivers.\nThe __vlan_hwaccel_rx() function is called directly from the drivers\nRX function, for non-NAPI drivers that means its still in RX IRQ\ncontext:\n\n[   27.779463] ------------[ cut here ]------------\n[   27.779509] WARNING: at kernel/softirq.c:136 local_bh_enable+0x37/0x81()\n...\n[   27.782520]  [\u003cc0264755\u003e] netif_nit_deliver+0x5b/0x75\n[   27.782590]  [\u003cc02bba83\u003e] __vlan_hwaccel_rx+0x79/0x162\n[   27.782664]  [\u003cf8851c1d\u003e] atl1_intr+0x9a9/0xa7c [atl1]\n[   27.782738]  [\u003cc0155b17\u003e] handle_IRQ_event+0x23/0x51\n[   27.782808]  [\u003cc015692e\u003e] handle_edge_irq+0xc2/0x102\n[   27.782878]  [\u003cc0105fd5\u003e] do_IRQ+0x4d/0x64\n\nSplit hardware accelerated VLAN reception into two parts to fix this:\n\n- __vlan_hwaccel_rx just stores the VLAN TCI and performs the VLAN\n  device lookup, then calls netif_receive_skb()/netif_rx()\n\n- vlan_hwaccel_do_receive(), which is invoked by netif_receive_skb()\n  in softirq context, performs the real reception and delivery to\n  packet sockets.\n\nReported-and-tested-by: Ramon Casellas \u003cramon.casellas@cttc.es\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d2ad3ca88da02baeccd5216780f1fe983c6953ba",
      "tree": "62858c1c1f89cf4abe17f5e4e0812b1b528fbd18",
      "parents": [
        "265eb67fb4e16be8e46a51e1e4e2ecd99fb15219"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 03 22:01:07 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 03 22:01:07 2008 -0800"
      },
      "message": "net/: Kill now superfluous -\u003elast_rx stores.\n\nThe generic packet receive code takes care of setting\nnetdev-\u003elast_rx when necessary, for the sake of the\nbonding ARP monitor.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b30200616f97a81243e6d0c644d8ab06bf0b8115",
      "tree": "a87436afe55a6d8f5323df8ce7af99315713b78e",
      "parents": [
        "3717746ef8b5a9279281b5d318496710984ed739"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Oct 28 22:12:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 28 23:02:34 2008 -0700"
      },
      "message": "vlan: propogate ethtool speed values\n\nThis enables more ethtool information. The speed and settings of the\nunderlying device are propagated up. This makes services like SNMP that\nuse ethtool to get speed setting, work when managing a vlan, without adding\nsilly heurtistics into SNMP daemon.\n\nFor the driver info, just use existing driver strings.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6067804047b64dde89f4f133fc7eba48ee44107d",
      "tree": "abe87787c3ad2aee82e576c7d4128e29bb296ac0",
      "parents": [
        "a574420ff46cff0245e6b0fce2e961aa2717743d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Sep 20 22:20:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Sep 20 22:20:49 2008 -0700"
      },
      "message": "net: Use hton[sl]() instead of __constant_hton[sl]() where applicable\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1ae4be22f64326a6784acd7083b9590c9f4215a2",
      "tree": "748a01af8b303d5f7d9f01234572a5fd10417495",
      "parents": [
        "1f07553a58c65741d6d125621123ecf9093fa0e3"
      ],
      "author": {
        "name": "Alexander Duyck",
        "email": "alexander.h.duyck@intel.com",
        "time": "Thu Sep 11 20:17:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 11 20:17:05 2008 -0700"
      },
      "message": "vlan: vlan device not reading gso max size of parent.\n\nThe vlan devices are not reading the gso max size of the parent device.  As\na result devices that do not support 64K max gso size are currently\nfailing.\n\nThis issue is seen on 2.6.26 kernels as well and the same patch should be\nable to be applied without any issues.\n\nSigned-off-by: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf508b1211dbe576778ff445ea1b4b0bcfa5c4ea",
      "tree": "4774838c2db17db71662a625fea25def8823341a",
      "parents": [
        "d29f749e252bcdbfe7a75a58f0ee92da16f127c0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 22 14:16:42 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 22 14:16:42 2008 -0700"
      },
      "message": "netdev: Handle -\u003eaddr_list_lock just like -\u003e_xmit_lock for lockdep.\n\nThe new address list lock needs to handle the same device layering\nissues that the _xmit_lock one does.\n\nThis integrates work done by Patrick McHardy.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "49997d75152b3d23c53b0fa730599f2f74c92c65",
      "tree": "46e93126170d02cfec9505172e545732c1b69656",
      "parents": [
        "a0c80b80e0fb48129e4e9d6a9ede914f9ff1850d",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 02:39:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 02:39:39 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tDocumentation/powerpc/booting-without-of.txt\n\tdrivers/atm/Makefile\n\tdrivers/net/fs_enet/fs_enet-main.c\n\tdrivers/pci/pci-acpi.c\n\tnet/8021q/vlan.c\n\tnet/iucv/iucv.c\n"
    },
    {
      "commit": "e8a0464cc950972824e2e128028ae3db666ec1ed",
      "tree": "5022b95396c0f3b313531bc39b19543c03551b9a",
      "parents": [
        "070825b3840a743e21ebcc44f8279708a4fed977"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 17 00:34:19 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 17 19:21:00 2008 -0700"
      },
      "message": "netdev: Allocate multiple queues for TX.\n\nalloc_netdev_mq() now allocates an array of netdev_queue\nstructures for TX, based upon the queue_count argument.\n\nFurthermore, all accesses to the TX queues are now vectored\nthrough the netdev_get_tx_queue() and netdev_for_each_tx_queue()\ninterfaces.  This makes it easy to grep the tree for all\nthings that want to get to a TX queue of a net device.\n\nProblem spots which are not really multiqueue aware yet, and\nonly work with one queue, can easily be spotted by grepping\nfor all netdev_get_tx_queue() calls that pass in a zero index.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "61362766d769c934a9d12d5516323c544c161908",
      "tree": "2d15247c2fc7c204cbf8859cdd92f99d02577e4b",
      "parents": [
        "d80aa31bbffc4bc8b5be36c57cbea128f52e1e1f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 14 22:51:55 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 22:51:55 2008 -0700"
      },
      "message": "vlan: remove unnecessary include statements\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d80aa31bbffc4bc8b5be36c57cbea128f52e1e1f",
      "tree": "ae6941b4496c15b8847c10e8eb74278da90c5778",
      "parents": [
        "1349fe9a6bc580fb80e1a43a93b68c15d674ed0a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 14 22:51:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 22:51:39 2008 -0700"
      },
      "message": "vlan: clean up hard_start_xmit functions\n\nRemove excessive comments and debugging, use NETDEV_TX codes,\nremove some empty lines.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1349fe9a6bc580fb80e1a43a93b68c15d674ed0a",
      "tree": "3c92139ffcf5c2566dbd6be9b3c06a2c77d6bfd5",
      "parents": [
        "19b9a4e256758a0c032c915eebe0a39b370ea133"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 14 22:51:19 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 22:51:19 2008 -0700"
      },
      "message": "vlan: clean up vlan_dev_hard_header()\n\nRemove some debugging and excessive comments, merge the two\ndev_hard_header calls into one.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "19b9a4e256758a0c032c915eebe0a39b370ea133",
      "tree": "ace976da19088334694167a9c3234c906a8fcced",
      "parents": [
        "393e52e33c6c26ec7db290dab803bac1bed962d4"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 14 22:51:01 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 22:51:01 2008 -0700"
      },
      "message": "vlan: ethtool -\u003eget_flags support\n\nAllow to query LRO settings of underlying device when VLAN RX\nacceleration is used.\n\nSuggested by Ben Hutchings \u003cbhutchings@solarflare.com\u003e.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc1d0411b804ad190cdadabac48a10067f17b9e6",
      "tree": "0a38da614b6bb46f2ffa2378aca25043a2b33a7c",
      "parents": [
        "6aa895b047720f71ec4eb11452f7c3ce8426941f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 14 22:49:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 22:49:30 2008 -0700"
      },
      "message": "vlan: deliver packets received with VLAN acceleration to network taps\n\nWhen VLAN header stripping is used, packets currently bypass packet\nsockets (and other network taps) completely. For locally existing\nVLANs, they appear directly on the VLAN device, for unknown VLANs\nthey are silently dropped.\n\nAdd a new function netif_nit_deliver() to deliver incoming packets\nto all network interface taps and use it in __vlan_hwaccel_rx() to\nmake VLAN packets visible on the underlying device.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89146504cbfeb120dd08ec7f9f8314c4986189b8",
      "tree": "7a271a017d3e622aa3a3459b3d1b0bbecd4bd9e6",
      "parents": [
        "b89fb7da2f9a69dd34ff10d45f66baa40ff8c0e5"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Mon Jul 14 20:59:03 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 20:59:03 2008 -0700"
      },
      "message": "8021q: Check return of dev_set_promiscuity/allmulti\n\ndev_set_promiscuity/allmulti might overflow.\nCommit: \"netdevice: Fix promiscuity and allmulti overflow\" in net-next makes\ndev_set_promiscuity/allmulti return error number if overflow happened.\n\nHere, we check all positive increment for promiscuity and allmulti\nto get error return.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c773e847ea8f6812804e40f52399c6921a00eab1",
      "tree": "952e0e262cc0b0f2136bc2a62938ae1d186f896a",
      "parents": [
        "eb6aafe3f843cb0e939546c03540a3b4911b6964"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 23:13:53 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 23:13:53 2008 -0700"
      },
      "message": "netdev: Move _xmit_lock and xmit_lock_owner into netdev_queue.\n\nAccesses are mostly structured such that when there are multiple TX\nqueues the code transformations will be a little bit simpler.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "11a100f844f6096787ab20e19f17d72abc957a8f",
      "tree": "9dd9f8578727783dc1d321a822402ee6ca83cd10",
      "parents": [
        "9bb8582efb555521c7eec595ebd34e835ddc34b8"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 08 15:36:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 15:36:57 2008 -0700"
      },
      "message": "vlan: avoid header copying and linearisation where possible\n\n- vlan_dev_reorder_header() is only called on the receive path after\n  calling skb_share_check(). This means we can use skb_cow() since\n  all we need is a writable header.\n\n- vlan_dev_hard_header() includes a work-around for some apparently\n  broken out of tree MPLS code. The hard_header functions can expect\n  to always have a headroom of at least there own hard_header_len\n  available, so the reallocation check is unnecessary.\n\n- __vlan_put_tag() can use skb_cow_head() to avoid the skb_unshare()\n  copy when the header is writable.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9bb8582efb555521c7eec595ebd34e835ddc34b8",
      "tree": "8eb6aae062bbd359e820a35d51fb16a32e7b828f",
      "parents": [
        "df6b6a0cf62afeacdeb4c1a35b8fba21fda54399"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 08 03:24:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 03:24:44 2008 -0700"
      },
      "message": "vlan: TCI related type and naming cleanups\n\nThe VLAN code contains multiple spots that use tag, id and tci as\nidentifiers for arguments and variables incorrectly and they actually\ncontain or are expected to contain something different. Additionally\ntypes are used inconsistently (unsigned short vs u16) and identifiers\nare sometimes capitalized.\n\n- consistently use u16 for storing TCI, ID or QoS values\n- consistently use vlan_id and vlan_tci for storing the respective values\n- remove capitalization\n- add kdoc comment to netif_hwaccel_{rx,receive_skb}\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "22d1ba74bbafa96d3f425cc12714d3fe8675183f",
      "tree": "5fdc18001037a667e95229dbc34130b7210e8c8c",
      "parents": [
        "7750f403cbe56971336d575b354365190b4e3227"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 08 03:23:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 03:23:57 2008 -0700"
      },
      "message": "vlan: move struct vlan_dev_info to private header\n\nHide struct vlan_dev_info from drivers to prevent them from growing\nmore creative ways to use it. Provide accessors for the two drivers\nthat currently use it.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7750f403cbe56971336d575b354365190b4e3227",
      "tree": "bc8a65b0dd0d5cc3faac943f7e3df0c6dfedeaf6",
      "parents": [
        "75b8846acd11ad3fc736d4df3413fe946bbf367c"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 08 03:23:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 03:23:36 2008 -0700"
      },
      "message": "vlan: uninline __vlan_hwaccel_rx\n\nThe function is huge and included at least once in every VLAN acceleration\ncapable driver. Uninline it; to avoid having drivers depend on the VLAN\nmodule, the function is always built in statically when VLAN is enabled.\n\nWith all VLAN acceleration capable drivers that build on x86_64 enabled,\nthis results in:\n\n   text    data     bss     dec     hex filename\n6515227  854044  343968 7713239  75b1d7 vmlinux.inlined\n6505637  854044  343968 7703649  758c61 vmlinux.uninlined\n----------------------------------------------------------\n  -9590\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75b8846acd11ad3fc736d4df3413fe946bbf367c",
      "tree": "78a96fe42916ac18e4d992eb3024e8427fb42eb3",
      "parents": [
        "26a25239d7a660cc7162e2463b48b40d544364d0"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 08 03:22:42 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 03:22:42 2008 -0700"
      },
      "message": "vlan: Add ethtool support\n\nAdd ethtool support for querying the device for offload settings.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "26a25239d7a660cc7162e2463b48b40d544364d0",
      "tree": "1448f1721042dbbac1ff2f1fd4ba2bcb965f96ee",
      "parents": [
        "acc81e1465d29e0284008770cc4b8bc90bd93bd7"
      ],
      "author": {
        "name": "Joonwoo Park",
        "email": "joonwpark81@gmail.com",
        "time": "Tue Jul 08 03:22:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 03:22:16 2008 -0700"
      },
      "message": "vlan: Use is_vlan_dev()\n\nUse simplified is_vlan_dev function.\n\nSigned-off-by: Joonwoo Park \u003cjoonwpark81@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "acc81e1465d29e0284008770cc4b8bc90bd93bd7",
      "tree": "7580b619f82a6ae13c425051c305b7d5501e201d",
      "parents": [
        "256f3bfce87fe39ec008b2c27890b30066984f50"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 08 03:21:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 03:21:27 2008 -0700"
      },
      "message": "vlan: fix network_header/mac_header adjustments\n\nLennert Buytenhek points out that the VLAN code incorrectly adjusts\nskb-\u003enetwork_header to point in the middle of the VLAN header and\nadditionally tries to adjust skb-\u003emac_header without checking for\nvalidity.\n\nThe network_header should not be touched at all since we\u0027re only\nadding headers in front of it, mac_header adjustments are not\nnecessary at all.\n\nBased on patch by Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "70c03b49b80ba3634958acc31853771019c0ebd3",
      "tree": "097861a5da46fc10696c97f21720c1e5053b322f",
      "parents": [
        "ce305002e1c9b90c2c151ce18bab0b895dd55ae6"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 05 21:26:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 05 21:26:57 2008 -0700"
      },
      "message": "vlan: Add GVRP support\n\nAdd GVRP support for dynamically registering VLANs with switches.\n\nBy default GVRP is disabled because we only support the applicant-only\nparticipant model, which means it should not be enabled on vlans that\nare members of a bridge. Since there is currently no way to cleanly\ndetermine that, the user is responsible for enabling it.\n\nThe code is pretty small and low impact, its wrapped in a config\noption though because it depends on the GARP implementation and\nthe STP core.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ce305002e1c9b90c2c151ce18bab0b895dd55ae6",
      "tree": "dce98db82836d00cc45db667ada6b77a86724f13",
      "parents": [
        "b3ce0325f2bf1bb737cb8fc7c349ce8fefdd9e40"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 05 21:26:41 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 05 21:26:41 2008 -0700"
      },
      "message": "vlan: Move device unregistration before lower dev cleanup\n\nMove the unregister_netdevice() call for the VLAN device before cleanup\nfor the lower device. This is needed by GVRP so it can send a leave\nmessage before the applicant on the lower device is cleaned up.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b3ce0325f2bf1bb737cb8fc7c349ce8fefdd9e40",
      "tree": "f2925e18555561b528b781c535c96bdbc0c809a9",
      "parents": [
        "eca9ebac651f774d8b10fce7c5d173c3c3d3394f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 05 21:26:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 05 21:26:27 2008 -0700"
      },
      "message": "vlan: Change vlan_dev_set_vlan_flag() to handle multiple flags at once\n\nChange vlan_dev_set_vlan_flag() to handle multiple flags at once and\nrename to vlan_dev_change_flags(). This allows to to use it from the\nnetlink interface, which in turn allows to handle necessary adjustments\nwhen changing flags centrally.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "766d02786ecd22932beeb9ca8bad6d8c5a552ef9",
      "tree": "f6f2df0e35bbea914d1f4d12be6d02f128c73575",
      "parents": [
        "906d882cacecd37ad2fdd03ed2a9b232bcb9507e",
        "066519068ad2fbe98c7f45552b1f592903a9c8c8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:23:36 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:23:36 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/rcu\n"
    },
    {
      "commit": "289c79a4bd350e8a25065102563ad1a183d1b402",
      "tree": "2067cb054704c62c3debfe92a3f00dc551ff7162",
      "parents": [
        "7bece8155be133cd67c41eed2b31c60a310609de"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri May 23 00:22:04 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 23 00:27:50 2008 -0700"
      },
      "message": "vlan: Use bitmask of feature flags instead of seperate feature bits\n\nHerbert Xu points out that the use of seperate feature bits for features\nto be propagated to VLAN devices is going to get messy real soon.\nReplace the VLAN feature bits by a bitmask of feature flags to be\npropagated and restore the old GSO_SHIFT/MASK values.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5fb13570543f4ae022996c9d7c0c099c8abf22dd",
      "tree": "bf0f837d4b2dd778c32cf8fcf719913203f1cd39",
      "parents": [
        "7ff6e6f779960e1078a78b60a881571c04f52b9b"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue May 20 14:54:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 20 14:54:50 2008 -0700"
      },
      "message": "[VLAN]: Propagate selected feature bits to VLAN devices\n\nPropagate feature bits from the NETDEV_FEAT_CHANGE notifier. For now\nonly TSO is propagated for devices that announce their ability to\nsupport TSO in combination with VLAN accel by setting the NETIF_F_VLAN_TSO\nflag.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81d85346b3fcd8b3167eac8b5fb415a210bd4345",
      "tree": "5a5827b8f6d2e8b06f31ccb69ce94ce28ac51439",
      "parents": [
        "0e91796eb46e29edc791131c832a2232bcaed9dd"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue May 20 14:37:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 20 14:37:36 2008 -0700"
      },
      "message": "vlan: Correctly handle device notifications for layered VLAN devices\n\nCommit 30688a9 ([VLAN]: Handle vlan devices net namespace changing)\nchanged the device notifier to special-case notifications for VLAN\ndevices, effectively disabling state propagation to underlying VLAN\ndevices. This is needed for layered VLANs though, so restore the\noriginal behaviour.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "82524746c27fa418c250a56dd7606b9d3fc79826",
      "tree": "1801230b8fc2e436e722ac6f54fc53f1c112c310",
      "parents": [
        "32300751b4079cb5688453baa94711579d4285d5"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "fbuihuu@gmail.com",
        "time": "Mon May 12 21:21:05 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 19 10:01:37 2008 +0200"
      },
      "message": "rcu: split list.h and move rcu-protected lists into rculist.h\n\nMove rcu-protected lists from list.h into a new header file rculist.h.\n\nThis is done because list are a very used primitive structure all over the\nkernel and it\u0027s currently impossible to include other header files in this\nlist.h without creating some circular dependencies.\n\nFor example, list.h implements rcu-protected list and uses rcu_dereference()\nwithout including rcupdate.h.  It actually compiles because users of\nrcu_dereference() are macros.  Others RCU functions could be used too but\naren\u0027t probably because of this.\n\nTherefore this patch creates rculist.h which includes rcupdates without to\nmany changes/troubles.\n\nSigned-off-by: Franck Bui-Huu \u003cfbuihuu@gmail.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Josh Triplett \u003cjosh@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1d3faa390df9f009d7d76134b2aa1f07990945a4",
      "tree": "df9941f3f636633f46968f35a8fbfa1f030c31c6",
      "parents": [
        "0c89652a741cce71661d561c4466115c60c752d1"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Fri May 02 04:09:11 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 02 04:09:11 2008 -0700"
      },
      "message": "vlan: assign PDE-\u003edata before gluing PDE into /proc tree\n\nSimply replace proc_create and further data assigned with proc_create_data.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "30688a9a3e06d83d187658bd1c15f0e306bed38b",
      "tree": "11d1e2d7c87948025bd4d23e9001e56fe063dc5e",
      "parents": [
        "65d292a2ef2df66fd1ab83447afee71ef3720ded"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 00:57:01 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 00:57:01 2008 -0700"
      },
      "message": "[VLAN]: Handle vlan devices net namespace changing.\n\nWhen van device is moved to another namespace proc files,\nrelated to this device, should also change one.\n\nUse the netdev REGISTER and UNREGISTER event handlers for this.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "65d292a2ef2df66fd1ab83447afee71ef3720ded"
}
