)]}'
{
  "log": [
    {
      "commit": "a52cefc80fc92981592c688d1c8067442afe4cec",
      "tree": "ad119b5a4f5e4a257779c0ef324b5c9354c915f1",
      "parents": [
        "fba956c46a72f9e7503fd464ffee43c632307e31",
        "4acad72ded8e3f0211bd2a762e23c28229c61a51"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 14:06:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 14:06:58 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (42 commits)\n  [IPV6]: Consolidate the ip6_pol_route_(input|output) pair\n  [TCP]: Make snd_cwnd_cnt 32-bit\n  [TCP]: Update the /proc/net/tcp documentation\n  [NETNS]: Don\u0027t panic on creating the namespace\u0027s loopback\n  [NEIGH]: Ensure that pneigh_lookup is protected with RTNL\n  [INET]: kmalloc+memset -\u003e kzalloc in frag_alloc_queue\n  [ISDN]: Fix compile with CONFIG_ISDN_X25 disabled.\n  [IPV6]: Replace sk_buff ** with sk_buff * in input handlers\n  [SELINUX]: Update for netfilter -\u003ehook() arg changes.\n  [INET]: Consolidate the xxx_put\n  [INET]: Small cleanup for xxx_put after evictor consolidation\n  [INET]: Consolidate the xxx_evictor\n  [INET]: Consolidate the xxx_frag_destroy\n  [INET]: Consolidate xxx_the secret_rebuild\n  [INET]: Consolidate the xxx_frag_kill\n  [INET]: Collect common frag sysctl variables together\n  [INET]: Collect frag queues management objects together\n  [INET]: Move common fields from frag_queues in one place.\n  [TG3]: Fix performance regression on 5705.\n  [ISDN]: Remove local copy of device name to make sure renames work.\n  ...\n"
    },
    {
      "commit": "e9edda697ed7697f1288d0656570e49c47e204ae",
      "tree": "6d43d602b7e0eb98940a516e0e0d2c8fd1a7006a",
      "parents": [
        "88a15f2e28bd6a908b2925f1b76e70ef3a88297d"
      ],
      "author": {
        "name": "Alejandro Martinez Ruiz",
        "email": "alex@flawedcode.org",
        "time": "Mon Oct 15 03:37:43 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 15:57:38 2007 -0400"
      },
      "message": "netdev: convert non-obvious instances to use ARRAY_SIZE()\n\nThis will convert remaining non-obvious or naive calculations of array\nsizes to use ARRAY_SIZE() macro.\n\nSigned-off-by: Alejandro Martinez Ruiz \u003calex@flawedcode.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "114342f2d38439cb1a54f1f724fa38729b093c48",
      "tree": "890694d32845ac75e7e7cbf80358d4e256e5d078",
      "parents": [
        "faca94ffaed31528e2e859ee3c26d7d4dba6702f"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Mon Oct 15 02:12:26 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 15 12:26:38 2007 -0700"
      },
      "message": "[TG3]: Fix performance regression on 5705.\n\nA performance regression was introduced by the following commit:\n\n    commit ee6a99b539a50b4e9398938a0a6d37f8bf911550\n    Author: Michael Chan \u003cmchan@broadcom.com\u003e\n    Date:   Wed Jul 18 21:49:10 2007 -0700\n\n    [TG3]: Fix msi issue with kexec/kdump.\n\nIn making that change, the PCI latency timer and cache line size\nregisters were not restored after chip reset.  On the 5705, the\nlatency timer gets reset to 0 during chip reset and this causes\nvery poor performance.\n\nUpdate version to 3.84.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4fd7ab5949edfdf99be0ceef206c9d0b7f186318",
      "tree": "a99042048caea838d5e9af01c7d33307941099cd",
      "parents": [
        "782e3b3b3804c38d5130c7f21d7ec7bf6709023f"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Fri Oct 12 01:39:50 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Oct 12 02:01:20 2007 -0700"
      },
      "message": "[TG3]: Refine napi poll loop.\n\nNeed to read and store sblk-\u003estatus_tag before checking for more work.\nThe status tag is later written back to the hardware when enabling\ninterrupts to acknowledge how much work has been processed.  If the\norder is reversed, we can end up acknowledging work we haven\u0027t\nprocessed.\n\nWhen we detect tx error, it is more correct to return the rx\nwork_done so far instead of 0.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9ce768ead83216d394175c0a0d72bc527648c7d0",
      "tree": "b323b3c179bb194ed40277b26ae1ceb8035f2edc",
      "parents": [
        "a7b850eaa1110b1fcdc09fdfe89e792828e9b7aa"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Thu Oct 11 19:49:11 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Oct 11 22:17:20 2007 -0700"
      },
      "message": "[TG3]: Fix APE induced regression\n\nThis patch fixes a bug caused by the recent APE support added for 5761\ndevices.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f535763165331bb91277d7519b507fed22034e5",
      "tree": "1968a01affa1cce3a3199c455d1fe1ebdca3ff47",
      "parents": [
        "b08d6cb22c777c8c91c16d8e3b8aafc93c98cbd9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Oct 11 18:08:29 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Oct 11 18:08:29 2007 -0700"
      },
      "message": "[NET]: Fix NAPI completion handling in some drivers.\n\nIn order for the list handling in net_rx_action() to be\ncorrect, drivers must follow certain rules as stated by\nthis comment in net_rx_action():\n\n\t\t/* Drivers must not modify the NAPI state if they\n\t\t * consume the entire weight.  In such cases this code\n\t\t * still \"owns\" the NAPI instance and therefore can\n\t\t * move the instance around on the list at-will.\n\t\t */\n\nA few drivers do not do this because they mix the budget checks\nwith reading hardware state, resulting in crashes like the one\nreported by takano@axe-inc.co.jp.\n\nBNX2 and TG3 are taken care of here, SKY2 fix is from Stephen\nHemminger.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "414c66e00e9fb4572e38bd14e6cc570eae8c5a61",
      "tree": "d439583738fa70dc7193300248ec69df5bf13e94",
      "parents": [
        "0527ba358aa7594731e627842d493ae7f009dd57"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Wed Oct 10 18:03:56 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 10 18:03:56 2007 -0700"
      },
      "message": "[TG3]: Update version to 3.83\n\nUpdate to version 3.83.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0527ba358aa7594731e627842d493ae7f009dd57",
      "tree": "bb81d22c87aabc3e511b7a0ad6841ace4fda3476",
      "parents": [
        "9936bcf68a7e4d33f080bba9ee03d156c75c91ee"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Wed Oct 10 18:03:30 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 10 18:03:30 2007 -0700"
      },
      "message": "[TG3]: WOL defaults\n\nThis patch enables WOL by default if out-of-box WOL is enabled in the\nNVRAM.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9936bcf68a7e4d33f080bba9ee03d156c75c91ee",
      "tree": "304371f919a53ee6be7c7bf0b672078ab123eb71",
      "parents": [
        "0d3031d9e674cddd4c09731123ad252294cdf15f"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Wed Oct 10 18:03:07 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 10 18:03:07 2007 -0700"
      },
      "message": "[TG3]: Add 5761 support\n\nThis patch adds rest of the miscellaneous code required to support the\n5761.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d3031d9e674cddd4c09731123ad252294cdf15f",
      "tree": "fdcfc596ef8c5a996808cf1e701883c6383a7e3f",
      "parents": [
        "6b91fa02796292c322b20572188c74c1ef5bb02b"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Wed Oct 10 18:02:43 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 10 18:02:43 2007 -0700"
      },
      "message": "[TG3]: Add 5761 APE support\n\nThis patch adds support for the new APE block, present in 5761 chips.\nAPE stands for Application Processing Engine.  The primary function of\nthe APE is to process manageability traffic, such as ASF.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b91fa02796292c322b20572188c74c1ef5bb02b",
      "tree": "dee1577ca9507e256302dc6b33dfb057fb267481",
      "parents": [
        "227b60f5102cda4e4ab792b526a59c8cb20cd9f8"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Wed Oct 10 18:01:09 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 10 18:01:09 2007 -0700"
      },
      "message": "[TG3]: Add new 5761 NVRAM decode routines\n\nThis patch adds a new 5761-specific NVRAM strapping decode routine.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "405d8e5cbbe5aca20cc745046b70831bfc5e4a8f",
      "tree": "e699efc9a0368333bf509f24b5d112d64bab95fa",
      "parents": [
        "630e499724bda4ecb62b1f6652656e886f04197f"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Mon Oct 08 01:08:47 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:54:50 2007 -0700"
      },
      "message": "[TG3]: Fix ethtool autonegotiate flags.\n\nI recently noticed that when calling:\n\n# ethtool -s eth0 autoneg on\n\non a 5722 (though I\u0027m sure it\u0027s not specific to that card) that\nsubsequent checks of the cards status looked like this:\n\n# ethtool eth0\nSettings for eth0:\n        Supported ports: [ MII ]\n        Supported link modes:   10baseT/Half 10baseT/Full\n                                100baseT/Half 100baseT/Full\n                                1000baseT/Half 1000baseT/Full\n        Supports auto-negotiation: Yes\n        Advertised link modes:  10baseT/Half 10baseT/Full\n                                100baseT/Half 100baseT/Full\n                                1000baseT/Half 1000baseT/Full\n        Advertised auto-negotiation: No        \u003c---- This seems odd?!?\n        Speed: 1000Mb/s\n        Duplex: Full\n        Port: Twisted Pair\n        PHYAD: 1\n        Transceiver: internal\n        Auto-negotiation: on\n        Supports Wake-on: g\n        Wake-on: d\n        Current message level: 0x000000ff (255)\n        Link detected: yes\n\nI noticed that the following commit:\n\ncommit 3600d918d870456ea8e7bb9d47f327de5c20f3d6\nAuthor: Michael Chan \u003cmchan@broadcom.com\u003e\nDate:   Thu Dec 7 00:21:48 2006 -0800\n\n    [TG3]: Allow partial speed advertisement.\n\n    Honor the advertisement bitmask from ethtool.  We used to always\n    advertise the full capability when autoneg was set to on.\n\nchanged things around so that ethtool speed settings were strictly\nfollowed.  Unfortunately ethtool doesn\u0027t seem to set ADVERTISED_Autoneg\nin the advertising field (and maybe it shouldn\u0027t have to).  I\u0027d vote\nthat it should be fixed there, but it should also be added here just in\ncase someone using ethtool ioctls in their own application gets what\nthey want.\n\nAdding that flag in tg3_set_settings seemed like the most logical place\nsince the driver works fine on boot.  This is just an issue when\nre-enabling autonegotiation, so we should probably nip it there.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nAcked-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "182f6ed5188ccb46d1c54c3334943a54110d0118",
      "tree": "0145aa0e6650408c69880fb8c9f3c849e4175123",
      "parents": [
        "d30cdd28fba556143a4bb0d1a6097ebcc2891477"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sun Oct 07 23:29:06 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:54:46 2007 -0700"
      },
      "message": "[TG3]: Update version to 3.82.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d30cdd28fba556143a4bb0d1a6097ebcc2891477",
      "tree": "00a6548cbd6cdf13a88427c66c520456444c3a6b",
      "parents": [
        "795d01c523dd9f22acc70fe86ed30e605e00024d"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Sun Oct 07 23:28:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:54:45 2007 -0700"
      },
      "message": "[TG3]: Add 5784 and 5764 support.\n\nThis patch adds the support for 5784 and 5764 devices.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "795d01c523dd9f22acc70fe86ed30e605e00024d",
      "tree": "2ef37449a25c1ab68537fe4c2ddce4bb9fe8805a",
      "parents": [
        "9974a356b204833b32173210ca25edfdc24dcdd5"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Sun Oct 07 23:28:17 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:54:45 2007 -0700"
      },
      "message": "[TG3]: ASIC decoding and basic CPMU support.\n\nNewer products change the way the ASIC revision is obtained.  This patch\nimplements how the driver will extract the revision number.\n\nThis patch also adds preliminary CPMU support.  CPMU stands for Central\nPower Management Unit.  The CPMU\u0027s role is to put the chip into lower\npower states when the operating conditions allow it.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9974a356b204833b32173210ca25edfdc24dcdd5",
      "tree": "1b6a4d69ec46c01934fb5ff2cf4d76d57a103752",
      "parents": [
        "8658251dc3fed54b09991a2c5e0a7084755157d7"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Sun Oct 07 23:27:28 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:54:44 2007 -0700"
      },
      "message": "[TG3]: Walk PCI capability lists.\n\nNewer tg3 devices shuffle around the registers in PCI configuration\nspace.  This patch changes the way the driver accesses the PCI\ncapabilities registers.  Hardcoded register locations are replaced with\noffsets from pci_find_capability() return values.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9f2c0440d806e01968c3ed4def930a43be248ad",
      "tree": "b8e4668b0a4eab842fc33402e92b15f6c63cbc18",
      "parents": [
        "753f492093da7a40141bfe083073400f518f4c68"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Oct 03 18:07:32 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:45 2007 -0700"
      },
      "message": "[netdrvr] Stop using legacy hooks -\u003eself_test_count, -\u003eget_stats_count\n\nThese have been superceded by the new -\u003eget_sset_count() hook.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88d3aafdae5c5e1d2dd9489a5c8a24e29d335f2e",
      "tree": "272ce75c30a170420ac8bbfd679c3faed9f9d20a",
      "parents": [
        "09f75cd7bf13720738e6a196cc0107ce9a5bd5a0"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Sep 15 14:41:06 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:17 2007 -0700"
      },
      "message": "[ETHTOOL] Provide default behaviors for a few ethtool sub-ioctls\n\nFor the operations\n\tget-tx-csum\n\tget-sg\n\tget-tso\n\tget-ufo\nthe default ethtool_op_xxx behavior is fine for all drivers, so we\npermit op\u003d\u003dNULL to imply the default behavior.\n\nThis provides a more uniform behavior across all drivers, eliminating\nethtool(8) \"ioctl not supported\" errors on older drivers that had\nnot been updated for the latest sub-ioctls.\n\nThe ethtool_op_xxx() functions are left exported, in case anyone\nwishes to call them directly from a driver-private implementation --\na not-uncommon case.  Should an ethtool_op_xxx() helper remain unused\nfor a while, except by net/core/ethtool.c, we can un-export it at a\nlater date.\n\n[ Resolved conflicts with set/get value ethtool patch... -DaveM ]\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10d024c1b2fd58af8362670d7d6e5ae52fc33353",
      "tree": "dbfb03c539986e2c1270385eb0083aaf0dfca8ab",
      "parents": [
        "596c5c97431eab8465739c169401ea611127b9ad"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Mon Sep 17 13:11:17 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:13 2007 -0700"
      },
      "message": "[NET]: Nuke SET_MODULE_OWNER macro.\n\nIt\u0027s been a useless no-op for long enough in 2.6 so I figured it\u0027s time to\nremove it.  The number of people that could object because they\u0027re\nmaintaining unified 2.4 and 2.6 drivers is probably rather small.\n\n[ Handled drivers added by netdev tree and some missed IRDA cases... -DaveM ]\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab0049b4a2f66074dff6af851b35bba888f53972",
      "tree": "1a52559d41e77ec216f53d5bc3f6e42e335f0eca",
      "parents": [
        "50f17787e9b0222ce65cc831407c3ba4790db3ff"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Thu Sep 06 20:42:14 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:00 2007 -0700"
      },
      "message": "[TG3]: remove sparse warnings\n\nRemoved sparse warnings from tg3 driver.  The new logic seems fine (I\ndon\u0027t immediately see where we are running over values for any of the\nvariables that need to be saved).\n\nThis patch compiles fine and I\u0027m currently using a tg3 with the patched\ndriver to post this patch as a basic proof of concept.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bea3348eef27e6044b6161fd04c3152215f96411",
      "tree": "f0990b263e5ce42505d290a4c346fe990bcd4c33",
      "parents": [
        "dde4e47e8fe333a5649a3fa0e7db1fa7c08d6158"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Wed Oct 03 16:41:36 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:47:45 2007 -0700"
      },
      "message": "[NET]: Make NAPI polling independent of struct net_device objects.\n\nSeveral devices have multiple independant RX queues per net\ndevice, and some have a single interrupt doorbell for several\nqueues.\n\nIn either case, it\u0027s easier to support layouts like that if the\nstructure representing the poll is independant from the net\ndevice itself.\n\nThe signature of the -\u003epoll() call back goes from:\n\n\tint foo_poll(struct net_device *dev, int *budget)\n\nto\n\n\tint foo_poll(struct napi_struct *napi, int budget)\n\nThe caller is returned the number of RX packets processed (or\nthe number of \"NAPI credits\" consumed if you want to get\nabstract).  The callee no longer messes around bumping\ndev-\u003equota, *budget, etc. because that is all handled in the\ncaller upon return.\n\nThe napi_struct is to be embedded in the device driver private data\nstructures.\n\nFurthermore, it is the driver\u0027s responsibility to disable all NAPI\ninstances in it\u0027s -\u003estop() device close handler.  Since the\nnapi_struct is privatized into the driver\u0027s private data structures,\nonly the driver knows how to get at all of the napi_struct instances\nit may have per-device.\n\nWith lots of help and suggestions from Rusty Russell, Roland Dreier,\nMichael Chan, Jeff Garzik, and Jamal Hadi Salim.\n\nBug fixes from Thomas Graf, Roland Dreier, Peter Zijlstra,\nJoseph Fannin, Scott Wood, Hans J. Koch, and Michael Chan.\n\n[ Ported to current tree and all drivers converted.  Integrated\n  Stephen\u0027s follow-on kerneldoc additions, and restored poll_list\n  handling to the old style to fix mutual exclusion issues.  -DaveM ]\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2fbe43f6f631dd7ce19fb1499d6164a5bdb34568",
      "tree": "5de4f64203d39079958e8637aea0904ae42cb4e5",
      "parents": [
        "0d4cbb5e7f60b2f1a4d8b7f6ea4cc264262c7a01"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Sep 06 12:04:29 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@kimchee.(none)",
        "time": "Tue Sep 11 10:28:44 2007 +0200"
      },
      "message": "[TG3]: Workaround MSI bug on 5714/5780.\n\nA hardware bug was revealed after a recent PCI MSI patch was made to\nalways disable legacy INTX when enabling MSI.  The 5714/5780 chips\nwill not generate MSI when INTX is disabled, causing MSI failure\nmessages to be reported, and another patch was made to workaround the\nproblem by disabling MSI on ServerWorks HT1000 bridge chips commonly\nfound with the 5714.\n\nWe workaround this chip bug by enabling INTX after we enable MSI and\nafter we resume from suspend.\n\nUpdate version to 3.81.\n\nThis problem was discovered by David Miller.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nAcked-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e0c95fd648c0d3175b9ff2232597d0b02eb7d46",
      "tree": "4678031803e9848c5ff282e66ebcd3c6474ae144",
      "parents": [
        "d4ac2477fad0f2680e84ec12e387ce67682c5c13"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Fri Aug 03 20:56:54 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 03 20:56:54 2007 -0700"
      },
      "message": "[TG3]: Fix suspend/resume problem.\n\nJoachim Deguara \u003cjoachim.deguara@amd.com\u003e reported that tg3 devices\nwould not resume properly if the device was shutdown before the system\nwas suspended.  In such scenario where the netif_running state is 0,\ntg3_suspend() would not save the PCI state and so the memory enable bit\nand bus master enable bit would be lost.\n\nWe fix this by always saving and restoring the PCI state in\ntg3_suspend() and tg3_resume() regardless of netif_running() state.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "313674afa8fdced2fe79f50f38e1c387b63d8790",
      "tree": "40b14cab2f48af45615dacf35c93a268c42b7f9a",
      "parents": [
        "61a44b9c4b20d40c41fd1b70a4ceb13b75ea79a4"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Jul 31 14:00:29 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 31 14:00:29 2007 -0700"
      },
      "message": "[NET]: ethtool_perm_addr only has one implementation\n\nAll drivers implement ethtool get_perm_addr the same way -- by calling\nthe generic function.  So we can inline the generic function into the\ncaller and avoid going through the drivers.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee6a99b539a50b4e9398938a0a6d37f8bf911550",
      "tree": "51547e0b9c299be15cc3f54ff3c33b6e3e9c346c",
      "parents": [
        "7dc12d6dd6cc1aa489c6f3e34a75e8023c945da8"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Jul 18 21:49:10 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 18 21:49:10 2007 -0700"
      },
      "message": "[TG3]: Fix msi issue with kexec/kdump.\n\nTina Yang \u003ctina.yang@oracle.com\u003e discovered an MSI related problem\nwhen doing kdump.  The problem is that the kexec kernel is booted\nwithout going through system reset, and as a result, MSI may already\nbe enabled when tg3_init_one() is called.  tg3_init_one() calls\npci_save_state() which will save the stale MSI state.  Later on in\ntg3_open(), we call pci_enable_msi() to reconfigure MSI on the chip\nbefore we reset the chip.  After chip reset, we call\npci_restore_state() which will put the stale MSI address/data back\nonto the chip.\n\nThis is no longer a problem in the latest kernel because\npci_restore_state() has been changed to restore MSI state from\ninternal data structures which will guarantee restoring the proper\nMSI state.\n\nBut I think we should still fix it.  Our save and restore sequence\ncan still cause very subtle problems down the road.  The fix is to\nhave our own functions save and restore precisely what we need.  We\nalso change it to save and restore state inside tg3_chip_reset() in a\nmore straight forward way.\n\nThanks to Tina for helping to test and debug the problem.\n\n[ Bump driver version and release date. -DaveM ]\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6460d948f3ebf7d5040328a60a0ab7221f69945b",
      "tree": "d7c2a7eda9f20a03698df32bdc4677ca0c2479d5",
      "parents": [
        "febca281f677a775c61cd0572c2f35e4ead9e7d5"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sat Jul 14 19:07:52 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 19:07:52 2007 -0700"
      },
      "message": "[NET]: Add ethtool support for NETIF_F_IPV6_CSUM devices.\n\nAdd ethtool utility function to set or clear IPV6_CSUM feature flag.\nModify tg3.c and bnx2.c to use this function when doing ethtool -K\nto change tx checksum.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21ba0f88ae56da82a3a15fe54d729208b64c4f4b",
      "tree": "17ce67f276fe3ea7284c3dc730bdd6a2ec7dfe2f",
      "parents": [
        "dc690d8ef842b464f1c429a376ca16cb8dbee6ae",
        "36e235901f90fb83215be43cbd8f1ca14661ea40"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 12 13:40:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 12 13:40:57 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (34 commits)\n  PCI: Only build PCI syscalls on architectures that want them\n  PCI: limit pci_get_bus_and_slot to domain 0\n  PCI: hotplug: acpiphp: avoid acpiphp \"cannot get bridge info\" PCI hotplug failure\n  PCI: hotplug: acpiphp: remove hot plug parameter write to PCI host bridge\n  PCI: hotplug: acpiphp: fix slot poweroff problem on systems without _PS3\n  PCI: hotplug: pciehp: wait for 1 second after power off slot\n  PCI: pci_set_power_state(): check for PM capabilities earlier\n  PCI: cpci_hotplug: Convert to use the kthread API\n  PCI: add pci_try_set_mwi\n  PCI: pcie: remove SPIN_LOCK_UNLOCKED\n  PCI: ROUND_UP macro cleanup in drivers/pci\n  PCI: remove pci_dac_dma_... APIs\n  PCI: pci-x-pci-express-read-control-interfaces cleanups\n  PCI: Fix typo in include/linux/pci.h\n  PCI: pci_ids, remove double or more empty lines\n  PCI: pci_ids, add atheros and 3com_2 vendors\n  PCI: pci_ids, reorder some entries\n  PCI: i386: traps, change VENDOR to DEVICE\n  PCI: ATM: lanai, change VENDOR to DEVICE\n  PCI: Change all drivers to use pci_device-\u003erevision\n  ...\n"
    },
    {
      "commit": "15028aad00ddf241581fbe74a02ec89cbb28d35d",
      "tree": "7f304a08c3575b7739a6b8e76ea045428e38a0c0",
      "parents": [
        "70b65a2d628d2e66bbf044bb764be64949f3580c"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Jul 11 19:49:22 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:49:22 2007 -0700"
      },
      "message": "[TG3]: Update version to 3.78.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "70b65a2d628d2e66bbf044bb764be64949f3580c",
      "tree": "15f39fbf9e6b216bf8d4e1f961a54deb5203ac29",
      "parents": [
        "9ef8ca99749784644602535691f8cf201ee2a225"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Wed Jul 11 19:48:50 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:48:50 2007 -0700"
      },
      "message": "[TG3]: Add missing NVRAM strapping.\n\nThis patch adds a missing NVRAM strapping for 5755 devices.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9ef8ca99749784644602535691f8cf201ee2a225",
      "tree": "7836b055d04f88203b8cf563272696d6fe972e95",
      "parents": [
        "e8f3f6cad7e423253090887bc4afe7bc844162da"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Wed Jul 11 19:48:29 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:48:29 2007 -0700"
      },
      "message": "[TG3]: Enable auto MDI.\n\nThis patch adds automatic MDI crossover support when autonegotiation is\nturned off.  Automatic MDI crossover allows link to be established\nwithout the use of a crossover cable.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e8f3f6cad7e423253090887bc4afe7bc844162da",
      "tree": "78ffc0e193200e90685bf0137bc97153651e2009",
      "parents": [
        "469665459d26da8d0b46c70d070da1e192e48e46"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Wed Jul 11 19:47:55 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:47:55 2007 -0700"
      },
      "message": "[TG3]: Fix the polarity bit.\n\nFor most pre-5705 devices, multiple link interrupts were being generated\nfor a single physical link change.  The source of the interrupts was\ndetermined to be unnecessary toggling of the MAC link polarity bit.\n\nThis patch changes the way the link polarity bit gets configured.  Where\npossible, code that dynamically configures the bit in response to link\nchanges has been replaced by code that configures the bit once during\ninitialization time and then leaves the bit alone.\n\nFor correctness, this patch also limits the use of the bit to those\ndevices where it is defined, namely devices before the 5705.  This patch\nalso corrects the link polarity configurations for 5700 devices when\npaired against a bcm5411 phy.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "469665459d26da8d0b46c70d070da1e192e48e46",
      "tree": "e64f86c93ad9350c7e042672de12fda26592249a",
      "parents": [
        "db3d99c090e0cdb34b1274767e062bfddbb384bc"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Jul 11 19:47:19 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:47:19 2007 -0700"
      },
      "message": "[TG3]: Fix irq_sync race condition.\n\nGagan Arneja \u003cgaagaan@gmail.com\u003e pointed out that tg3_reset_task()\ncould potentially race with another thread calling tg3_full_lock()\nsuch as the ethtool_set_xxx() functions.  This may trigger the\nBUG_ON() in tg3_irq_quiesce() or cause the irq_sync flag to be out-\nof-sync.\n\nI think the easiest way to fix this is to get the tp-\u003elock first\nbefore setting the irq_sync flag.  This is safe to do because the\ntp-\u003elock is never grabbed by the irq handler.  This change will\nguarantee that the irq_sync flag updates will be serialized.  We also\nhave to change one spot to call tg3_netif_start() (which clears the\nirq_sync flag) before releasing the tp-\u003elock.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "44c10138fd4bbc4b6d6bff0873c24902f2a9da65",
      "tree": "6e16d3ec80c87490dc743f72da086356f2906ace",
      "parents": [
        "b8a3a5214d7cc115f1ca3a3967b7229d97c46f4a"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke-jan.h.kok@intel.com",
        "time": "Fri Jun 08 15:46:36 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 11 16:02:10 2007 -0700"
      },
      "message": "PCI: Change all drivers to use pci_device-\u003erevision\n\nInstead of all drivers reading pci config space to get the revision\nID, they can now use the pci_device-\u003erevision member.\n\nThis exposes some issues where drivers where reading a word or a dword\nfor the revision number, and adding useless error-handling around the\nread. Some drivers even just read it for no purpose of all.\n\nIn devices where the revision ID is being copied over and used in what\nappears to be the equivalent of hotpath, I have left the copy code\nand the cached copy as not to influence the driver\u0027s performance.\n\nCompile tested with make all{yes,mod}config on x86_64 and i386.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\nAcked-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d212f87b068c9d72065ef579d85b5ee6b8b59381",
      "tree": "a194d5c667c277c7ea5392c9cf97857a0cd1d321",
      "parents": [
        "d3d6dd3adaaad71eae20902ed81808a66a40a5b9"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Wed Jun 27 00:47:37 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:52 2007 -0700"
      },
      "message": "[NET]: IPV6 checksum offloading in network devices\n\nThe existing model for checksum offload does not correctly handle\ndevices that can offload IPV4 and IPV6 only. The NETIF_F_HW_CSUM flag\nimplies device can do any arbitrary protocol.\n\nThis patch:\n * adds NETIF_F_IPV6_CSUM for those devices\n * fixes bnx2 and tg3 devices that need it\n * add NETIF_F_IPV6_CSUM to ipv6 output (incl GSO)\n * fixes assumptions about NETIF_F_ALL_CSUM in nat\n * adjusts bridge union of checksumming computation\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "007a880d627aee0e854e793099bb33d0c1130678",
      "tree": "1421abde7c9ff2793c64225d49452b70ed7ee8c0",
      "parents": [
        "1c92b4e50ef926d1e26fcc056a520e4a7d12478c"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu May 31 14:49:51 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Jun 03 18:08:41 2007 -0700"
      },
      "message": "[TG3]: Fix link problem on Dell\u0027s onboard 5906.\n\nThe bug is caused by code that always set\n(TG3_FLAG_USE_MI_INTERRUPT | TG3_FLAG_USE_LINKCHG_REG) on all Dell\u0027s\nonboard devices.  With these 2 flags set, the link status is polled\nby tg3_timer() and will only work when the PHY is set up to interrupt\nthe MAC on link changes.  This breaks 5906 because the 5906 PHY does\nnot support TG3_FLAG_USE_MI_INTERRUPT the same as other PHYs.\n\nFor correctness, only Dell\u0027s onboard 5701 needs these 2 flags to be\nset.  This change will fix the 5906 problem and will change other\nDell devices except 5700 and 5701 to use the more efficient\ninterrupt-driven link changes.\n\nUpdate version to 3.77.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25805dcf9d83098cf5492117ad2669cd14cc9b24",
      "tree": "741134040babb0c2bce52d054fa5f08cf530449d",
      "parents": [
        "cb434e380d58d3956c75dc5ead00eced599b9d16"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Jun 01 09:44:01 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Jun 03 11:44:20 2007 -0400"
      },
      "message": "network drivers: eliminate unneeded kill_vid code\n\nMany drivers had code that did kill_vid, but they weren\u0027t doing vlan\nfiltering. With new API the stub is unneeded unless device sets\nNETIF_F_HW_VLAN_FILTER.\n\nBad habit: I couldn\u0027t resist fixing a couple of nearby style things\nin acenic, and forcedeth.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "28e53bddf814485699a4142bc056fd37d4e11dd4",
      "tree": "5182090c4cc2186eedbda3cb90ed82a2836f6ff6",
      "parents": [
        "5830c5902138f80b0a097b797200c739466beedd"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed May 09 02:34:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:53 2007 -0700"
      },
      "message": "unify flush_work/flush_work_keventd and rename it to cancel_work_sync\n\nflush_work(wq, work) doesn\u0027t need the first parameter, we can use cwq-\u003ewq\n(this was possible from the very beginnig, I missed this).  So we can unify\nflush_work_keventd and flush_work.\n\nAlso, rename flush_work() to cancel_work_sync() and fix all callers.\nPerhaps this is not the best name, but \"flush_work\" is really bad.\n\n(akpm: this is why the earlier patches bypassed maintainers)\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e,\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2b3cb2e778811a1df99e37fd7c359837501ab103",
      "tree": "736b6e149fababf75b1bd0d94a316b790e7f59ae",
      "parents": [
        "19a75d83ffeab004cfcfac64024ad3997bac7220"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed May 09 02:33:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:51 2007 -0700"
      },
      "message": "tg3: use flush_work_keventd()\n\nConvert tg3 over to flush_work_keventd().  Remove nasty now-unneeded deadlock\navoidance logic.\n\n(akpm: bypassed maintainers, sorry.  There are other patches which depend on\nthis)\n\nCc: \"Maciej W. Rozycki\" \u003cmacro@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Michael Chan \u003cmchan@broadcom.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "823036ed3291e30f32a905c94db821cd75524b59",
      "tree": "107b85d908271df83ae820016f9b3ff39794d50d",
      "parents": [
        "c04cb34725fdcf5fdb4135d8fdfaf6f318f10e99"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Mon May 07 00:26:30 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 00:26:30 2007 -0700"
      },
      "message": "[TG3]: Update version and reldate.\n\nUpdate version to 3.76.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c04cb34725fdcf5fdb4135d8fdfaf6f318f10e99",
      "tree": "e4194a9f1a9914a25590dab0ca60285b29c9ac15",
      "parents": [
        "8ed5d97e5e0be0fb1aebad16f4c464613a0e472d"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Mon May 07 00:26:15 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 00:26:15 2007 -0700"
      },
      "message": "[TG3]: Eliminate spurious interrupts.\n\nSpurious interrupts are often encountered especially on systems\nusing the 8259 PIC mode.  This is because the I/O write to deassert\nthe interrupt is posted and won\u0027t get to the chip immediately.  As\na result, the IRQ may remain asserted after the IRQ handler exits,\ncausing spurious interrupts.\n\nFlush the interrupt mailbox in non-MSI handlers to de-assert the\nIRQ immediately.  This seems to be the most straight forward approach\nafter discussion with Jeff Garzik and David Miller.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ed5d97e5e0be0fb1aebad16f4c464613a0e472d",
      "tree": "4088096e3fbc02e671980db1a2f26e1068dec532",
      "parents": [
        "15700770ef7c5d12e2f1659d2ddbeb3f658d9f37"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Mon May 07 00:25:49 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 00:25:49 2007 -0700"
      },
      "message": "[TG3]: Add ASPM workaround.\n\nThis patch adds workaround to fix performance problems caused by slow\nPCIE L1-\u003eL0 transitions on ICH8 platforms.\n\nChanged all magic numbers to constants as suggested by Jeff Garzik.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7544b0972c1fc1a0e6c54baa1f44c81019743daa",
      "tree": "90c8ca52ab4bb01b83c51f2c6ea91b1a6854a1a1",
      "parents": [
        "98efd8a6be79550767f5a9be6f3db8e7e9b747da"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sat May 05 13:08:32 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 05 13:08:32 2007 -0700"
      },
      "message": "[TG3]: Add TG3_FLAG_SUPPORT_MSI flag.\n\nAnd fix up the code to always allow MSI on 5714 A2.\n\nCall tg3_find_peer() earlier because we need that information before\nwe can determine whether we can set TG3_FLAG_SUPPORT_MSI or not.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "98efd8a6be79550767f5a9be6f3db8e7e9b747da",
      "tree": "c2117eb3b6099333594245d81a8d192912f18706",
      "parents": [
        "5cf64b8a7399999439f0d6748babb1ccb6bcad7c"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Sat May 05 12:47:25 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 05 12:47:25 2007 -0700"
      },
      "message": "[TG3]: Eliminate the TG3_FLAG_5701_REG_WRITE_BUG flag.\n\nThis patch removes the use of the TG3_FLAG_5701_REG_WRITE_BUG flag.\nIt\u0027s logic is only used to set a function pointer and thus the\nlogic can be collapsed and the flag removed.\n\n[ Comment tidy by Christoph Hellwig. -DaveM ]\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\n"
    },
    {
      "commit": "5cf64b8a7399999439f0d6748babb1ccb6bcad7c",
      "tree": "6357ac40ddf95f171ed8c5f9bdae2ad8755981f1",
      "parents": [
        "986e0aeb9ae09127b401c3baa66f15b7a31f354c"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sat May 05 12:11:21 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 05 12:11:21 2007 -0700"
      },
      "message": "[TG3]: Eliminate the TG3_FLAG_GOT_SERDES_FLOWCTL flag.\n\nThis flag does not do anything useful.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "986e0aeb9ae09127b401c3baa66f15b7a31f354c",
      "tree": "b2be088a6831cdc65668cf6788e39b91ca36291b",
      "parents": [
        "a85feb8cfc53c08b6f0d770f930ca9cc6885f414"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sat May 05 12:10:20 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 05 12:10:20 2007 -0700"
      },
      "message": "[TG3]: Remove reset during MAC address changes.\n\nThe reset was added a while back so that ASF could re-init whatever\nMAC address it wanted to use after the MAC address was changed.\nInstead of resetting, we can just keep MAC address 1 unchanged during\nMAC address changes if MAC address 1 is different from MAC address 0.\n\nThis fixes 2 problems:\n\n1. Bonding calls set_mac_address in contexts that cannot sleep.\nIt no longer sleeps with the chip reset removed.\n\n2. When ASF shares the same MAC address as the NIC, it needs to\nalways do that even when the MAC address is changed. \n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a85feb8cfc53c08b6f0d770f930ca9cc6885f414",
      "tree": "f5806132fb6e60fd7c68a281680e5f05014d5933",
      "parents": [
        "aaf84465fc994e9a840a8c0c6fa842b54cdb3426"
      ],
      "author": {
        "name": "Gary Zambrano",
        "email": "zambrano@broadcom.com",
        "time": "Sat May 05 11:52:19 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 05 11:52:19 2007 -0700"
      },
      "message": "[TG3]: WoL fixes.\n\nChange TG3_FLAG_SERDES_WOL_CAP to TG3_FLAG_WOL_CAP to make it easier\nto manage WoL.  This flag is now used consistently during ethtool WoL\nsetup and power setting changes.\n\nSigned-off-by: Gary Zambrano \u003czambrano@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aaf84465fc994e9a840a8c0c6fa842b54cdb3426",
      "tree": "a764093806574e4e0416b5ee775d096bc9cf7f13",
      "parents": [
        "989a9d239c5b9ae6053aed6e3819304930baf27d"
      ],
      "author": {
        "name": "Gary Zambrano",
        "email": "zambrano@broadcom.com",
        "time": "Sat May 05 11:51:45 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 05 11:51:45 2007 -0700"
      },
      "message": "[TG3]: Clear GPIO mask before storing.\n\nThe GPIO settings may change during reset and so the stored values in\ntp-\u003egrc_local_ctrl should be cleared first.\n\nSigned-off-by: Gary Zambrano \u003czambrano@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "989a9d239c5b9ae6053aed6e3819304930baf27d",
      "tree": "d7f14420cea59d0f27ec93ea83191b4ce5ec8a48",
      "parents": [
        "c13e3713857d5ea572cd67f3d5749100b1963ad2"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Sat May 05 11:51:05 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 05 11:51:05 2007 -0700"
      },
      "message": "[TG3]: Improve NVRAM sizing.\n\nThis patch changes the NVRAM sizing procedure so that the driver can\ntake advantage of devices with 1:1 NVRAM strapping configurations.  This\nis useful in cases where the traditional NVRAM sizing method fails.  In\nthe event that the flash size cannot be determined, the largest known\nNVRAM size is used.  The patch also removes support for 5755 NVRAM\ndevices that are not supported by Broadcom and adds explicit sizing for\nthis device.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c13e3713857d5ea572cd67f3d5749100b1963ad2",
      "tree": "99484a1ac84b083a58a60e9bcb3dcbeda44a6988",
      "parents": [
        "64a327a7029d3860ddf6a024816afa9e6673eb57"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Sat May 05 11:50:04 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 05 11:50:04 2007 -0700"
      },
      "message": "[TG3]: Fix TSO bugs.\n\n1. Remove the check for skb-\u003elen greater than MTU when doing TSO.\nWhen the destination has a smaller MSS than the source, a TSO packet\nmay be smaller than the MTU and we still need to process it as a TSO\npacket.\n\n2. On 5705A3 devices with TSO enabled, the DMA engine can hang due to a\nhardware bug.  This patch avoids the hanging condition by reducing the\nDMA burst size.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0278ef8b484a71917bd4f03a763285cdaac10954",
      "tree": "8f6f7bf2e2a85b4643dfe3d0475811ce858fb4fc",
      "parents": [
        "15c54033964a943de7b0763efd3bd0ede7326395",
        "cd9ad58d4061494e7fdd70ded7bcf2418daf356a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Apr 27 09:29:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Apr 27 09:29:04 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: (67 commits)\n  [SCSI] SUNESP: Complete driver rewrite to version 2.0\n  [SPARC64]: Convert PCI over to generic struct iommu/strbuf.\n  [SPARC]: device_node name constification fallout\n  [SPARC64]: Convert SBUS over to generic iommu/strbuf structs.\n  [SPARC64]: Add generic iommu and strbuf structs to iommu.h\n  [SPARC64]: Consolidate {sbus,pci}_iommu_arena.\n  [SPARC]: Make device_node name and type const\n  [SPARC64]: constify some paramaters of OF routines\n  [TIGON3]: of_get_property() returns const.\n  [SPARC64]: Fix PCI rework to adhere to of_get_property() const return.\n  [SPARC64]: Document and fix calculation of pages_avail.\n  [SPARC64]: Make sure pbm-\u003eprom_node is setup easly enough in psycho.c\n  [SPARC64]: Use bootmem_bootmap_pages() in choose_bootmap_pfn().\n  [SPARC64]: Add proper header file extern for cmdline_memory_size.\n  [SPARC64]: Kill sparc_ultra_dump_{i,d}tlb()\n  [SPARC64]: Use DECLARE_BITMAP and BITS_TO_LONGS in mm/init.c\n  [SPARC64]: Give move verbose show_mem() output just like i386.\n  [SPARC64]: Mark show_mem() printk\u0027s with KERN_INFO.\n  [SPARC64]: Kill kvaddr_to_phys() and friends.\n  [SPARC64]: Privatize sun4u_get_pte() and fix name.\n  ...\n"
    },
    {
      "commit": "374d4cac6283469f101282ca83ee008368bd8350",
      "tree": "c46a253ba181771cfa18f22674e91da0722ce5fb",
      "parents": [
        "a165b4205e0097c7544ec3c59522a3b20ec14eb1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Mar 29 01:57:57 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Apr 26 01:55:38 2007 -0700"
      },
      "message": "[TIGON3]: of_get_property() returns const.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "49b6e95ff6d05722bcf7a52b00454566ce0c44eb",
      "tree": "375ebafb01d540fa6eccf8ee7ff4c9891fa73295",
      "parents": [
        "6f85a8597d1d0d8ceeec5a82881c6ddf5cfb45e5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Mar 29 01:38:42 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Apr 26 01:54:53 2007 -0700"
      },
      "message": "[TG3]: Use pci_device_to_OF_node() on sparc.\n\nAnd use CONFIG_SPARC instead of CONFIG_SPARC64 as the\ntest.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ccf0dec6fcadb4e1c877b9bafb031a6bdb7112b9",
      "tree": "98617d025f167ad05bb126f0982841ce277ee3af",
      "parents": [
        "6a23acf3905287eb952a6f1dbbc8fb3e4eeae2f6"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Mar 29 00:49:54 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Apr 26 01:54:27 2007 -0700"
      },
      "message": "[SPARC/64] constify of_get_property return: drivers\n\nThe only unfortunate bit here is that the name field of struct map_info\nis not const, so for now we put a cast on the assignment of it.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d626f62b11e00c16e81e4308ab93d3f13551812a",
      "tree": "fac4af6ced853755e12fc709d55f0c2bec51265d",
      "parents": [
        "2a123b86e2b242a4a6db990d2851d45e192f88e5"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 27 18:55:52 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:23 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_copy_from_linear_data{_offset}\n\nTo clearly state the intent of copying from linear sk_buffs, _offset being a\noverly long variant but interesting for the sake of saving some bytes.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "aa8223c7bb0b05183e1737881ed21827aa5b9e73",
      "tree": "05c9832326edfeb878472f15cf8133ed9f014cdf",
      "parents": [
        "ab6a5bb6b28a970104a34f0f6959b73cf61bdc72"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 10 21:04:22 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:26 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce tcp_hdr(), remove skb-\u003eh.th\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab6a5bb6b28a970104a34f0f6959b73cf61bdc72",
      "tree": "54cfa7d4fe00d0c28a60022b075afc0856d6fc2b",
      "parents": [
        "88c7664f13bd1a36acb8566b93892a4c58759ac6"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Mar 18 17:43:48 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:24 2007 -0700"
      },
      "message": "[TCP]: Introduce tcp_hdrlen() and tcp_optlen()\n\nThe ip_hdrlen() buddy, created to reduce the number of skb-\u003eh.th-\u003e uses and to\navoid the longer, open coded equivalent.\n\nDitched a no-op in bnx2 in the process.\n\nI wonder if we should have a BUG_ON(skb-\u003eh.th-\u003edoff \u003c 5) in tcp_optlen()...\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eddc9ec53be2ecdbf4efe0efd4a83052594f0ac0",
      "tree": "4a38ab4dbd9d61fdf5a5ea6ed61463e0b9e33ba7",
      "parents": [
        "e023dd643798c4f06c16466af90b4d250e4b8bd7"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Apr 20 22:47:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:10 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce ip_hdr(), remove skb-\u003enh.iph\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9bdd4b5257406b0608385d19c40b5511decf4f6",
      "tree": "fe5319c322a11c0b00e7ef0473762a8d1961da83",
      "parents": [
        "0272ffc46f81a4bbbf302ba093c737e969c5bb55"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Mar 12 20:09:15 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:07 2007 -0700"
      },
      "message": "[IP]: Introduce ip_hdrlen()\n\nFor the common sequence \"skb-\u003enh.iph-\u003eihl * 4\", removing a good number of open\ncoded skb-\u003enh.iph uses, now to go after the rest...\n\nJust out of curiosity, here are the idioms found to get the same result:\n\nskb-\u003enh.iph-\u003eihl \u003c\u003c 2\nskb-\u003enh.iph-\u003eihl\u003c\u003c2\nskb-\u003enh.iph-\u003eihl * 4\nskb-\u003enh.iph-\u003eihl*4\n(skb-\u003enh.iph)-\u003eihl * sizeof(u32)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b8fa2f3a82069304acac1f9e957d491585f4f49a",
      "tree": "8fc4023a131d17fc74835bf0c955280e35a3afdf",
      "parents": [
        "161980f4c6b846625efe6227420175cb41477de3"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Fri Apr 06 17:35:37 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 06 17:35:37 2007 -0700"
      },
      "message": "[TG3]: Fix crash during tg3_init_one().\n\nThe driver will crash when the chip has been initialized by EFI before\ntg3_init_one().  In this case, the driver will call tg3_chip_reset()\nbefore allocating consistent memory.\n\nThe bug is fixed by checking for tp-\u003ehw_status before accessing it\nduring tg3_chip_reset().\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "20bd7dd4cabfd0d6b6b70b99e88df901480a9841",
      "tree": "d3982e64e78aed717d158c426a79a156333db9e6",
      "parents": [
        "d18edcb212d7dc864a59e6aa9b6b9826299e0210"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sat Mar 24 20:58:51 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Mar 25 18:48:09 2007 -0700"
      },
      "message": "[TG3]: Update version and reldate.\n\nUpdate version to 3.75.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d18edcb212d7dc864a59e6aa9b6b9826299e0210",
      "tree": "341955faabd7db53af392f4bdbd856dcbe6f8d11",
      "parents": [
        "1c46ae05d96f77f349ae60c799acb6ac6ddf07a8"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sat Mar 24 20:57:11 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Mar 25 18:48:08 2007 -0700"
      },
      "message": "[TG3]: Exit irq handler during chip reset.\n\nOn most tg3 chips, the memory enable bit in the PCI command register\ngets cleared during chip reset and must be restored before accessing\nPCI registers using memory cycles.  The chip does not generate\ninterrupt during chip reset, but the irq handler can still be called\nbecause of irq sharing or irqpoll.  Reading a register in the irq\nhandler can cause a master abort in this scenario and may result in a\ncrash on some architectures.\n\nUse the TG3_FLAG_CHIP_RESETTING flag to tell the irq handler to exit\nwithout touching any registers.  The checking of the flag is in the\n\"slow\" path of the irq handler and will not affect normal performance.\nThe msi handler is not shared and therefore does not require checking\nthe flag.\n\nThanks to Bernhard Walle \u003cbwalle@suse.de\u003e for reporting the problem.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c46ae05d96f77f349ae60c799acb6ac6ddf07a8",
      "tree": "74179101bea9c624cbb7cd96d3b366c21743614c",
      "parents": [
        "f11e6659ce9058928d73ff440f9b40a818d628ab"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sat Mar 24 20:54:37 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Mar 25 18:48:06 2007 -0700"
      },
      "message": "[TG3]: Eliminate the unused TG3_FLAG_SPLIT_MODE flag.\n\nThis flag to support multiple PCIX split completions was never used\nbecause of hardware bugs.  This will make room for a new flag.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c15bdec5c38f4ccf73ef2585fc80a6164de9554",
      "tree": "c99084e96238eb9ce40e8d9d90e0097c4e92111d",
      "parents": [
        "b5284e5aa94be2f88dc92b29e97aff3da0c45f9f"
      ],
      "author": {
        "name": "Dan Aloni",
        "email": "da-x@monatomic.org",
        "time": "Fri Mar 02 20:44:51 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 02 20:44:51 2007 -0800"
      },
      "message": "[VLAN]: Avoid a 4-order allocation.\n\nThis patch splits the vlan_group struct into a multi-allocated struct. On\nx86_64, the size of the original struct is a little more than 32KB, causing\na 4-order allocation, which is prune to problems caused by buddy-system\nexternal fragmentation conditions.\n\nI couldn\u0027t just use vmalloc() because vfree() cannot be called in the\nsoftirq context of the RCU callback.\n\nSigned-off-by: Dan Aloni \u003cda-x@monatomic.org\u003e\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f62ad5d37f4e43c841e92c6f159c93dcf2d2cdd",
      "tree": "f8d0e5d2dcc5e7783ace1f966b9e008278357067",
      "parents": [
        "ad930650c0e694233971c56e8de8e78b896e2613"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 20 23:25:40 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 26 11:42:47 2007 -0800"
      },
      "message": "[TG3]: TSO workaround fixes.\n\n1.  Add race condition check after netif_stop_queue().  tg3_tx() runs\n    without netif_tx_lock and can race with tg3_start_xmit_dma_bug() -\u003e\n    tg3_tso_bug().\n\n2.  Firmware TSO in 5703/5704/5705 also have the same TSO limitation,\n    i.e. they cannot handle TSO headers bigger than 80 bytes.  Rename\n    TG3_FL2_HW_TSO_1_BUG to TG3_FL2_TSO_BUG and set this flag on\n    these chips as well.\n\n3.  Update version to 3.74.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65610fbab35b0570df4a9d0e77e111f85606b312",
      "tree": "1bb463aed953a3f8b93b4c9e70774b9d37e8c713",
      "parents": [
        "b0408751128edc126eb37798d51891d8d0a41dc6"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 13 12:18:46 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 13 12:18:46 2007 -0800"
      },
      "message": "[TG3]: Update copyright, version, and reldate.\n\nUpdate version to 3.73.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0408751128edc126eb37798d51891d8d0a41dc6",
      "tree": "2d26a34291cdc8a2facedff360b813886d4da6f9",
      "parents": [
        "569a5df8597deeaa39867be73c7305fd82522f57"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 13 12:18:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 13 12:18:30 2007 -0800"
      },
      "message": "[TG3]: Add some tx timeout debug messages.\n\nPrint the most useful information during tx timeout to help debug.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "569a5df8597deeaa39867be73c7305fd82522f57",
      "tree": "a49d58a45867f7255faf3c08d00830618b4d73c3",
      "parents": [
        "5129724aa5de3a71fc70e71ca49d542ca1a5aa1e"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 13 12:18:15 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 13 12:18:15 2007 -0800"
      },
      "message": "[TG3]: Use constant for PHY register 0x1e.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5129724aa5de3a71fc70e71ca49d542ca1a5aa1e",
      "tree": "ec00f82aa17a7c47a8b3763e150a9fafd4115fea",
      "parents": [
        "d7b0a8573c9ac8923bf6f205f4ce60dd2ac811d5"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 13 12:17:57 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 13 12:17:57 2007 -0800"
      },
      "message": "[TG3]: Power down 5704 serdes transceiver when shutting down.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7b0a8573c9ac8923bf6f205f4ce60dd2ac811d5",
      "tree": "c787b47bdd597e8518f4ca25d2f2280f86a64401",
      "parents": [
        "d4011adaf8b5ea555357a40388ee9aa7ed2daf9f"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 13 12:17:38 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 13 12:17:38 2007 -0800"
      },
      "message": "[TG3]: 5906 doesn\u0027t need to switch to slower clock.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d4011adaf8b5ea555357a40388ee9aa7ed2daf9f",
      "tree": "49dd5af30dd5eb3263284ec503db6a0a7be52a4d",
      "parents": [
        "49afdeb65bb917e22cf9116bc31380befe9db890"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 13 12:17:25 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 13 12:17:25 2007 -0800"
      },
      "message": "[TG3]: 5722/5756 don\u0027t need PHY jitter workaround.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "49afdeb65bb917e22cf9116bc31380befe9db890",
      "tree": "1e9ef01eb288712cd064a1ec723dbdf751162388",
      "parents": [
        "436f137975507b0baab0859a253c3c9332c22f62"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 13 12:17:03 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 13 12:17:03 2007 -0800"
      },
      "message": "[TG3]: Use lower DMA watermark for 5703.\n\nSet DMA read watermark to 4 on 5703 in PCIX mode.  This is needed to\nprevent some tx timeouts.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "436f137975507b0baab0859a253c3c9332c22f62",
      "tree": "482799400e745c518ee32ad9fa22b02bb4d20ed1",
      "parents": [
        "e2e01bfef8399c8f39c9fdf4a5576039069e760c"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Feb 13 12:16:45 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 13 12:16:45 2007 -0800"
      },
      "message": "[TG3]: Save MSI state before suspend.\n\nThis fixes the following problem:\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d7969\n\nThe MSI state needs to be saved during suspend.  PCI state saved\nduring tg3_init_one() does not contain valid MSI state because\nMSI hasn\u0027t been enabled.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b31a515e3401685cdab2eeb6692f1a0f53f72ca",
      "tree": "ad8bcb3bb7b9974fdd18c5c8f976fc23680be620",
      "parents": [
        "0f08461ebf89e10f7db9042fb028359b810c3c81"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Feb 06 13:29:21 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:38:57 2007 -0800"
      },
      "message": "[TG3]: Avoid an expensive divide.\n\nDuring an oprofile session of linux-2.6.20 on a dual opteron system, I noticed\nan expensive divide was done in tg3_poll().\n\nI am using gcc-4.1.1, so the following comment from drivers/net/tg3.c seems\nover-optimistic :\n\n/* Do not place this n-ring entries value into the tp struct itself,\n  * we really want to expose these constants to GCC so that modulo et\n  * al.  operations are done with shifts and masks instead of with\n  * hw multiply/modulo instructions.  Another solution would be to\n  * replace things like \u0027% foo\u0027 with \u0027\u0026 (foo - 1)\u0027.\n  */\n#define TG3_RX_RCB_RING_SIZE(tp)        \\\n         ((tp-\u003etg3_flags2 \u0026 TG3_FLG2_5705_PLUS) ?  512 : 1024)\n\nAssembly code before patch :\n(oprofile results included)\n   6434  0.0088 :ffffffff803684b9:       mov    0x6f0(%r15),%eax\n    587 8.0e-04 :ffffffff803684c0:       and    $0x40000,%eax\n   2170  0.0030 :ffffffff803684c5:       cmp    $0x1,%eax\n                :ffffffff803684c8:       lea    0x1(%r13),%eax\n                :ffffffff803684cc:       sbb    %ecx,%ecx\n   2051  0.0028 :ffffffff803684ce:       xor    %edx,%edx\n                :ffffffff803684d0:       and    $0x200,%ecx\n     20 2.7e-05 :ffffffff803684d6:       add    $0x200,%ecx\n   1986  0.0027 :ffffffff803684dc:       div    %ecx\n103427  0.1410 :ffffffff803684de:       cmp    %edx,0xffffffffffffff7c(%rbp)\n\nAssembly code after the suggested patch :\n\nffffffff803684b9:           mov    0x6f0(%r15),%eax\nffffffff803684c0:           and    $0x40000,%eax\nffffffff803684c5:           cmp    $0x1,%eax\nffffffff803684c8:           sbb    %eax,%eax\nffffffff803684ca:           inc    %r13d\nffffffff803684cd:           and    $0x200,%eax\nffffffff803684d2:           add    $0x1ff,%eax\nffffffff803684d7:           and    %eax,%r13d\nffffffff803684da:           cmp    %r13d,0xffffffffffffff7c(%rbp)\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nAcked-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d39ed565cfcc7c4fe586de621aef495c4f94ffb",
      "tree": "af3280a25eb796385c851dc7b83e82f0ff38f1ac",
      "parents": [
        "6d24998f07588ca83ce04e60af5a79e805df7532"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Tue Dec 12 14:06:23 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Feb 05 16:58:45 2007 -0500"
      },
      "message": "remove NETIF_F_TSO ifdefery\n\nRemove the NETIF_F_TSO #ifdef-ery in drivers/net; this was\nfor old-old-2.4 compat (even current 2.4 has NETIF_F_TSO)\nbut it\u0027s time to get rid of it by now.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c1d2a1965a00693bddaddf75d57488a0d8e891af",
      "tree": "5658caed34980b6edb302b3fc0103a5d61e7dbb4",
      "parents": [
        "d6aa4acebafe3acb0aade7704ec5b2f03742ea14"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Mon Jan 08 19:57:20 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 09 00:30:06 2007 -0800"
      },
      "message": "[TG3]: Add PHY workaround for 5755M.\n\nSome PHY trim values need to be fine-tuned on 5755M to be\nIEEE-compliant.\n\nUpdate version to 3.72.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "749494bad9ca170e404b8dcebe8422df0d79b3ac",
      "tree": "229544cf5dd75006ded78124269481c3985dfd58",
      "parents": [
        "60189ddff03ffce1f0442a7591b2abafdf47e6a3"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sun Dec 17 17:08:30 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:23 2006 -0800"
      },
      "message": "[TG3]: Update version and reldate.\n\nUpdate version to 3.71.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60189ddff03ffce1f0442a7591b2abafdf47e6a3",
      "tree": "25d3c5c8211fd57942ae0a57d82c66ad4b2110c5",
      "parents": [
        "c49a1561ee4b663d2819b5bea3e4684eae217b19"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sun Dec 17 17:08:07 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:22 2006 -0800"
      },
      "message": "[TG3]: Power down/up 5906 PHY correctly.\n\nThe 5906 PHY requires a special register bit to power down and up the\nPHY.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c49a1561ee4b663d2819b5bea3e4684eae217b19",
      "tree": "59909de4a5cba3bb84ee4b09fd793af46efc0f4f",
      "parents": [
        "24fcad6b3ca3bdbbb4614de3edc1ff16f594ba9a"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sun Dec 17 17:07:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:20 2006 -0800"
      },
      "message": "[TG3]: Fix race condition when calling register_netdev().\n\nHot-plug scripts can call tg3_open() as soon as register_netdev() is\ncalled in tg3_init_one().  We need to call pci_set_drvdata() before\nregister_netdev(), and netif_carrier_off() needs to be moved to\ntg3_open() to avoid race conditions.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24fcad6b3ca3bdbbb4614de3edc1ff16f594ba9a",
      "tree": "1c1c7e830472218da1f5a8f40d2acfea06601c95",
      "parents": [
        "9b54d5c610fc5ba191d28c356b81999e81d9b515"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sun Dec 17 17:06:46 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:19 2006 -0800"
      },
      "message": "[TG3]: Assign tp-\u003elink_config.orig_* values.\n\ntp-\u003elink_config.orig_* values must be assigned during\ntg3_set_settings() because these values will be used to setup the\nlink speed during tg3_open().  Without these assignments, the link\nspeed settings will be all messed by if tg3_set_settings() is called\nwhen the device is down.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bd2b334378530f6dbe03f6325b8c885524e298a3",
      "tree": "c45be1ccd568ac9076a3ce13ddaca1c2e2e0c47d",
      "parents": [
        "e25db641c0e6dd49c5db24dbe154048d4a466727"
      ],
      "author": {
        "name": "Yan Burman",
        "email": "burman.yan@gmail.com",
        "time": "Thu Dec 14 15:25:00 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:06 2006 -0800"
      },
      "message": "[TG3]: replace kmalloc+memset with kzalloc\n\nReplace kmalloc+memset with kzalloc\n\nSigned-off-by: Yan Burman \u003cburman.yan@gmail.com\u003e\nAcked-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbb45d21fb2fcbcafc19ea859350f564252a0878",
      "tree": "704fbabcffa097951414fd69234d375381347c35",
      "parents": [
        "9d57f01c1331cb7bfd0a9d4f7723da5b9329394f"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Dec 07 00:24:09 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 07 00:24:09 2006 -0800"
      },
      "message": "[TG3]: Identify Serdes devices more clearly.\n\nChange the message to more clearly identify Serdes devices.\n\nUpdate version to 3.70.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d57f01c1331cb7bfd0a9d4f7723da5b9329394f",
      "tree": "bb3c2a53146500196c2707de5290bb084725e6ae",
      "parents": [
        "9f88f29fc502192824aba092e90af1297a87eb82"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Dec 07 00:23:25 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 07 00:23:25 2006 -0800"
      },
      "message": "[TG3]: Use msleep.\n\nChange some udelay() in some eeprom functions to msleep().  Eeprom\nrelated functions are always called from sleepable context.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f88f29fc502192824aba092e90af1297a87eb82",
      "tree": "a0a718020af8dc02e345c0815c0b9437bc8a878d",
      "parents": [
        "3600d918d870456ea8e7bb9d47f327de5c20f3d6"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Dec 07 00:22:54 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 07 00:22:54 2006 -0800"
      },
      "message": "[TG3]: Use netif_msg_*.\n\nUse netif_msg_* to turn on or off some messages.\n\nBased on Stephen Hemminger\u0027s initial patch.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3600d918d870456ea8e7bb9d47f327de5c20f3d6",
      "tree": "535cef03d0a422741b4c361048f7dda54df30622",
      "parents": [
        "9d26e213423923c9e033ccd373705118131827c9"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Dec 07 00:21:48 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 07 00:21:48 2006 -0800"
      },
      "message": "[TG3]: Allow partial speed advertisement.\n\nHonor the advertisement bitmask from ethtool.  We used to always\nadvertise the full capability when autoneg was set to on.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d26e213423923c9e033ccd373705118131827c9",
      "tree": "182ec37041687479c2e4697463e77a1b195b9d26",
      "parents": [
        "676917d488212303ce4a7d033815ce8799201010"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Dec 07 00:21:14 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 07 00:21:14 2006 -0800"
      },
      "message": "[TG3]: Add TG3_FLG2_IS_NIC flag.\n\nAdd Tg3_FLG2_IS_NIC flag to unambiguously determine whether the\ndevice is NIC or onboard.  Previously, the EEPROM_WRITE_PROT flag was\noverloaded to also mean onboard.  With the separation, we can\nsupport some devices that are onboard but do not use eeprom write\nprotect.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "676917d488212303ce4a7d033815ce8799201010",
      "tree": "b191b3b5859cb613b710b2ad1ff37c58fe3ccb5d",
      "parents": [
        "5d64ad34f468278ce66f9eb4d876dd221490e94c"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Dec 07 00:20:22 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 07 00:20:22 2006 -0800"
      },
      "message": "[TG3]: Add 5787F device ID.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5d64ad34f468278ce66f9eb4d876dd221490e94c",
      "tree": "afbb4b855a912592ac6f179e146af000810fa56b",
      "parents": [
        "456c38f9682645cbb0537cb4e16848a28c1d3a76"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Dec 07 00:19:40 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 07 00:19:40 2006 -0800"
      },
      "message": "[TG3]: Fix Phy loopback.\n\nPhy loopback on most 10/100 devices need to be run in 1Gbps mode in\nGMII mode.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4028958b6ecad064b1a6303a6a5906d4fe48d73",
      "tree": "1c4c89652c62a75da09f9b9442012007e4ac6250",
      "parents": [
        "65f27f38446e1976cc98fd3004b110fedcddd189"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:57:56 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:57:56 2006 +0000"
      },
      "message": "WorkStruct: make allyesconfig\n\nFix up for make allyesconfig.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "12862086f24d7382b24379bbcbe0dadf12ca5945",
      "tree": "e1fc65a347e23171d28054eeb97316dd255bb97a",
      "parents": [
        "f2776ff047229c3e7cee2454e2704dd6f98fa32f"
      ],
      "author": {
        "name": "Ira W. Snyder",
        "email": "kernel@irasnyder.com",
        "time": "Tue Nov 21 17:44:31 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 21 17:44:31 2006 -0800"
      },
      "message": "[TG3]: Add missing unlock in tg3_open() error path.\n\nSparse noticed a locking imbalance in tg3_open(). This patch adds an\nunlock to one of the error paths, so that tg3_open() always exits\nwithout the lock held.\n\nSigned-off-by: Ira W. Snyder \u003ckernel@irasnyder.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c7835a77c86422d276b0d1a4c70924d933014c13",
      "tree": "a0f4ee32a55d8b360b814f6ef811be268db71c2f",
      "parents": [
        "52bf376c63eebe72e862a1a6e713976b038c3f50"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Nov 15 21:14:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Nov 15 21:18:52 2006 -0800"
      },
      "message": "[TG3]: Disable TSO on 5906 if CLKREQ is enabled.\n\nDue to hardware errata, TSO must be disabled if the PCI Express clock\nrequest is enabled on 5906.  The chip may hang when transmitting TSO\nframes if CLKREQ is enabled.\n\nUpdate version to 3.69.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ccead1869444891ae6b41f2c5fc8498521c908e",
      "tree": "508dacf852deab9c26f8f3d3071cdaf456f6990b",
      "parents": [
        "44597f65f6af3c692560a639f61d25398d13d1b6"
      ],
      "author": {
        "name": "Gary Zambrano",
        "email": "zambrano@broadcom.com",
        "time": "Tue Nov 14 16:34:00 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Nov 15 21:18:46 2006 -0800"
      },
      "message": "[TG3]: Increase 5906 firmware poll time.\n\nNewer 5906 bootcode needs about 7ms to finish resetting so the poll\nfirmware loop was changed to maximum 20ms.\n\nSigned-off-by: Gary Zambrano \u003czambrano@broadcom.com\u003e\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "af2c6a4aaa2253f1e29df8fb59a3d92174d30a33",
      "tree": "5eb583eb426b70c342d7a5a0577b44564de70538",
      "parents": [
        "25f484a62e41be8020b9a31bf50a792baa58d2d4"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Tue Nov 07 14:57:51 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Nov 07 15:10:16 2006 -0800"
      },
      "message": "[TG3]: Fix array overrun in tg3_read_partno().\n\nUse proper upper limits for the loops and check for all error\nconditions.\n\nThe problem was noticed by Adrian Bunk.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36da4d869f23bc7d1a70a3185218cb626537845c",
      "tree": "87ca921f64c2e10d24adbd5fb75cd40b651d1f9c",
      "parents": [
        "febf0a431e42f5a1fdb2b763273700610552ddcc"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Fri Nov 03 01:01:03 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Nov 05 14:11:30 2006 -0800"
      },
      "message": "[TG3]: Fix 2nd ifup failure on 5752M.\n\nThis fixes a bug reported in:\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d7438\n\ntg3_close() turns off the PHY if WoL and ASF are both disabled.  On\nthe next tg3_open(), some devices such as the 5752M will not be\nbrought up correctly without a PHY reset early in the reset sequence.\nThe PHY clock is needed for some internal MAC blocks to function\ncorrectly.\n\nThis problem is fixed by always resetting the PHY early in\ntg3_reset_hw() when it is called from tg3_open() or tg3_resume().\ntg3_setup_phy() can then be called later in the sequence without the\nreset_phy parameter set to 1, since the PHY reset is already done.\n\nUpdate version to 3.68.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ba7511b7c8b71d5148f7516584d0b677acc384a",
      "tree": "6bbee4a1555f8a85bfcde2c0dac03145fb5067f1",
      "parents": [
        "bc3a9254a7925b6278f6d882746fe6a0bdf6f610"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 18 20:56:06 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 18 20:56:06 2006 -0700"
      },
      "message": "[TG3]: Bump driver version and release date.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc3a9254a7925b6278f6d882746fe6a0bdf6f610",
      "tree": "862059bc23a8b602da144adef1f237afb0668489",
      "parents": [
        "42952231c6a8623117ee3cc89c82d382dc69ca30"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Oct 18 20:55:18 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 18 20:55:18 2006 -0700"
      },
      "message": "[TG3]: Add lower bound checks for tx ring size.\n\nThe minimum tx ring size must be greater than MAX_SKB_FRAGS or 3\ntimes that on some chips with TSO bugs.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "42952231c6a8623117ee3cc89c82d382dc69ca30",
      "tree": "8c4db924ae0e1cebfcbedd7da75008675a36c523",
      "parents": [
        "5175c3786c244f8b689854db24c9e79b1c6a084f"
      ],
      "author": {
        "name": "Ranjit Manomohan",
        "email": "ranjitm@google.com",
        "time": "Wed Oct 18 20:54:26 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 18 20:54:26 2006 -0700"
      },
      "message": "[TG3]: Fix set ring params tx ring size implementation\n\nFixes the implementation of the ethtool set ring parameters for the\ntg3 transmit ring.  The size of tx_pending is taken into account\nbefore doing a netif_wake_queue.  This prevents the interface from\nlocking up when smaller transmit ring sizes are used.\n\nSigned-off-by: Ranjit Manomohan \u003cranjitm@google.com\u003e\nAcked-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7d12e780e003f93433d49ce78cfedf4b4c52adc5",
      "tree": "6748550400445c11a306b132009f3001e3525df8",
      "parents": [
        "da482792a6d1a3fbaaa25fae867b343fb4db3246"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Oct 05 14:55:46 2006 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Thu Oct 05 15:10:12 2006 +0100"
      },
      "message": "IRQ: Maintain regs pointer globally rather than passing to IRQ handlers\n\nMaintain a per-CPU global \"struct pt_regs *\" variable which can be used instead\nof passing regs around manually through all ~1800 interrupt handlers in the\nLinux kernel.\n\nThe regs pointer is used in few places, but it potentially costs both stack\nspace and code to pass it around.  On the FRV arch, removing the regs parameter\nfrom all the genirq function results in a 20% speed up of the IRQ exit path\n(ie: from leaving timer_interrupt() to leaving do_IRQ()).\n\nWhere appropriate, an arch may override the generic storage facility and do\nsomething different with the variable.  On FRV, for instance, the address is\nmaintained in GR28 at all times inside the kernel as part of general exception\nhandling.\n\nHaving looked over the code, it appears that the parameter may be handed down\nthrough up to twenty or so layers of functions.  Consider a USB character\ndevice attached to a USB hub, attached to a USB controller that posts its\ninterrupts through a cascaded auxiliary interrupt controller.  A character\ndevice driver may want to pass regs to the sysrq handler through the input\nlayer which adds another few layers of parameter passing.\n\nI\u0027ve build this code with allyesconfig for x86_64 and i386.  I\u0027ve runtested the\nmain part of the code on FRV and i386, though I can\u0027t test most of the drivers.\nI\u0027ve also done partial conversion for powerpc and MIPS - these at least compile\nwith minimal configurations.\n\nThis will affect all archs.  Mostly the changes should be relatively easy.\nTake do_IRQ(), store the regs pointer at the beginning, saving the old one:\n\n\tstruct pt_regs *old_regs \u003d set_irq_regs(regs);\n\nAnd put the old one back at the end:\n\n\tset_irq_regs(old_regs);\n\nDon\u0027t pass regs through to generic_handle_irq() or __do_IRQ().\n\nIn timer_interrupt(), this sort of change will be necessary:\n\n\t-\tupdate_process_times(user_mode(regs));\n\t-\tprofile_tick(CPU_PROFILING, regs);\n\t+\tupdate_process_times(user_mode(get_irq_regs()));\n\t+\tprofile_tick(CPU_PROFILING);\n\nI\u0027d like to move update_process_times()\u0027s use of get_irq_regs() into itself,\nexcept that i386, alone of the archs, uses something other than user_mode().\n\nSome notes on the interrupt handling in the drivers:\n\n (*) input_dev() is now gone entirely.  The regs pointer is no longer stored in\n     the input_dev struct.\n\n (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking.  It does\n     something different depending on whether it\u0027s been supplied with a regs\n     pointer or not.\n\n (*) Various IRQ handler function pointers have been moved to type\n     irq_handler_t.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n(cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)\n"
    },
    {
      "commit": "1533d382155ee888d9621391c108ffb7a68bb25d",
      "tree": "92e59711126e7213d0c4a5a3661f4ab0e414addd",
      "parents": [
        "b16250e3d1c55820f08f0296624a423122ea9805"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Sep 27 16:10:35 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:43 2006 -0700"
      },
      "message": "[TG3]: Update version and reldate.\n\nUpdate version to 3.66.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b16250e3d1c55820f08f0296624a423122ea9805",
      "tree": "9559f4acd5e740b727c42e635699b7427f21d3c3",
      "parents": [
        "715116a12610b67c1d301a9b845ce95f7247dad3"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Sep 27 16:10:14 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:42 2006 -0700"
      },
      "message": "[TG3]: Add 5709 self-test support.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "715116a12610b67c1d301a9b845ce95f7247dad3",
      "tree": "1f9b680e4cfc32cc7759b82481f104eae6e22f24",
      "parents": [
        "b5d3772ccbe0bc5ac8ffbb5356b74ca698aee28c"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Sep 27 16:09:25 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:41 2006 -0700"
      },
      "message": "[TG3]: Add 5709 PHY support.\n\nAdd support for the 5709 10/100 PHY.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "b5d3772ccbe0bc5ac8ffbb5356b74ca698aee28c"
}
