)]}'
{
  "log": [
    {
      "commit": "f845172531fb7410c7fb7780b1a6e51ee6df7d52",
      "tree": "ef1030d0ad9d9dbc8fe800a145c587f04be50ade",
      "parents": [
        "eda6e6f86b5f95b982ac7ebf7cf5be2a29a291e9"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon May 24 00:12:34 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 24 00:12:34 2010 -0700"
      },
      "message": "cls_cgroup: Store classid in struct sock\n\nUp until now cls_cgroup has relied on fetching the classid out of\nthe current executing thread.  This runs into trouble when a packet\nprocessing is delayed in which case it may execute out of another\nthread\u0027s context.\n\nFurthermore, even when a packet is not delayed we may fail to\nclassify it if soft IRQs have been disabled, because this scenario\nis indistinguishable from one where a packet unrelated to the\ncurrent thread is processed by a real soft IRQ.\n\nIn fact, the current semantics is inherently broken, as a single\nskb may be constructed out of the writes of two different tasks.\nA different manifestation of this problem is when the TCP stack\ntransmits in response of an incoming ACK.  This is currently\nunclassified.\n\nAs we already have a concept of packet ownership for accounting\npurposes in the skb-\u003esk pointer, this is a natural place to store\nthe classid in a persistent manner.\n\nThis patch adds the cls_cgroup classid in struct sock, filling up\nan existing hole on 64-bit :)\n\nThe value is set at socket creation time.  So all sockets created\nvia socket(2) automatically gains the ID of the thread creating it.\nWhenever another process touches the socket by either reading or\nwriting to it, we will change the socket classid to that of the\nprocess if it has a valid (non-zero) classid.\n\nFor sockets created on inbound connections through accept(2), we\ninherit the classid of the original listening socket through\nsk_clone, possibly preceding the actual accept(2) call.\n\nIn order to minimise risks, I have not made this the authoritative\nclassid.  For now it is only used as a backup when we execute\nwith soft IRQs disabled.  Once we\u0027re completely happy with its\nsemantics we can use it as the sole classid.\n\nFootnote: I have rearranged the error path on cls_group module\ncreation.  If we didn\u0027t do this, then there is a window where\nsomeone could create a tc rule using cls_group before the cgroup\nsubsystem has been registered.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "53b0f08042f04813cd1a7473dacd3edfacb28eb3",
      "tree": "025244cdb7c4f0872f372564de2b82130fc7e867",
      "parents": [
        "a6c0f8217c17d46da22fa56923f3cbd03615cb7c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sat May 22 20:37:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 23 23:11:07 2010 -0700"
      },
      "message": "net_sched: Fix qdisc_notify()\n\nBen Pfaff reported a kernel oops and provided a test program to\nreproduce it.\n\nhttps://kerneltrap.org/mailarchive/linux-netdev/2010/5/21/6277805\n\ntc_fill_qdisc() should not be called for builtin qdisc, or it\ndereference a NULL pointer to get device ifindex.\n\nFix is to always use tc_qdisc_dump_ignore() before calling\ntc_fill_qdisc().\n\nReported-by: Ben Pfaff \u003cblp@nicira.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3fa21e07e6acefa31f974d57fba2b6920a7ebd1a",
      "tree": "4254644ef2579e9ac96db6ec0535b5e4231fd18e",
      "parents": [
        "b60b6592baa69c43a5a0f55d6300a7feaab15338"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon May 17 23:08:21 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 23:23:14 2010 -0700"
      },
      "message": "net: Remove unnecessary returns from void function()s\n\nThis patch removes from net/ (but not any netfilter files)\nall the unnecessary return; statements that precede the\nlast closing brace of void functions.\n\nIt does not remove the returns that are immediately\npreceded by a label as gcc doesn\u0027t like that.\n\nDone via:\n$ grep -rP --include\u003d*.[ch] -l \"return;\\n}\" net/ | \\\n  xargs perl -i -e \u0027local $/ ; while (\u003c\u003e) { s/\\n[ \\t\\n]+return;\\n}/\\n}/g; print; }\u0027\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b60b6592baa69c43a5a0f55d6300a7feaab15338",
      "tree": "30e7ba9b38a30d78542b242eda794499a590d26c",
      "parents": [
        "207024b9477e253859abfc30f1ff314cd6008b24"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue May 11 14:24:12 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 23:23:13 2010 -0700"
      },
      "message": "net sched: cleanup and rate limit warning\n\nIf the user has a bad classification configuration, and gets a packet\nthat goes through too many steps. Chances are more packets will arrive,\nand the message spew will overrun syslog because it is not rate limited.\nAnd because it is not tagged with appropriate priority it can\u0027t not be screened.\n\nAdded the qdisc to the message to try and give some more context when\nthe message does arrive.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ff9c3644e72bfac20844e0155c2cc8108602820",
      "tree": "81a8ce88d6f0f91ff7f68b234c2d20d6a0d8745f",
      "parents": [
        "00c60a8312c235cac1c879b620ecb71413e9245d"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed May 12 06:37:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 23:23:12 2010 -0700"
      },
      "message": "net sched: printk message severity\n\nThe previous patch encourage me to go look at all the messages in\nthe network scheduler and fix them. Many messages were missing\nany severity level. Some serious ones that should never happen\nwere turned into WARN(), and the random noise messages that were\nhandled changed to pr_debug().\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a2f79227138c71e08627af5f8961197364edbc98",
      "tree": "6d55f0769045bf537acd14db89b98fbe737ec595",
      "parents": [
        "e1bc7eedbafe0415cdfd82e17e6f65bb3369239d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri May 14 08:08:14 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 17:44:46 2010 -0700"
      },
      "message": "net_sched: sch_hfsc: fix classification loops\n\nWhen attaching filters to a class pointing to a class higher up in the\nhierarchy, classification may enter an endless loop. Currently this is\nprevented for filters that are already resolved, but not for filters\nresolved at runtime.\n\nOnly allow filters to point downwards in the hierarchy, similar to what\nCBQ does.\n\nReported-by: Pawel Staszewski \u003cpstaszewski@itcare.pl\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0cd15081a72075df16c45a2310e873fb9fcd82f",
      "tree": "88e462778635cb4e285315f144b62276bdcff6df",
      "parents": [
        "ccbd6a5a4f76e821ed36f69fdaf59817c3a7f18e"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri May 14 14:38:59 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 17:44:35 2010 -0700"
      },
      "message": "tbf: stop wanton destruction of children (v2)\n\nSeveral netem users use TBF for rate control. But every time the parameters\nof TBF are changed it destroys the child qdisc, requiring reconfigation.\nBetter to just keep child qdisc and just notify it of changed limit.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7fee226ad2397b635e2fd565a59ca3ae08a164cd",
      "tree": "0bcd26150ad74ec1a237109de87a3d214a07fc22",
      "parents": [
        "ebda37c27d0c768947e9b058332d7ea798210cf8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue May 11 23:19:48 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 17:18:50 2010 -0700"
      },
      "message": "net: add a noref bit on skb dst\n\nUse low order bit of skb-\u003e_skb_dst to tell dst is not refcounted.\n\nChange _skb_dst to _skb_refdst to make sure all uses are catched.\n\nskb_dst() returns the dst, regardless of noref bit set or not, but\nwith a lockdep check to make sure a noref dst is not given if current\nuser is not rcu protected.\n\nNew skb_dst_set_noref() helper to set an notrefcounted dst on a skb.\n(with lockdep check)\n\nskb_dst_drop() drops a reference only if skb dst was refcounted.\n\nskb_dst_force() helper is used to force a refcount on dst, when skb\nis queued and not anymore RCU protected.\n\nUse skb_dst_force() in __sk_add_backlog(), __dev_xmit_skb() if\n!IFF_XMIT_DST_RELEASE or skb enqueued on qdisc queue, in\nsock_queue_rcv_skb(), in __nf_queue().\n\nUse skb_dst_force() in dev_requeue_skb().\n\nNote: dst_use_noref() still dirties dst, we might transform it\nlater to do one dirtying per jiffies.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cba7a98a474a4f2a9316473734ba76829191a78a",
      "tree": "28a0ab87dba93385353bedb76a26a1fc45b3a0c6",
      "parents": [
        "d250fe91ae129bff0968e685cc9c466d3a5e3482",
        "4538506be386f9736b83bf9892f829adbbb70fea"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue May 11 18:59:21 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue May 11 18:59:21 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 of git://dev.medozas.de/linux\n"
    },
    {
      "commit": "4b560b447df83368df44bd3712c0c39b1d79ba04",
      "tree": "b445a292e8caf1bcbfb950f461af5f86e7263c01",
      "parents": [
        "de74c16996287250f0d947663127f80c6beebd3c"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Sun Jul 05 19:43:26 2009 +0200"
      },
      "committer": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Tue May 11 18:31:17 2010 +0200"
      },
      "message": "netfilter: xtables: substitute temporary defines by final name\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\n"
    },
    {
      "commit": "1e4b1057121bc756b91758a434b504d2010f6088",
      "tree": "b016cf2c728289c7e36d9e4e488f30ab0bd0ae6e",
      "parents": [
        "3b254c54ec46eb022cb26ee6ab37fae23f5f7d6a",
        "3ee943728fff536edaf8f59faa58aaa1aa7366e3"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon May 10 18:39:28 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon May 10 18:39:28 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 of /repos/git/net-next-2.6\n\nConflicts:\n\tnet/bridge/br_device.c\n\tnet/bridge/br_forward.c\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "dee42870a423ad485129f43cddfe7275479f11d8",
      "tree": "e30433d3b55ee248eb672765fe6705be160d882c",
      "parents": [
        "7ef527377b88ff05fb122a47619ea506c631c914"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Sun May 02 05:42:16 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 02 22:26:57 2010 -0700"
      },
      "message": "net: fix softnet_stat\n\nPer cpu variable softnet_data.total was shared between IRQ and SoftIRQ context\nwithout any protection. And enqueue_to_backlog should update the netdev_rx_stat\nof the target CPU.\n\nThis patch renames softnet_data.total to softnet_data.processed: the number of\npackets processed in uppper levels(IP stacks).\n\nsoftnet_stat data is moved into softnet_data.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\n----\n include/linux/netdevice.h |   17 +++++++----------\n net/core/dev.c            |   26 ++++++++++++--------------\n net/sched/sch_generic.c   |    2 +-\n 3 files changed, 20 insertions(+), 25 deletions(-)\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0eae88f31ca2b88911ce843452054139e028771f",
      "tree": "90f50197d8e1e50e3621e9c525bd4ca2634fe368",
      "parents": [
        "cb903bf4ee2d6e53210e2174d363e10698112042"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Apr 20 19:06:52 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 20 19:06:52 2010 -0700"
      },
      "message": "net: Fix various endianness glitches\n\nSparse can help us find endianness bugs, but we need to make some\ncleanups to be able to more easily spot real bugs.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "62910554656cdcd6b6f84a5154c4155aae4ca231",
      "tree": "dcf14004f6fd2ef7154362ff948bfeba0f3ea92d",
      "parents": [
        "22265a5c3c103cf8c50be62e6c90d045eb649e6d",
        "ab9304717f7624c41927f442e6b6d418b2d8b3e4"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Apr 20 16:02:01 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Apr 20 16:02:01 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 of /repos/git/net-next-2.6\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tnet/ipv6/netfilter/ip6t_REJECT.c\n\tnet/netfilter/xt_limit.c\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "871039f02f8ec4ab2e5e9010718caa8e085786f1",
      "tree": "f0d2b3127fc48c862967d68c46c2d46668137515",
      "parents": [
        "e4077e018b5ead3de9951fc01d8bf12eeeeeefed",
        "4a1032faac94ebbf647460ae3e06fc21146eb280"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/stmmac/stmmac_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_spi.c\n\tnet/core/ethtool.c\n\tnet/mac80211/scan.c\n"
    },
    {
      "commit": "4a35ecf8bf1c4b039503fa554100fe85c761de76",
      "tree": "9b75f5d5636004d9a9aa496924377379be09aa1f",
      "parents": [
        "b4d562e3c3553ac58c7120555c4e4aefbb090a2a",
        "fb9e2d887243499b8d28efcf80821c4f6a092395"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 23:53:30 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 23:53:30 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bonding/bond_main.c\n\tdrivers/net/via-velocity.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn.c\n"
    },
    {
      "commit": "5d944c640b4ae5f37c537acf491c2f0eb89fa0d6",
      "tree": "9195a0135ec21c1c06ff4d46e8cf7924e2c364c0",
      "parents": [
        "d4fc6dbb5ae51430e35b2005f6d68938861f8d8b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Mar 31 07:06:04 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 01 18:38:48 2010 -0700"
      },
      "message": "gen_estimator: deadlock fix\n\nOne of my test machine got a deadlock during \"tc\" sessions,\nadding/deleting classes \u0026 filters, using traffic estimators.\n\nAfter some analysis, I believe we have a potential use after free case\nin est_timer() :\n\nspin_lock(e-\u003estats_lock); \u003c\u003c HERE \u003e\u003e\nread_lock(\u0026est_lock);\nif (e-\u003ebstats \u003d\u003d NULL)   \u003c\u003c TEST \u003e\u003e\n\tgoto skip;\n\nTest is done a bit late, because after estimator is killed, and before\nrcu grace period elapsed, we might already have freed/reuse memory where\ne-\u003estats_locks points to (some qdisc-\u003eq.lock)\n\nA possible fix is to respect a rcu grace period at Qdisc dismantle time.\n\nOn 64bit, sizeof(struct Qdisc) is exactly 192 bytes. Adding 16 bytes to\nit (for struct rcu_head) is a problem because it might change\nperformance, given QDISC_ALIGNTO is 32 bytes.\n\nThis is why I also change QDISC_ALIGNTO to 64 bytes, to satisfy most\ncurrent alignment requirements.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7e5ab157813993356f021757d0b0dcbdca7c55a1",
      "tree": "5cdbce6124b690bfadaa5c99863ea204a545c2bc",
      "parents": [
        "9badba2543d165154c540b80e59ff06c1b3e3f76"
      ],
      "author": {
        "name": "Tom Goff",
        "email": "thomas.goff@boeing.com",
        "time": "Tue Mar 30 19:44:56 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 19:44:56 2010 -0700"
      },
      "message": "net_sched: minor netns related cleanup\n\nThese changes were suggested by Alexey Dobriyan \u003cadobriyan@gmail.com\u003e:\n\n  - psched_show() does not use any private data so just pass NULL to\n    psched_open()\n\n  - remove unnecessary return statement\n\nSigned-off-by: Tom Goff \u003cthomas.goff@boeing.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "d2a7b6bad2c38e41eddb0b24d03627d9e7aa3f7b",
      "tree": "826eb9d112029819aa44925346a55f887b1c3baf",
      "parents": [
        "ff67e4e42bd178b1179c4d8e5c1fde18758ce84f"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Fri Jul 10 18:55:11 2009 +0200"
      },
      "committer": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Thu Mar 25 15:02:19 2010 +0100"
      },
      "message": "netfilter: xtables: make use of xt_request_find_target\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\n"
    },
    {
      "commit": "b138338056fc423c61a583d45f8aa64cfad87131",
      "tree": "89079c1f80c62a7fce240942605e869944c81a1e",
      "parents": [
        "18062ca94714a66e75da8a22e010d0e8e61ab4cd"
      ],
      "author": {
        "name": "Frans Pop",
        "email": "elendil@planet.nl",
        "time": "Wed Mar 24 07:57:28 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 24 14:01:54 2010 -0700"
      },
      "message": "net: remove trailing space in messages\n\nSigned-off-by: Frans Pop \u003celendil@planet.nl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e039d84b323c4503c4d56863faa47c783660826",
      "tree": "fd3fed884bf5f6309893d6844cabb9dcf3f9838a",
      "parents": [
        "688328c7ec3cd0dc3b16342aeb045d28012cc955"
      ],
      "author": {
        "name": "Ben Blum",
        "email": "bblum@andrew.cmu.edu",
        "time": "Tue Mar 23 05:24:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 23 13:06:14 2010 -0700"
      },
      "message": "cgroups: net_cls as module\n\nAllows the net_cls cgroup subsystem to be compiled as a module\n\nThis patch modifies net/sched/cls_cgroup.c to allow the net_cls subsystem\nto be optionally compiled as a module instead of builtin.  The\ncgroup_subsys struct is moved around a bit to allow the subsys_id to be\neither declared as a compile-time constant by the cgroup_subsys.h include\nin cgroup.h, or, if it\u0027s a module, initialized within the struct by\ncgroup_load_subsys.\n\nSigned-off-by: Ben Blum \u003cbblum@andrew.cmu.edu\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7316ae88c43d47f6503f4c29b4973204e33c3411",
      "tree": "442b265d3fd083065330e355cf8e9c73196cc443",
      "parents": [
        "300bc0602489d9f09f7b548f790afd2952f6070b"
      ],
      "author": {
        "name": "Tom Goff",
        "email": "thomas.goff@boeing.com",
        "time": "Fri Mar 19 15:40:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 22 20:26:25 2010 -0700"
      },
      "message": "net_sched: make traffic control network namespace aware\n\nMostly minor changes to add a net argument to various functions and\nremove initial network namespace checks.\n\nMake /proc/net/psched per network namespace.\n\nSigned-off-by: Tom Goff \u003cthomas.goff@boeing.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b1109bf085c8dd69537b7876ea83f914dd1fe46a",
      "tree": "086bd9891a8c92284ea148c93f2242e6c7c02bd2",
      "parents": [
        "889b8f964f2f226b7cd5a0a515109e3d8d9d1613",
        "44bfce5c3ec91baf8ffcd075c66711740f29a949"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 09 11:44:44 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 09 11:44:44 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "d4ae20b3799e0b6fa0d832a645a422da9f239868",
      "tree": "6a02e8110b4eb72230ecc985828ef5b6099f37ee",
      "parents": [
        "2d171886b183982feb03446997c65e9e212b948e"
      ],
      "author": {
        "name": "Jan Luebbe",
        "email": "jluebbe@debian.org",
        "time": "Mon Feb 08 22:41:44 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 08 22:41:44 2010 -0800"
      },
      "message": "net/sched: Fix module name in Kconfig\n\nThe action modules have been prefixed with \u0027act_\u0027, but the Kconfig\ndescription was not changed.\n\nSigned-off-by: Jan Luebbe \u003cjluebbe@debian.org\u003e\nAcked-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "57dbb2d83d100ea601c54fe129bfde0678db5dee",
      "tree": "40305bcd986692f512b1b5e848c0b0f612968c6a",
      "parents": [
        "d74340d31bf1dbeb00acadddd8697666528a7846"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Sun Jan 24 12:30:59 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 28 21:27:00 2010 -0800"
      },
      "message": "sched: add head drop fifo queue\n\nThis adds an additional queuing strategy, called pfifo_head_drop,\nto remove the oldest skb in the case of an overflow within the queue -\nthe head element - instead of the last skb (tail). To remove the oldest\nskb in congested situations is useful for sensor network environments\nwhere newer packets reflect the superior information.\n\nReviewed-by: Florian Westphal \u003cfw@strlen.de\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4ef58d4e2ad1fa2a3e5bbf41af2284671fca8cf8",
      "tree": "856ba96302a36014736747e8464f80eeb827bbdd",
      "parents": [
        "f6c4c8195b5e7878823caa1181be404d9e86d369",
        "d014d043869cdc591f3a33243d3481fa4479c2d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)\n  tree-wide: fix misspelling of \"definition\" in comments\n  reiserfs: fix misspelling of \"journaled\"\n  doc: Fix a typo in slub.txt.\n  inotify: remove superfluous return code check\n  hdlc: spelling fix in find_pvc() comment\n  doc: fix regulator docs cut-and-pasteism\n  mtd: Fix comment in Kconfig\n  doc: Fix IRQ chip docs\n  tree-wide: fix assorted typos all over the place\n  drivers/ata/libata-sff.c: comment spelling fixes\n  fix typos/grammos in Documentation/edac.txt\n  sysctl: add missing comments\n  fs/debugfs/inode.c: fix comment typos\n  sgivwfb: Make use of ARRAY_SIZE.\n  sky2: fix sky2_link_down copy/paste comment error\n  tree-wide: fix typos \"couter\" -\u003e \"counter\"\n  tree-wide: fix typos \"offest\" -\u003e \"offset\"\n  fix kerneldoc for set_irq_msi()\n  spidev: fix double \"of of\" in comment\n  comment typo fix: sybsystem -\u003e subsystem\n  ...\n"
    },
    {
      "commit": "f64f9e719261a87818dd192a3a2352e5b20fbd0f",
      "tree": "b2d5cbaef3df615295f6061d8c4d6a912690556c",
      "parents": [
        "152b6a62aea2d43359dd37004e9c218bf7bdeb3b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Nov 29 16:55:45 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 29 16:55:45 2009 -0800"
      },
      "message": "net: Move \u0026\u0026 and || to end of previous line\n\nNot including net/atm/\n\nCompiled tested x86 allyesconfig only\nAdded a \u003e 80 column line or two, which I ignored.\nExisting checkpatch plaints willfully, cheerfully ignored.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09ad9bc752519cc167d0a573e1acf69b5c707c67",
      "tree": "0e190a9ffb90d7e0534136c3e9f31dce02f423c3",
      "parents": [
        "4ba3eb034fb6fd1990ccc5a6d71d5abcda37b905"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "opurdila@ixiacom.com",
        "time": "Wed Nov 25 15:14:13 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 25 15:14:13 2009 -0800"
      },
      "message": "net: use net_eq to compare nets\n\nGenerated with the following semantic patch\n\n@@\nstruct net *n1;\nstruct net *n2;\n@@\n- n1 \u003d\u003d n2\n+ net_eq(n1, n2)\n\n@@\nstruct net *n1;\nstruct net *n2;\n@@\n- n1 !\u003d n2\n+ !net_eq(n1, n2)\n\napplied over {include,net,drivers/net}.\n\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8964be4a9a5ca8cab1219bb046db2f6d1936227c",
      "tree": "8838c73a03cc69c010b55928fce3725d17bc26a9",
      "parents": [
        "fa9a6fed87df1b50804405e700f8d30251d3aaf1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Nov 20 15:35:04 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 20 15:35:04 2009 -0800"
      },
      "message": "net: rename skb-\u003eiif to skb-\u003eskb_iif\n\nTo help grep games, rename iif to skb_iif\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2939e275994977b6c9eb7fd082b7b0caa35b96b0",
      "tree": "25bb3e0c2b38274b24fd7f808d78f8d083d9e02a",
      "parents": [
        "3505d1a9fd65e2d3e00827857b6795d9d8983658"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 18 23:24:41 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 18 23:24:41 2009 -0800"
      },
      "message": "netsched: Allow var_sk_bound_if meta to work on all namespaces\n\nThis fix can probably wait 2.6.33, or should use another patch\nif needed in 2.6.32 (no get_dev_by_index_rcu() before 2.6.33)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b76965e02bfdd4164c00bf946ff6ca1818ed9fcd",
      "tree": "a1c974ef318524ee7c08fbdef19bf038ff91b89c",
      "parents": [
        "feed1f17241d26261e77ddb5f2fc2a91a3c16739"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Tue Nov 17 04:15:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 17 04:15:38 2009 -0800"
      },
      "message": "act_mirred: optimization.\n\nmove checking if eaction is valid in tcf_mirred_init()\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "feed1f17241d26261e77ddb5f2fc2a91a3c16739",
      "tree": "ff9828b498a5e13dd48277c79a3ef28f0ed62efe",
      "parents": [
        "b2a5decddbe295d09c29d4a8078cdc47a55346df"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Tue Nov 17 04:14:00 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 17 04:15:37 2009 -0800"
      },
      "message": "act_mirred: cleanup\n\n1. don\u0027t let go back using goto.\n2. don\u0027t call skb_act_clone() until it is necessary.\n3. one exit of the critical context.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a1654ba0b50402a6bd03c7b0fe9b0200a5ea7b1",
      "tree": "3defd37672da2069e6c0ffd86b0b99c694324985",
      "parents": [
        "cb43e23435a66d5ed90f804af9efe9096503979f"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Sun Nov 15 07:20:12 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 15 22:08:33 2009 -0800"
      },
      "message": "net: Optimize hard_start_xmit() return checking\n\nRecent changes in the TX error propagation require additional checking\nand masking of values returned from hard_start_xmit(), mainly to\nseparate cases where skb was consumed. This aim can be simplified by\nchanging the order of NETDEV_TX and NET_XMIT codes, because the latter\nare treated similarly to negative (ERRNO) values.\n\nAfter this change much simpler dev_xmit_complete() is also used in\nsch_direct_xmit(), so it is moved to netdevice.h.\n\nAdditionally NET_RX definitions in netdevice.h are moved up from\nbetween TX codes to avoid confusion while reading the TX comment.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "572a9d7b6fc7f20f573664063324c086be310c42",
      "tree": "0ab3655fdfa923b0b9c6c1ee51a2e31e97e9549f",
      "parents": [
        "9ea2bdab11da97b2ac6f87d79976d25fa6d27295"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Nov 10 06:14:14 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 13 14:07:32 2009 -0800"
      },
      "message": "net: allow to propagate errors through -\u003endo_hard_start_xmit()\n\nCurrently the -\u003endo_hard_start_xmit() callbacks are only permitted to return\none of the NETDEV_TX codes. This prevents any kind of error propagation for\nvirtual devices, like queue congestion of the underlying device in case of\nlayered devices, or unreachability in case of tunnels.\n\nThis patches changes the NET_XMIT codes to avoid clashes with the NETDEV_TX\ncodes and changes the two callers of dev_hard_start_xmit() to expect either\nerrno codes, NET_XMIT codes or NETDEV_TX codes as return value.\n\nIn case of qdisc_restart(), all non NETDEV_TX codes are mapped to NETDEV_TX_OK\nsince no error propagation is possible when using qdiscs. In case of\ndev_queue_xmit(), the error is propagated upwards.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1e9016da6d0f16551d90085758ae45d26826118",
      "tree": "c68bd66565e2e78704cfc366ff022adaca75be55",
      "parents": [
        "9e067597ee0e51a07bc158e9e2703ca676920e8b"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Nov 10 07:54:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 10 22:26:30 2009 -0800"
      },
      "message": "net: use rcu for network scheduler API\n\nUse RCU to walk list of network devices in qdisc dump.\nThis could be optimized for large number of devices.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "06fe9fb4182177fb046e6d934f80254dd90956ea",
      "tree": "ae394e643ae90641a6358296b9f9a5c13e79c189",
      "parents": [
        "5b73a41c02002ed2ee6b805d0c3691fb9ab9dc4f"
      ],
      "author": {
        "name": "Dirk Hohndel",
        "email": "hohndel@infradead.org",
        "time": "Mon Sep 28 21:43:57 2009 -0400"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Nov 09 09:40:54 2009 +0100"
      },
      "message": "tree-wide: fix a very frequent spelling mistake\n\nsomething-bility is spelled as something-blity\nso a grep for \u0027blit\u0027 would find these lines\n\nthis is so trivial that I didn\u0027t split it by subsystem / copy\nadditional maintainers - all changes are to comments\nThe only purpose is to get fewer false positives when grepping\naround the kernel sources.\n\nSigned-off-by: Dirk Hohndel \u003chohndel@infradead.org\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "bd27a8750c9b849068d80e298f99940bb7128b33",
      "tree": "606acde68192483fe9800b5b7afc3628857a1e60",
      "parents": [
        "40c9c31e388bfd513269df737f874d0cd53c1616"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Nov 05 20:57:26 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 05 22:34:21 2009 -0800"
      },
      "message": "net_cls: Use __dev_get_by_index()\n\nWe hold RTNL in tc_dump_tfilter(), we can avoid dev_hold()/dev_put()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d0075634cf9d288988f57392a1f132d2053af961",
      "tree": "be60c4ea0c9fc72d8d644a95be0452262c6e7941",
      "parents": [
        "c7079857cd89cb5bc686df1d441db8ef0137abf1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 04 05:23:31 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 04 05:23:31 2009 -0800"
      },
      "message": "em_meta: avoid one dev_put()\n\nAnother rcu conversion to avoid one dev_hold()/dev_put() pair\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c55d62e77fa16cdace417834fc7b8a421a1877f",
      "tree": "24a9a8775beb7b7b0cc8b9d1fba2406ef9bf0643",
      "parents": [
        "188586b28deda2dd4888a306cb6202cc6f408103"
      ],
      "author": {
        "name": "jamal",
        "email": "hadi@cyberus.ca",
        "time": "Thu Oct 15 03:09:18 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 22 21:56:42 2009 -0700"
      },
      "message": "pkt_sched: skbedit add support for setting mark\n\nThis adds support for setting the skb mark.\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "421355de876b9f3fcc7e4cb6026e416fb12a5068",
      "tree": "fb814456af86c75e1eb9e330994dda461fc5b4f7",
      "parents": [
        "aace495933a981274b6491d71b915165a61defdc",
        "0fe7463a35aadfaf22d1ca58325ab3851b8d757c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 12:55:20 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 12:55:20 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "7fe13c5733790ef582769a54693fa6a5abf3c032",
      "tree": "567eb4394b642ddc81ff05521329d75d1cf47b88",
      "parents": [
        "8aa0f64ac3835a6daf84d0b0e07c4c01d7d8eddc",
        "10c435f18b8cb78a5870c08d52955594f5ec9c31"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 11 23:15:47 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 11 23:15:47 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "53f7e35f8b7fc2f5620a863ac613bcf3080cb6ba",
      "tree": "63e2e7a0b1106fc1eeb3417d1310cd2fb5d01c5c",
      "parents": [
        "d1f6803a58e827fda7b810dcb7cbdb490d32ab9e"
      ],
      "author": {
        "name": "jamal",
        "email": "hadi@cyberus.ca",
        "time": "Sun Oct 11 04:21:38 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 11 23:03:47 2009 -0700"
      },
      "message": "pkt_sched: pedit use proper struct\n\nThis probably deserves to go into -stable.\n\nPedit will reject a policy that is large because it\nuses the wrong structure in the policy validation.\nThis fixes it.\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ad61df918c44316940404891d5082c63e79c256a",
      "tree": "a2d2287677479c1f198dc39fe67506712fe558f8",
      "parents": [
        "879e9304134bb6214fb52377ac1e01e1910f4916"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Oct 08 01:21:46 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 08 01:21:46 2009 -0700"
      },
      "message": "netlink: fix typo in initialization\n\nCommit 9ef1d4c7c7aca1cd436612b6ca785b726ffb8ed8 (\"[NETLINK]: Missing\ninitializations in dumped data\") introduced a typo in\ninitialization. This patch fixes this.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d250a5f90e53f5e150618186230795352d154c88",
      "tree": "1c95ec673ce613f346db300d3f5539f018066081",
      "parents": [
        "92d326f61b553250780786e9dd8609d4b32f8de7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 02 10:32:18 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 07 01:07:42 2009 -0700"
      },
      "message": "pkt_sched: gen_estimator: Dont report fake rate estimators\n\nJarek Poplawski a écrit :\n\u003e\n\u003e\n\u003e Hmm... So you made me to do some \"real\" work here, and guess what?:\n\u003e there is one serious checkpatch warning! ;-) Plus, this new parameter\n\u003e should be added to the function description. Otherwise:\n\u003e Signed-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\n\u003e\n\u003e Thanks,\n\u003e Jarek P.\n\u003e\n\u003e PS: I guess full \"Don\u0027t\" would show we really mean it...\n\nOkay :) Here is the last round, before the night !\n\nThanks again\n\n[RFC] pkt_sched: gen_estimator: Don\u0027t report fake rate estimators\n\nWe currently send TCA_STATS_RATE_EST elements to netlink users, even if no estimator\nis running.\n\n# tc -s -d qdisc\nqdisc pfifo_fast 0: dev eth0 root bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1\n Sent 112833764978 bytes 1495081739 pkt (dropped 0, overlimits 0 requeues 0)\n rate 0bit 0pps backlog 0b 0p requeues 0\n\nUser has no way to tell if the \"rate 0bit 0pps\" is a real estimation, or a fake\none (because no estimator is active)\n\nAfter this patch, tc command output is :\n$ tc -s -d qdisc\nqdisc pfifo_fast 0: dev eth0 root bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1\n Sent 561075 bytes 1196 pkt (dropped 0, overlimits 0 requeues 0)\n backlog 0b 0p requeues 0\n\nWe add a parameter to gnet_stats_copy_rate_est() function so that\nit can use gen_estimator_active(bstats, r), as suggested by Jarek.\n\nThis parameter can be NULL if check is not necessary, (htb for\nexample has a mandatory rate estimator)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd589a8f0a13f53a2dd580b1fe170633cf6b095f",
      "tree": "942c50188ca58041b0453189e710eafcfebaea57",
      "parents": [
        "4f37940d64a155c025968118849b596f6aaa8128"
      ],
      "author": {
        "name": "Anand Gadiyar",
        "email": "gadiyar@ti.com",
        "time": "Thu Jul 16 17:13:03 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:55 2009 +0200"
      },
      "message": "trivial: fix typo \"to to\" in multiple files\n\nSigned-off-by: Anand Gadiyar \u003cgadiyar@ti.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "a19d2158439d6fba8160d7d2446f233f525f09e7",
      "tree": "85f54105fb6939efac2c26c3a08db7e543141b6d",
      "parents": [
        "0522fea6505f7b03a82787acdc6ad3066d9b4de3"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Thu Sep 17 10:26:07 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 17 10:26:07 2009 -0700"
      },
      "message": "pkt_sched: Fix qstats.qlen updating in dump_stats\n\nSome classful qdiscs miss qstats.qlen updating with q.qlen of their\nchild qdiscs in dump_stats methods.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c64b9f3f584008000cf3b960f25cd6a68fce191",
      "tree": "2c19bff73b434b12f50304c97758a01751df9aaa",
      "parents": [
        "926e61b7c44db83013159ac2f74bccd451607b5a"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Tue Sep 15 23:42:05 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 15 23:42:05 2009 -0700"
      },
      "message": "pkt_sched: Fix qdisc_create on stab error handling\n\nIf qdisc_get_stab returns error in qdisc_create there is skipped qdisc\nops-\u003edestroy, which is necessary because it\u0027s after ops-\u003einit at the\nmoment, so memory leaks are quite probable.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "926e61b7c44db83013159ac2f74bccd451607b5a",
      "tree": "512b532e22d4374948e0d149902304edfbef7e25",
      "parents": [
        "ca519274d537706b6fb1e3e91238d34a23320584"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Tue Sep 15 02:53:07 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 15 02:53:07 2009 -0700"
      },
      "message": "pkt_sched: Fix tx queue selection in tc_modify_qdisc\n\nAfter the recent mq change there is the new select_queue qdisc class\nmethod used in tc_modify_qdisc, but it works OK only for direct child\nqdiscs of mq qdisc. Grandchildren always get the first tx queue, which\nwould give wrong qdisc_root etc. results (e.g. for sch_htb as child of\nsch_prio). This patch fixes it by using parent\u0027s dev_queue for such\ngrandchildren qdiscs. The select_queue method\u0027s return type is changed\nBTW.\n\nWith feedback from: Patrick McHardy \u003ckaber@trash.net\u003e\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "036d6a673fa0a2e2c5b72a3b1d1b86114c1711c0",
      "tree": "e74fea79b646540d2e766710121459925e3d8922",
      "parents": [
        "d314737ad3bad6b4603b243fd6db572385259690"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Sun Sep 13 22:35:44 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 14 17:03:57 2009 -0700"
      },
      "message": "pkt_sched: Fix qdisc_graft WRT ingress qdisc\n\nAfter the recent mq change using ingress qdisc overwrites dev-\u003eqdisc;\nthere is also a wrong old qdisc pointer passed to notify_and_destroy.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7e9660ad9d5e0845f52848bce31bcf5cdcdea6b",
      "tree": "c6c67d145771187b194d79d603742b31090a59d6",
      "parents": [
        "b8cb48aae1b8c50b37dcb7710363aa69a7a0d9ca",
        "13af7a6ea502fcdd4c0e3d7de6e332b102309491"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:37:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:37:28 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1623 commits)\n  netxen: update copyright\n  netxen: fix tx timeout recovery\n  netxen: fix file firmware leak\n  netxen: improve pci memory access\n  netxen: change firmware write size\n  tg3: Fix return ring size breakage\n  netxen: build fix for INET\u003dn\n  cdc-phonet: autoconfigure Phonet address\n  Phonet: back-end for autoconfigured addresses\n  Phonet: fix netlink address dump error handling\n  ipv6: Add IFA_F_DADFAILED flag\n  net: Add DEVTYPE support for Ethernet based devices\n  mv643xx_eth.c: remove unused txq_set_wrr()\n  ucc_geth: Fix hangs after switching from full to half duplex\n  ucc_geth: Rearrange some code to avoid forward declarations\n  phy/marvell: Make non-aneg speed/duplex forcing work for 88E1111 PHYs\n  drivers/net/phy: introduce missing kfree\n  drivers/net/wan: introduce missing kfree\n  net: force bridge module(s) to be GPL\n  Subject: [PATCH] appletalk: Fix skb leak when ipddp interface is not loaded\n  ...\n\nFixed up trivial conflicts:\n\n - arch/x86/include/asm/socket.h\n\n   converted to \u003casm-generic/socket.h\u003e in the x86 tree.  The generic\n   header has the same new #define\u0027s, so that works out fine.\n\n - drivers/net/tun.c\n\n   fix conflict between 89f56d1e9 (\"tun: reuse struct sock fields\") that\n   switched over to using \u0027tun-\u003esocket.sk\u0027 instead of the redundantly\n   available (and thus removed) \u0027tun-\u003esk\u0027, and 2b980dbd (\"lsm: Add hooks\n   to the TUN driver\") which added a new \u0027tun-\u003esk\u0027 use.\n\n   Noted in \u0027next\u0027 by Stephen Rothwell.\n"
    },
    {
      "commit": "9a0da0d19c573e01aded6ac17747d2efc5b1115f",
      "tree": "76294327bae4b3e45b16c690bda4b24951f237cf",
      "parents": [
        "ec282e9225be924479d4880b51f13524795bd8d3",
        "8a56df0ae1690f8f42a3c6c4532f4b06f93febea"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 10 18:17:09 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 10 18:17:09 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n"
    },
    {
      "commit": "23bcf634c8bc0d84607a5b863333191d58baee4c",
      "tree": "bc988ab6230bebf47e1dc22db70f94901ac2eeb5",
      "parents": [
        "ea6a634ef7f0ab1d1f48ba0ad4f50e96d6065312"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Sep 09 18:11:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 09 18:11:23 2009 -0700"
      },
      "message": "net_sched: fix estimator lock selection for mq child qdiscs\n\nWhen new child qdiscs are attached to the mq qdisc, they are actually\nattached as root qdiscs to the device queues. The lock selection for\nnew estimators incorrectly picks the root lock of the existing and\nto be replaced qdisc, which results in a use-after-free once the old\nqdisc has been destroyed.\n\nMark mq qdisc instances with a new flag and treat qdiscs attached to\nmq as children similar to regular root qdiscs.\n\nAdditionally prevent estimators from being attached to the mq qdisc\nitself since it only updates its byte and packet counters during dumps.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ec1c69a8f6492fd25722f4762721921da074c12",
      "tree": "a78323d1f7f84acbe08c25d7300b935ae4bb7c62",
      "parents": [
        "589983cd21f4a2e4ed74a958805a90fa676845c5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 01:58:51 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 02:07:05 2009 -0700"
      },
      "message": "net_sched: add classful multiqueue dummy scheduler\n\nThis patch adds a classful dummy scheduler which can be used as root qdisc\nfor multiqueue devices and exposes each device queue as a child class.\n\nThis allows to address queues individually and graft them similar to regular\nclasses. Additionally it presents an accumulated view of the statistics of\nall real root qdiscs in the dummy root.\n\nTwo new callbacks are added to the qdisc_ops and qdisc_class_ops:\n\n- cl_ops-\u003eselect_queue selects the tx queue number for new child classes.\n\n- qdisc_ops-\u003eattach() overrides root qdisc device grafting to attach\n  non-shared qdiscs to the queues.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "589983cd21f4a2e4ed74a958805a90fa676845c5",
      "tree": "21ce556958da203400d3e9d30911ff330be39e90",
      "parents": [
        "af356afa010f3cd2c8b8fcc3bce90f7a7b7ec02a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Sep 04 06:41:20 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 02:07:05 2009 -0700"
      },
      "message": "net_sched: move dev_graft_qdisc() to sch_generic.c\n\nIt will be used in a following patch by the multiqueue qdisc.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "af356afa010f3cd2c8b8fcc3bce90f7a7b7ec02a",
      "tree": "302d938363bbaec3e69a58e36dbf8a304b24144c",
      "parents": [
        "5b9a9ccfad8553dbf7a9b17ba78bad70215ed0e2"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Sep 04 06:41:18 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 02:07:03 2009 -0700"
      },
      "message": "net_sched: reintroduce dev-\u003eqdisc for use by sch_api\n\nCurrently the multiqueue integration with the qdisc API suffers from\na few problems:\n\n- with multiple queues, all root qdiscs use the same handle. This means\n  they can\u0027t be exposed to userspace in a backwards compatible fashion.\n\n- all API operations always refer to queue number 0. Newly created\n  qdiscs are automatically shared between all queues, its not possible\n  to address individual queues or restore multiqueue behaviour once a\n  shared qdisc has been attached.\n\n- Dumps only contain the root qdisc of queue 0, in case of non-shared\n  qdiscs this means the statistics are incomplete.\n\nThis patch reintroduces dev-\u003eqdisc, which points to the (single) root qdisc\nfrom userspace\u0027s point of view. Currently it either points to the first\n(non-shared) default qdisc, or a qdisc shared between all queues. The\nfollowing patches will introduce a classful dummy qdisc, which will be used\nas root qdisc and contain the per-queue qdiscs as children.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b9a9ccfad8553dbf7a9b17ba78bad70215ed0e2",
      "tree": "1454e8121fef6635a615f6766b3fdbff678ae63d",
      "parents": [
        "de6d5cdf881353f83006d5f3e28ac4fffd42145e"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Sep 04 06:41:17 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 02:07:02 2009 -0700"
      },
      "message": "net_sched: remove some unnecessary checks in classful schedulers\n\nThe class argument to the -\u003egraft(), -\u003eleaf(), -\u003edump(), -\u003edump_stats() all\noriginate from either -\u003eget() or -\u003ewalk() and are always valid.\n\nRemove unnecessary checks.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de6d5cdf881353f83006d5f3e28ac4fffd42145e",
      "tree": "edc032e4d0a868578780facdd28fb0ee277aadc3",
      "parents": [
        "71ebe5e91947392bc276af713827eab12b6db8e4"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Sep 04 06:41:16 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 02:07:02 2009 -0700"
      },
      "message": "net_sched: make cls_ops-\u003echange and cls_ops-\u003edelete optional\n\nSome schedulers don\u0027t support creating, changing or deleting classes.\nMake the respective callbacks optionally and consistently return\n-EOPNOTSUPP for unsupported operations, instead of currently either\n-EOPNOTSUPP, -ENOSYS or no error.\n\nIn case of sch_prio and sch_multiq, the removed operations additionally\nchecked for an invalid class. This is not necessary since the class\nargument can only orginate from -\u003eget() or in case of -\u003echange is 0\nfor creation of new classes, in which case -\u003echange() incorrectly\nreturned -ENOENT.\n\nAs a side-effect, this patch fixes a possible (root-only) NULL pointer\nfunction call in sch_ingress, which didn\u0027t implement a so far mandatory\n-\u003edelete() operation.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "71ebe5e91947392bc276af713827eab12b6db8e4",
      "tree": "198ff02e23f8606ff2a3bec51c7044ec408e19c4",
      "parents": [
        "c9f1d0389b962521af1e2b699c8ee5e299d77b85"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Sep 04 06:41:15 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 02:06:12 2009 -0700"
      },
      "message": "net_sched: make cls_ops-\u003etcf_chain() optional\n\nSome qdiscs don\u0027t support attaching filters. Handle this centrally in\ncls_api and return a proper errno code (EOPNOTSUPP) instead of EINVAL.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9f1d0389b962521af1e2b699c8ee5e299d77b85",
      "tree": "e317e8b012be8b31b303bdb3f6ee5e3929de0a7b",
      "parents": [
        "b1f57195585e376d1944c32c046359640b06a669"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Sep 04 06:41:13 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 04 23:10:15 2009 -0700"
      },
      "message": "net_sched: fix class grafting errno codes\n\nIf the parent qdisc doesn\u0027t support classes, use EOPNOTSUPP.\nIf the parent class doesn\u0027t exist, use ENOENT. Currently EINVAL\nis returned in both cases.\n\nAdditionally check whether grafting is supported and remove a now\nunnecessary graft function from sch_ingress.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "16ebb5e0b36ceadc8186f71d68b0c4fa4b6e781b",
      "tree": "4a89b7591d0f4478d0dda12db649db2d94d16929",
      "parents": [
        "2fbd3da3877ad8d923b055e5996f80b4d4a6daf4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 02 02:40:09 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 22:55:17 2009 -0700"
      },
      "message": "tc: Fix unitialized kernel memory leak\n\nThree bytes of uninitialized kernel memory are currently leaked to user\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nReviewed-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6cdee2f96a97f6da26bd3759c3f8823332fbb438",
      "tree": "ec79086f05ffc3bdf1aecc37e108ccfc3a95450d",
      "parents": [
        "0625491493d9000e4556bf566d205c28c8e7dc4e",
        "2fbd3da3877ad8d923b055e5996f80b4d4a6daf4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 00:32:56 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 00:32:56 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/yellowfin.c\n"
    },
    {
      "commit": "2fbd3da3877ad8d923b055e5996f80b4d4a6daf4",
      "tree": "7caa4ea3f3517d2f6b38142f64527c82b8e57b2e",
      "parents": [
        "d66ee0587c3927aea5178a822976c7c853d815fe"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:59:25 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:59:25 2009 -0700"
      },
      "message": "pkt_sched: Revert tasklet_hrtimer changes.\n\nThese are full of unresolved problems, mainly that conversions don\u0027t\nwork 1-1 from hrtimers to tasklet_hrtimers because unlike hrtimers\ntasklets can\u0027t be killed from softirq context.\n\nAnd when a qdisc gets reset, that\u0027s exactly what we need to do here.\n\nWe\u0027ll work this out in the net-next-2.6 tree and if warranted we\u0027ll\nbackport that work to -stable.\n\nThis reverts the following 3 changesets:\n\na2cb6a4dd470d7a64255a10b843b0d188416b78f\n(\"pkt_sched: Fix bogon in tasklet_hrtimer changes.\")\n\n38acce2d7983632100a9ff3fd20295f6e34074a8\n(\"pkt_sched: Convert CBQ to tasklet_hrtimer.\")\n\nee5f9757ea17759e1ce5503bdae2b07e48e32af9\n(\"pkt_sched: Convert qdisc_watchdog to tasklet_hrtimer\")\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6fef4c0c8eeff7de13007a5f56113475444a253d",
      "tree": "216bafb88ab84c5e0a048598cd6c05f7eb8f438d",
      "parents": [
        "dc1f8bf68b311b1537cb65893430b6796118498a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Aug 31 19:50:41 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 01:13:07 2009 -0700"
      },
      "message": "netdev: convert pseudo-devices to netdev_tx_t\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a453e0689a3ccf85c08cb89753d7685046248c5c",
      "tree": "a85542ee234e7b9fe4f6a4a1837d4a99139c7e73",
      "parents": [
        "03a9a447d2dab755b22df79b5e205fdbb9b2c851"
      ],
      "author": {
        "name": "Krishna Kumar",
        "email": "krkumar2@in.ibm.com",
        "time": "Sun Aug 30 22:20:28 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 30 22:20:28 2009 -0700"
      },
      "message": "pkt_sched: Fix resource limiting in pfifo_fast\n\npfifo_fast_enqueue has this check:\n        if (skb_queue_len(list) \u003c qdisc_dev(qdisc)-\u003etx_queue_len) {\n\nwhich allows each band to enqueue upto tx_queue_len skbs for a\ntotal of 3*tx_queue_len skbs. I am not sure if this was the\nintention of limiting in qdisc.\n\nPatch compiled and 32 simultaneous netperf testing ran fine. Also:\n# tc -s qdisc show dev eth2\nqdisc pfifo_fast 0: root bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1\n Sent 16835026752 bytes 373116 pkt (dropped 0, overlimits 0 requeues 25) \n rate 0bit 0pps backlog 0b 0p requeues 25 \n\nSigned-off-by: Krishna Kumar \u003ckrkumar2@in.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd3ae5e8fc5e947a9f151e80a65763a24b6368a9",
      "tree": "2842160866656f5573aea96fc90893ad0f0d3a23",
      "parents": [
        "31ce8c71a3bdab12debb5899b1f6dac13e54c71d"
      ],
      "author": {
        "name": "Krishna Kumar",
        "email": "krkumar2@in.ibm.com",
        "time": "Tue Aug 18 21:55:59 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 29 00:19:21 2009 -0700"
      },
      "message": "Speed-up pfifo_fast lookup using a private bitmap\n\nMaintain a per-qdisc bitmap for pfifo_fast giving  availability\nof skbs for each band. This allows faster lookup for a skb when\nthere are no high priority skbs. Also, it helps in (rare) cases\nwhen there are no skbs on the list, where an immediate lookup is\nfaster than iterating through the three bands.\n\nSigned-off-by: Krishna Kumar \u003ckrkumar2@in.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3a6c2b419b7768703cfb2cabdb894517c5065e33",
      "tree": "d8d8dc9ad34ffdd2f0f56876e9d3b6f0e6d5eceb",
      "parents": [
        "74f7a6552c8d76ffc5e11eb8d9d6c07238b9ae77"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 25 16:07:40 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 25 16:07:40 2009 +0200"
      },
      "message": "netlink: constify nlmsghdr arguments\n\nConsitfy nlmsghdr arguments to a couple of functions as preparation\nfor the next patch, which will constify the netlink message data in\nall nfnetlink users.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "a2cb6a4dd470d7a64255a10b843b0d188416b78f",
      "tree": "33596c7aa4b444e96b112d92173e88dc8ea8a8d7",
      "parents": [
        "8ff499e43c537648399fca8ba39d24c0768b3fab"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 24 19:37:05 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 24 19:37:05 2009 -0700"
      },
      "message": "pkt_sched: Fix bogon in tasklet_hrtimer changes.\n\nReported by Stephen Rothwell, luckily it\u0027s harmless:\n\nnet/sched/sch_api.c: In function \u0027qdisc_watchdog\u0027:\nnet/sched/sch_api.c:460: warning: initialization from incompatible pointer type\nnet/sched/sch_cbq.c: In function \u0027cbq_undelay\u0027:\nnet/sched/sch_cbq.c:595: warning: initialization from incompatible pointer type\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "38acce2d7983632100a9ff3fd20295f6e34074a8",
      "tree": "9207518005cc12ae5e4642b8220471a0168f8c89",
      "parents": [
        "ee5f9757ea17759e1ce5503bdae2b07e48e32af9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 21 16:51:38 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 23 18:52:38 2009 -0700"
      },
      "message": "pkt_sched: Convert CBQ to tasklet_hrtimer.\n\nThis code expects to run in softirq context, and bare hrtimers\nrun in hw IRQ context.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ee5f9757ea17759e1ce5503bdae2b07e48e32af9",
      "tree": "0625fdaf307890a0875981d28ecb77e7ddd96143",
      "parents": [
        "649bf17829d087f83754e2a8161e094a167ce3d3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 21 16:33:34 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 22 18:09:17 2009 -0700"
      },
      "message": "pkt_sched: Convert qdisc_watchdog to tasklet_hrtimer\n\nNone of this stuff should execute in hw IRQ context, therefore\nuse a tasklet_hrtimer so that it runs in softirq context.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c1a8f1f1c8e01eab5862c8db39b49ace814e6c66",
      "tree": "0679f709f70d9a91850888636a28adb79940c402",
      "parents": [
        "c6ba973b8fa97422aab4204f7d79f1d413cde925"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Aug 16 09:36:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 17 21:33:49 2009 -0700"
      },
      "message": "net: restore gnet_stats_basic to previous definition\n\nIn 5e140dfc1fe87eae27846f193086724806b33c7d \"net: reorder struct Qdisc\nfor better SMP performance\" the definition of struct gnet_stats_basic\nchanged incompatibly, as copies of this struct are shipped to\nuserland via netlink.\n\nRestoring old behavior is not welcome, for performance reason.\n\nFix is to use a private structure for kernel, and\nteach gnet_stats_copy_basic() to convert from kernel to user land,\nusing legacy structure (struct gnet_stats_basic)\n\nBased on a report and initial patch from Michael Spang.\n\nReported-by: Michael Spang \u003cmspang@csclub.uwaterloo.ca\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bbd8a0d3a3b65d341437f8b99c828fa5cc29c739",
      "tree": "a4055c65be5ce3f8fd4987a32a38dfab1642ec95",
      "parents": [
        "9f519f68cfffba022978634f724944a0b971fec1"
      ],
      "author": {
        "name": "Krishna Kumar",
        "email": "krkumar2@in.ibm.com",
        "time": "Thu Aug 06 01:44:21 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 06 20:10:18 2009 -0700"
      },
      "message": "net: Avoid enqueuing skb for default qdiscs\n\ndev_queue_xmit enqueue\u0027s a skb and calls qdisc_run which\ndequeue\u0027s the skb and xmits it. In most cases, the skb that\nis enqueue\u0027d is the same one that is dequeue\u0027d (unless the\nqueue gets stopped or multiple cpu\u0027s write to the same queue\nand ends in a race with qdisc_run). For default qdiscs, we\ncan remove the redundant enqueue/dequeue and simply xmit the\nskb since the default qdisc is work-conserving.\n\nThe patch uses a new flag - TCQ_F_CAN_BYPASS to identify the\ndefault fast queue. The controversial part of the patch is\nincrementing qlen when a skb is requeued - this is to avoid\nchecks like the second line below:\n\n+  } else if ((q-\u003eflags \u0026 TCQ_F_CAN_BYPASS) \u0026\u0026 !qdisc_qlen(q) \u0026\u0026\n\u003e\u003e         !q-\u003egso_skb \u0026\u0026\n+          !test_and_set_bit(__QDISC_STATE_RUNNING, \u0026q-\u003estate)) {\n\nResults of a 2 hour testing for multiple netperf sessions (1,\n2, 4, 8, 12 sessions on a 4 cpu system-X). The BW numbers are\naggregate Mb/s across iterations tested with this version on\nSystem-X boxes with Chelsio 10gbps cards:\n\n----------------------------------\nSize |  ORG BW          NEW BW   |\n----------------------------------\n128K |  156964          159381   |\n256K |  158650          162042   |\n----------------------------------\n\nChanges from ver1:\n\n1. Move sch_direct_xmit declaration from sch_generic.h to\n   pkt_sched.h\n2. Update qdisc basic statistics for direct xmit path.\n3. Set qlen to zero in qdisc_reset.\n4. Changed some function names to more meaningful ones.\n\nSigned-off-by: Krishna Kumar \u003ckrkumar2@in.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ed106549d17474ca17a16057f4c0ed4eba5a7ca",
      "tree": "b98c09081509b3a9757339b6b66779e4126dfa29",
      "parents": [
        "0e8635a8e1f2d4a9e1bfc6c3b21419a5921e674f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 23 06:03:08 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 05 19:16:04 2009 -0700"
      },
      "message": "net: use NETDEV_TX_OK instead of 0 in ndo_start_xmit() functions\n\nThis patch is the result of an automatic spatch transformation to convert\nall ndo_start_xmit() return values of 0 to NETDEV_TX_OK.\n\nSome occurences are missed by the automatic conversion, those will be\nhandled in a seperate patch.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "31e6d363abcd0d05766c82f1a9c905a4c974a199",
      "tree": "f2b5c46354d95f91e743ae748b8add0de8bffd17",
      "parents": [
        "d3b238a03efd6d644ff93c8b10a1d38a596f2e34"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jun 17 19:05:41 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 18 00:29:12 2009 -0700"
      },
      "message": "net: correct off-by-one write allocations reports\n\ncommit 2b85a34e911bf483c27cfdd124aeb1605145dc80\n(net: No more expensive sock_hold()/sock_put() on each tx)\nchanged initial sk_wmem_alloc value.\n\nWe need to take into account this offset when reporting\nsk_wmem_alloc to user, in PROC_FS files or various\nioctls (SIOCOUTQ/TIOCOUTQ)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b964758050f856e44f5fe645d03bea8a1b0b66bd",
      "tree": "086f12ef757a245a410e00fb46e410495c456b3d",
      "parents": [
        "e4f1482e686212e6d1dd6df93888bb26344981c6"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Tue Jun 16 08:33:55 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 17 18:56:45 2009 -0700"
      },
      "message": "pkt_sched: Update drops stats in act_police\n\nAction police statistics could be misleading because drops are not\nshown when expected.\n\nWith feedback from: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\n\nReported-by: Pawel Staszewski \u003cpstaszewski@itcare.pl\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nAcked-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cbc1cb8cd46ce1f7645b9de249b2ce8460129bb",
      "tree": "8d104ec2a459346b99413b0b77421ca7b9936c1a",
      "parents": [
        "ca44d6e60f9de26281fda203f58b570e1748c015",
        "45e3e1935e2857c54783291107d33323b3ef33c8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 15 03:02:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 15 03:02:23 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/scsi/fcoe/fcoe.c\n\tnet/core/drop_monitor.c\n\tnet/core/net-traces.c\n"
    },
    {
      "commit": "ca44d6e60f9de26281fda203f58b570e1748c015",
      "tree": "9620f3f91836f608a084acb78d1a178135cfd3b0",
      "parents": [
        "e0f7cb8c8cc6cccce28d2ce39ad8c60d23c3799f"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Jun 15 02:31:47 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 15 02:31:47 2009 -0700"
      },
      "message": "pkt_sched: Rename PSCHED_US2NS and PSCHED_NS2US\n\nLet\u0027s use TICKS instead of US, so PSCHED_TICKS2NS and PSCHED_NS2TICKS\n(like in PSCHED_TICKS_PER_SEC already) to avoid misleading.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b548140225c6bbbbd560551dd1048b2c0ce58be",
      "tree": "9306a37dbca0095ca6d88e0b0ab297bcb2dc5ae8",
      "parents": [
        "5b2c4b972c0226406361f83b747eb5cdab51e68e"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jun 12 06:22:29 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 01:18:50 2009 -0700"
      },
      "message": "net: use symbolic values for ndo_start_xmit() return codes\n\nConvert magic values 1 and -1 to NETDEV_TX_BUSY and NETDEV_TX_LOCKED respectively.\n\n0 (NETDEV_TX_OK) is not changed to keep the noise down, except in very few cases\nwhere its in direct proximity to one of the other values.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "728bf09827d350cdaa1f093170e745e8dac49b7a",
      "tree": "2a493b68ce1414ff9ae91d759d2ffe2f4fb4560a",
      "parents": [
        "0c27922e4933ceb86644f4a9b1af212ffe5aad75"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Jun 08 22:05:00 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 09 05:25:29 2009 -0700"
      },
      "message": "pkt_sched: Use PSCHED_SHIFT in PSCHED time conversion\n\nUse PSCHED_SHIFT constant instead of \u002710\u0027 in PSCHED_US2NS() and\nPSCHED_NS2US() macros to enable changing this value later.\n\nAdditionally use PSCHED_SHIFT in sch_hfsc SM_SHIFT and ISM_SHIFT\ndefinitions. This part of the patch is based on feedback from\nPatrick McHardy \u003ckaber@trash.net\u003e.\n\nReported-by: Antonio Almeida \u003cvexwek@gmail.com\u003e\nTested-by: Antonio Almeida \u003cvexwek@gmail.com\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52ea3a56a3268bc2a5a7c75e98c81463004e38ef",
      "tree": "4f99bbf8015d252c1a145a1b610db9eddb192f98",
      "parents": [
        "fdd7b4c3302c93f6833e338903ea77245eb510b4"
      ],
      "author": {
        "name": "Minoru Usui",
        "email": "usui@mxm.nes.nec.co.jp",
        "time": "Tue Jun 09 04:03:09 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 09 04:03:09 2009 -0700"
      },
      "message": "cls_cgroup: Fix oops when user send improperly \u0027tc filter add\u0027 request\n\nI found a bug in cls_cgroup_change() in cls_cgroup.c.\ncls_cgroup_change() expected tca[TCA_OPTIONS] was set from user space properly,\nbut tc in iproute2-2.6.29-1 (which I used) didn\u0027t set it.\n\nIn the current source code of tc in git, it set tca[TCA_OPTIONS].\n\n  git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git\n\nIf we always use a newest iproute2 in git when we use cls_cgroup, \nwe don\u0027t face this oops probably.\nBut I think, kernel shouldn\u0027t panic regardless of use program\u0027s behaviour. \n\nSigned-off-by: Minoru Usui \u003cusui@mxm.nes.nec.co.jp\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "adf30907d63893e4208dfe3f5c88ae12bc2f25d5",
      "tree": "0f07542bb95de2ad537540868aba6cf87a86e17d",
      "parents": [
        "511c3f92ad5b6d9f8f6464be1b4f85f0422be91a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jun 02 05:19:30 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 03 02:51:04 2009 -0700"
      },
      "message": "net: skb-\u003edst accessors\n\nDefine three accessors to get/set dst attached to a skb\n\nstruct dst_entry *skb_dst(const struct sk_buff *skb)\n\nvoid skb_dst_set(struct sk_buff *skb, struct dst_entry *dst)\n\nvoid skb_dst_drop(struct sk_buff *skb)\nThis one should replace occurrences of :\ndst_release(skb-\u003edst)\nskb-\u003edst \u003d NULL;\n\nDelete skb-\u003edst field\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "511c3f92ad5b6d9f8f6464be1b4f85f0422be91a",
      "tree": "3e368d9a78f87eb9dd7ff9e57f4aab3f4a96e3b1",
      "parents": [
        "dfbf97f3ac980b69dfbc41c83a208211a38443e8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jun 02 05:14:27 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 03 02:51:02 2009 -0700"
      },
      "message": "net: skb-\u003ertable accessor\n\nDefine skb_rtable(const struct sk_buff *skb) accessor to get rtable from skb\n\nDelete skb-\u003ertable field\n\nSetting rtable is not allowed, just set dst instead as rtable is an alias.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2f8f7525c8aa1fdd8ad8c72c832dfb571d5f768",
      "tree": "71ae1801d264bca62efa0d22376b49de7f206e9a",
      "parents": [
        "d455e5b165a367a628110ec2d18807ea10052cd1",
        "12186be7d2e1106cede1cc728526e3d7998cbe94"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 03 02:43:41 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 03 02:43:41 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/forcedeth.c\n"
    },
    {
      "commit": "12186be7d2e1106cede1cc728526e3d7998cbe94",
      "tree": "a27e9c1cf720fbd31d67c27ea1426a0ae891733b",
      "parents": [
        "ea30e11970a96cfe5e32c03a29332554573b4a10"
      ],
      "author": {
        "name": "Minoru Usui",
        "email": "usui@mxm.nes.nec.co.jp",
        "time": "Tue Jun 02 02:17:34 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 02 02:17:34 2009 -0700"
      },
      "message": "net_cls: fix unconfigured struct tcf_proto keeps chaining and avoid kernel panic when we use cls_cgroup\n\nThis patch fixes a bug which unconfigured struct tcf_proto keeps\nchaining in tc_ctl_tfilter(), and avoids kernel panic in\ncls_cgroup_classify() when we use cls_cgroup.\n\nWhen we execute \u0027tc filter add\u0027, tcf_proto is allocated, initialized\nby classifier\u0027s init(), and chained.  After it\u0027s chained,\ntc_ctl_tfilter() calls classifier\u0027s change().  When classifier\u0027s\nchange() fails, tc_ctl_tfilter() does not free and keeps tcf_proto.\n\nIn addition, cls_cgroup is initialized in change() not in init().  It\naccesses unconfigured struct tcf_proto which is chained before\nchange(), then hits Oops.\n\nSigned-off-by: Minoru Usui \u003cusui@mxm.nes.nec.co.jp\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nTested-by: Minoru Usui \u003cusui@mxm.nes.nec.co.jp\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e65fcfd63a9a62baa5708484ff8edbe56eb3e7ec",
      "tree": "0d21a21c2b87ef1c8db600d6abed3ba3e22cdaef",
      "parents": [
        "7682455ec36fce70bdbad9f739de05060dedfa27"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Tue May 26 20:47:02 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 26 20:47:02 2009 -0700"
      },
      "message": "cls_cgroup: read classid atomically in classifier\n\nAvoid reading the unsynchronized value cs-\u003eclassid multiple times,\nsince it could change concurrently from non-zero to zero; this would\nresult in the classifier returning a positive result with a bogus\n(zero) classid.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "08baf561083bc27a953aa087dd8a664bb2b88e8e",
      "tree": "979d92224e21b69368a27bb684b74b3d4d744183",
      "parents": [
        "65ac8851490ec97a96759af729132c96f925a795"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon May 25 22:58:01 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 25 22:58:01 2009 -0700"
      },
      "message": "net: txq_trans_update() helper\n\nWe would like to get rid of netdev-\u003etrans_start \u003d jiffies; that about all net\ndrivers have to use in their start_xmit() function, and use txq-\u003etrans_start\ninstead.\n\nThis can be done generically in core network, as suggested by David.\n\nSome devices, (particularly loopback) dont need trans_start update, because\nthey dont have transmit watchdog. We could add a new device flag, or rely\non fact that txq-\u003etran_start can be updated is txq-\u003exmit_lock_owner is\ndifferent than -1. Use a helper function to hide our choice.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab35cd4b8f42b5e4a9338949581a510e98503b28",
      "tree": "06b66cc8e2696f88e3ecf101863d8ed667eb4c1d",
      "parents": [
        "0cefafadbbe3947fd97b7560a214eb486069faac"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue May 19 15:16:34 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 19 15:36:15 2009 -0700"
      },
      "message": "sch_teql: Use net_device internal stats\n\nWe can slightly reduce size of teqlN structure, not duplicating stats\nstructure in teql_master but using stats field from net_device.stats\nfor tx_errors and from netdev_queue for tx_bytes/tx_packets/tx_dropped\nvalues.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb803cfbecb03a0cf8dc7e1864f18dda6631af00",
      "tree": "6c0989693bea6f50cfa5c6bb14f52ec19668def3",
      "parents": [
        "3878fb6fdbceecca20b15748f807340854220f06",
        "511e11e396dc596825ce04d53d7f6d579404bc01"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 21:08:20 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 21:08:20 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/scsi/fcoe/fcoe.c\n"
    },
    {
      "commit": "c0f84d0d4be3f7d818b4ffb04d27f9bae64397f0",
      "tree": "e36a3f3e2d5cdbc9dfdbd2c5dd4857d93d8776b9",
      "parents": [
        "775273131810caa41dfc7f9e552ea5d8508caf40"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon May 18 15:12:31 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 15:12:31 2009 -0700"
      },
      "message": "sch_teql: should not dereference skb after ndo_start_xmit()\n\nIt is illegal to dereference a skb after a successful ndo_start_xmit()\ncall. We must store skb length in a local variable instead.\n\nBug was introduced in 2.6.27 by commit 0abf77e55a2459aa9905be4b226e4729d5b4f0cb\n(net_sched: Add accessor function for packet length for qdiscs)\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d21493b4beb8f918ba248032fefa393074a5e2b",
      "tree": "653590f3e325da5c4c1fc7d2c00bc196a3167f9d",
      "parents": [
        "0a305720ee597aad41af61e6b6844321d3e24251"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sun May 17 20:55:16 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 17 20:55:16 2009 -0700"
      },
      "message": "net: tx scalability works : trans_start\n\nstruct net_device trans_start field is a hot spot on SMP and high performance\ndevices, particularly multi queues ones, because every transmitter dirties\nit. Is main use is tx watchdog and bonding alive checks.\n\nBut as most devices dont use NETIF_F_LLTX, we have to lock\na netdev_queue before calling their ndo_start_xmit(). So it makes\nsense to move trans_start from net_device to netdev_queue. Its update\nwill occur on a already present (and in exclusive state) cache line, for\nfree.\n\nWe can do this transition smoothly. An old driver continue to\nupdate dev-\u003etrans_start, while an updated one updates txq-\u003etrans_start.\n\nFurther patches could also put tx_bytes/tx_packets counters in \nnetdev_queue to avoid dirtying dev-\u003estats (vlan device comes to mind)\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb1c4b71f6da18fa98bab4af055f391d01bee8ba",
      "tree": "930bdf761d1dfa6a6ef4732866378f3fb37ad5bd",
      "parents": [
        "3a6d54c56326c29c5357655779cfe6cf36481b17"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue May 12 10:47:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 17 11:59:48 2009 -0700"
      },
      "message": "cls_cgroup: remove unneeded cgroup_lock\n\nWe can remove this lock here, since we are in cgroup write handler and\nthus the cgrp is guaranteed to be valid, and no lock is needed when\nwriting a u32 variable.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsuc.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6473990c7f0565fca2007f8662395d122e30f0d8",
      "tree": "07ffb4657f49dc3fc6e53167da5053e15c2492ef",
      "parents": [
        "77a22941f9ed052a0fdaa92753b1a1ab8072ee76"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed May 06 16:45:07 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 06 16:45:07 2009 -0700"
      },
      "message": "net-sched: fix bfifo default limit\n\nWhen no limit is given, the bfifo uses a default of tx_queue_len * mtu.\nPackets handled by qdiscs include the link layer header, so this should\nbe taken into account, similar to what other qdiscs do.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d0ab8ff81bf1b01bae7d6b92ca067badbbb02cc9",
      "tree": "872f9521e3f51018be9afd9492e7509e42478621",
      "parents": [
        "1824a9897473fda5e5e42f991ddc674c175e3a09"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Sat May 02 13:48:32 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 02 13:48:32 2009 -0700"
      },
      "message": "net: Only store high 16 bits of kernel generated filter priorities\n\nThe kernel should only be using the high 16 bits of a kernel\ngenerated priority. Filter priorities in all other cases only\nuse the upper 16 bits of the u32 \u0027prio\u0027 field of \u0027struct tcf_proto\u0027,\nbut when the kernel generates the priority of a filter is saves all\n32 bits which can result in incorrect lookup failures when a filter\nneeds to be deleted or modified.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8caf153974f2274301e583fda732cc8e5b80331f",
      "tree": "d7f52b67e74b4bb4c81f2a4c34dae912a608f6fc",
      "parents": [
        "c7c1a0f60b90955855ba8cd9cfc480167bf6c3da"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Fri Apr 17 10:08:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 20 02:14:59 2009 -0700"
      },
      "message": "net: sch_netem: Fix an inconsistency in ingress netem timestamps.\n\nAlex Sidorenko reported:\n\n\"while experimenting with \u0027netem\u0027 we have found some strange behaviour. It\nseemed that ingress delay as measured by \u0027ping\u0027 command shows up on some\nhosts but not on others.\n\nAfter some investigation I have found that the problem is that skbuff-\u003etstamp\nfield value depends on whether there are any packet sniffers enabled. That\nis:\n\n- if any ptype_all handler is registered, the tstamp field is as expected\n- if there are no ptype_all handlers, the tstamp field does not show the delay\"\n\nThis patch prevents unnecessary update of tstamp in dev_queue_xmit_nit()\non ingress path (with act_mirred) adding a check, so minimal overhead on\nthe fast path, but only when sniffers etc. are active.\n\nSince netem at ingress seems to logically emulate a network before a host,\ntstamp is zeroed to trigger the update and pretend delays are from the\noutside.\n\nReported-by: Alex Sidorenko \u003calexandre.sidorenko@hp.com\u003e\nTested-by: Alex Sidorenko \u003calexandre.sidorenko@hp.com\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a31f2042e938f1b467aa3d807cc5666352bf8a3",
      "tree": "77460f7f79be0579b5686b629fe218750da261b9",
      "parents": [
        "1db9e29bb0ff3c9366e8a50fb09ca8dbc364bfd6"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Apr 13 18:12:57 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 13 18:12:57 2009 -0700"
      },
      "message": "netsched: Allow meta match on vlan tag on receive\n\nWhen vlan acceleration is used on receive, the vlan tag is maintained\noutside of the skb data. The existing vlan tag match only works on TX\npath because it uses vlan_get_tag which tests for VLAN_HW_TX_ACCEL.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0bffffc148cd8e75a48a89ad2ddb74e4081a20a",
      "tree": "3a4d350d65d88bb1df8906b4822af2350ceb1cfc",
      "parents": [
        "a3ac80a130300573de351083cf4a5b46d233e8bf"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 21 13:36:17 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 21 13:36:17 2009 -0700"
      },
      "message": "net/*: use linux/kernel.h swap()\n\ntcp_sack_swap seems unnecessary so I pushed swap to the caller.\nAlso removed comment that seemed then pointless, and added include\nwhen not already there. Compile tested.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7cd0a63872ac6ef97265f07adc367ca4f984468e",
      "tree": "44265aa422b3133b07eee87280cca3c89225437a",
      "parents": [
        "8bdd663aba341c15cd2fa9dbd7061b8b387964dc"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Sun Mar 15 20:00:19 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 15 20:00:19 2009 -0700"
      },
      "message": "pkt_sched: Change misleading code in class delete.\n\nWhile looking for a possible reason of bugzilla report on HTB oops:\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d12858\nI found the code in htb_delete calling htb_destroy_class on zero\nrefcount is very misleading: it can suggest this is a common path, and\ndestroy is called under sch_tree_lock. Actually, this can never happen\nlike this because before deletion cops-\u003eget() is done, and after\ndelete a class is still used by tclass_notify. The class destroy is\nalways called from cops-\u003eput(), so without sch_tree_lock.\n\nThis doesn\u0027t mean much now (since 2.6.27) because all vulnerable calls\nwere moved from htb_destroy_class to htb_delete, but there was a bug\nin older kernels. The same change is done for other classful scheds,\nwhich, it seems, didn\u0027t have similar locking problems here.\n\nReported-by: m0sia \u003cm0sia@m0sia.ru\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "508827ff0ac3981d420edac64a70de7f4e304d38",
      "tree": "b0cee8ddef9f0ceab68c388e4ae46b7295eb2cb5",
      "parents": [
        "2c3c3d02f28801d7ad2da4952b2c7ca6621ef221",
        "72e2240f181871675d3a979766330c91d48a1673"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 05 02:06:47 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 05 02:06:47 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/tokenring/tmspci.c\n\tdrivers/net/ucc_geth_mii.c\n"
    },
    {
      "commit": "a883bf564ea555447a76682bb2d8d4bc92e23e0e",
      "tree": "211994ddc25999320fe47d2a58ba8105e00dfee7",
      "parents": [
        "9f8ac0b7b063be77f0de7a27fe5e6a0aa2cce58d"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Wed Mar 04 17:38:10 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 04 17:38:10 2009 -0800"
      },
      "message": "pkt_sched: act_police: Fix a rate estimator test.\n\nA commit c1b56878fb68e9c14070939ea4537ad4db79ffae \"tc: policing requires\na rate estimator\" introduced a test which invalidates previously working\nconfigs, based on examples from iproute2: doc/actions/actions-general.\nThis is too rigorous: a rate estimator is needed only when police\u0027s\n\"avrate\" option is used.\n\nReported-by: Joao Correia \u003cjoaomiguelcorreia@gmail.com\u003e\nDiagnosed-by: John Dykstra \u003cjohn.dykstra1@gmail.com\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa4abc9bcce0d2a7ec189e897f8f8c58ca04643b",
      "tree": "22ef88d84a2e06380bb6a853c3ba28657e4e5f92",
      "parents": [
        "814c01dc7c533033b4e99981a2e24a6195bfb43c",
        "52c0326beaa3cb0049d0f1c51c6ad5d4a04e4430"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 21:35:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 21:35:16 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-tx.c\n\tnet/8021q/vlan_core.c\n\tnet/core/dev.c\n"
    }
  ],
  "next": "1844f747947bb89d7f12cd3034548805113f764b"
}
