)]}'
{
  "log": [
    {
      "commit": "767e97e1e0db0d0f3152cd2f3bd3403596aedbad",
      "tree": "cda6089e75f98fc3c9812993cf790fccac98b67a",
      "parents": [
        "546add79468183f266c75c632c96e4b0029e0d96"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Oct 06 17:49:21 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 06 18:01:33 2010 -0700"
      },
      "message": "neigh: RCU conversion of struct neighbour\n\nThis is the second step for neighbour RCU conversion.\n\n(first was commit d6bf7817 : RCU conversion of neigh hash table)\n\nneigh_lookup() becomes lockless, but still take a reference on found\nneighbour. (no more read_lock()/read_unlock() on tbl-\u003elock)\n\nstruct neighbour gets an additional rcu_head field and is freed after an\nRCU grace period.\n\nFuture work would need to eventually not take a reference on neighbour\nfor temporary dst (DST_NOCACHE), but this would need dst-\u003e_neighbour to\nuse a noref bit like we did for skb-\u003e_dst.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebc0ffae5dfb4447e0a431ffe7fe1d467c48bbb9",
      "tree": "395e50547ffccc6b73e04a44190eb4b4f2d2316b",
      "parents": [
        "c2952c314b4fe61820ba8fd6c949eed636140d52"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Oct 05 10:41:36 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 20:39:38 2010 -0700"
      },
      "message": "fib: RCU conversion of fib_lookup()\n\nfib_lookup() converted to be called in RCU protected context, no\nreference taken and released on a contended cache line (fib_clntref)\n\nfib_table_lookup() and fib_semantic_match() get an additional parameter.\n\nstruct fib_info gets an rcu_head field, and is freed after an rcu grace\nperiod.\n\nStress test :\n(Sending 160.000.000 UDP frames on same neighbour,\nIP route cache disabled, dual E5540 @2.53GHz,\n32bit kernel, FIB_HASH) (about same results for FIB_TRIE)\n\nBefore patch :\n\nreal\t1m31.199s\nuser\t0m13.761s\nsys\t23m24.780s\n\nAfter patch:\n\nreal\t1m5.375s\nuser\t0m14.997s\nsys\t15m50.115s\n\nBefore patch Profile :\n\n13044.00 15.4% __ip_route_output_key vmlinux\n 8438.00 10.0% dst_destroy           vmlinux\n 5983.00  7.1% fib_semantic_match    vmlinux\n 5410.00  6.4% fib_rules_lookup      vmlinux\n 4803.00  5.7% neigh_lookup          vmlinux\n 4420.00  5.2% _raw_spin_lock        vmlinux\n 3883.00  4.6% rt_set_nexthop        vmlinux\n 3261.00  3.9% _raw_read_lock        vmlinux\n 2794.00  3.3% fib_table_lookup      vmlinux\n 2374.00  2.8% neigh_resolve_output  vmlinux\n 2153.00  2.5% dst_alloc             vmlinux\n 1502.00  1.8% _raw_read_lock_bh     vmlinux\n 1484.00  1.8% kmem_cache_alloc      vmlinux\n 1407.00  1.7% eth_header            vmlinux\n 1406.00  1.7% ipv4_dst_destroy      vmlinux\n 1298.00  1.5% __copy_from_user_ll   vmlinux\n 1174.00  1.4% dev_queue_xmit        vmlinux\n 1000.00  1.2% ip_output             vmlinux\n\nAfter patch Profile :\n\n13712.00 15.8% dst_destroy             vmlinux\n 8548.00  9.9% __ip_route_output_key   vmlinux\n 7017.00  8.1% neigh_lookup            vmlinux\n 4554.00  5.3% fib_semantic_match      vmlinux\n 4067.00  4.7% _raw_read_lock          vmlinux\n 3491.00  4.0% dst_alloc               vmlinux\n 3186.00  3.7% neigh_resolve_output    vmlinux\n 3103.00  3.6% fib_table_lookup        vmlinux\n 2098.00  2.4% _raw_read_lock_bh       vmlinux\n 2081.00  2.4% kmem_cache_alloc        vmlinux\n 2013.00  2.3% _raw_spin_lock          vmlinux\n 1763.00  2.0% __copy_from_user_ll     vmlinux\n 1763.00  2.0% ip_output               vmlinux\n 1761.00  2.0% ipv4_dst_destroy        vmlinux\n 1631.00  1.9% eth_header              vmlinux\n 1440.00  1.7% _raw_read_unlock_bh     vmlinux\n\nReference results, if IP route cache is enabled :\n\nreal\t0m29.718s\nuser\t0m10.845s\nsys\t7m37.341s\n\n25213.00 29.5% __ip_route_output_key   vmlinux\n 9011.00 10.5% dst_release             vmlinux\n 4817.00  5.6% ip_push_pending_frames  vmlinux\n 4232.00  5.0% ip_finish_output        vmlinux\n 3940.00  4.6% udp_sendmsg             vmlinux\n 3730.00  4.4% __copy_from_user_ll     vmlinux\n 3716.00  4.4% ip_route_output_flow    vmlinux\n 2451.00  2.9% __xfrm_lookup           vmlinux\n 2221.00  2.6% ip_append_data          vmlinux\n 1718.00  2.0% _raw_spin_lock_bh       vmlinux\n 1655.00  1.9% __alloc_skb             vmlinux\n 1572.00  1.8% sock_wfree              vmlinux\n 1345.00  1.6% kfree                   vmlinux\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c2952c314b4fe61820ba8fd6c949eed636140d52",
      "tree": "dd7ab927c7d344279e128f38d90387214cd06e13",
      "parents": [
        "e12b453904c54bbdc515778ff664d87a7f9473af"
      ],
      "author": {
        "name": "Flavio Leitner",
        "email": "fleitner@redhat.com",
        "time": "Tue Oct 05 14:23:59 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 20:26:58 2010 -0700"
      },
      "message": "bonding: add retransmit membership reports tunable\n\nAllow sysadmins to configure the number of multicast\nmembership report sent on a link failure event.\n\nSigned-off-by: Flavio Leitner \u003cfleitner@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d6bf781712a1d25cc8987036b3a48535b331eb91",
      "tree": "cf83ab68ef2519576578d8336a43cc13cd375cde",
      "parents": [
        "110b2499370c401cdcc7c63e481084467291d556"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 04 06:15:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 14:54:36 2010 -0700"
      },
      "message": "net neigh: RCU conversion of neigh hash table\n\nDavid\n\nThis is the first step for RCU conversion of neigh code.\n\nNext patches will convert hash_buckets[] and \"struct neighbour\" to RCU\nprotected objects.\n\nThanks\n\n[PATCH net-next] net neigh: RCU conversion of neigh hash table\n\nInstead of storing hash_buckets, hash_mask and hash_rnd in \"struct\nneigh_table\", a new structure is defined :\n\nstruct neigh_hash_table {\n       struct neighbour        **hash_buckets;\n       unsigned int            hash_mask;\n       __u32                   hash_rnd;\n       struct rcu_head         rcu;\n};\n\nAnd \"struct neigh_table\" has an RCU protected pointer to such a\nneigh_hash_table.\n\nThis means the signature of (*hash)() function changed: We need to add a\nthird parameter with the actual hash_rnd value, since this is not\nanymore a neigh_table field.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "caf586e5f23cebb2a68cbaf288d59dbbf2d74052",
      "tree": "5c0dfcf5a14c55501f9225835c83abddb8d1876e",
      "parents": [
        "a00eac0c459abecb539fb2a2abd3122dd7ca5d4a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 30 21:06:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 14:47:55 2010 -0700"
      },
      "message": "net: add a core netdev-\u003erx_dropped counter\n\nIn various situations, a device provides a packet to our stack and we\ndrop it before it enters protocol stack :\n- softnet backlog full (accounted in /proc/net/softnet_stat)\n- bad vlan tag (not accounted)\n- unknown/unregistered protocol (not accounted)\n\nWe can handle a per-device counter of such dropped frames at core level,\nand automatically adds it to the device provided stats (rx_dropped), so\nthat standard tools can be used (ifconfig, ip link, cat /proc/net/dev)\n\nThis is a generalization of commit 8990f468a (net: rx_dropped\naccounting), thus reverting it.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c61393ea83573ff422af505b6fd49ef9ec9b91ca",
      "tree": "4dbaf967e7293618205622776d553e37ec0a2f3e",
      "parents": [
        "1df9916e46451533463f227e6be57cc2cfca4c5f"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Oct 04 20:17:53 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 00:47:39 2010 -0700"
      },
      "message": "ipv6: make __ipv6_isatap_ifid static\n\nAnother exported symbol only used in one file\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": "1df9916e46451533463f227e6be57cc2cfca4c5f",
      "tree": "e37eeef3f4a1b4e0fc760d5f8075b34d19e2e471",
      "parents": [
        "6a31d2a97c04ffe9b161ec0177a2296366ff9249"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Oct 04 20:14:17 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 00:47:39 2010 -0700"
      },
      "message": "fib: fib_rules_cleanup can be static\n\nfib_rules_cleanup_ups is only defined and used in one place.\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": "29fa060eab3f524d338566d34c1d9e704579ae5e",
      "tree": "5ec18e56dc3321dda6e1fa76b08b32043f8c88e9",
      "parents": [
        "13f5bf18ba657d2d17c8fcf584e50359c718dd4b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 00:29:48 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 00:29:48 2010 -0700"
      },
      "message": "net: relax rtnl_dereference()\n\nrtnl_dereference() is used in contexts where RTNL is held, to fetch an\nRCU protected pointer.\n\nUpdates to this pointer are prevented by RTNL, so we dont need\nsmp_read_barrier_depends() and the ACCESS_ONCE() provided in\nrcu_dereference_check().\n\nrtnl_dereference() is mainly a macro to document the locking invariant.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24824a09e35402b8d58dcc5be803a5ad3937bdba",
      "tree": "65c5fa4046646623b130702c9abc92c485ec575b",
      "parents": [
        "0bd9e6a964d86a19f54a9ba31168a37d64e451d1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sat Oct 02 06:11:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 00:23:44 2010 -0700"
      },
      "message": "net: dynamic ingress_queue allocation\n\ningress being not used very much, and net_device-\u003eingress_queue being\nquite a big object (128 or 256 bytes), use a dynamic allocation if\nneeded (tc qdisc add dev eth0 ingress ...)\n\ndev_ingress_queue(dev) helper should be used only with RTNL taken.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21a180cda012e1f93e362dd4a9b0bfd3d8c92940",
      "tree": "0e0d10baa3fdcd8ffbc6881076ff1695808dad9d",
      "parents": [
        "c7d4426a98a5f6654cd0b4b33d9dab2e77192c18",
        "51e97a12bef19b7e43199fc153cf9bd5f2140362"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 04 11:56:38 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 04 11:56:38 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/ipv4/Kconfig\n\tnet/ipv4/tcp_timer.c\n"
    },
    {
      "commit": "c7d4426a98a5f6654cd0b4b33d9dab2e77192c18",
      "tree": "0db2524e6f3f742861765dd6aa696a9271767056",
      "parents": [
        "9a7241c21b06c3a3f8ebcf3e347bd68556369da7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Oct 03 22:17:54 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 03 22:17:54 2010 -0700"
      },
      "message": "net: introduce DST_NOCACHE flag\n\nWhile doing stress tests with IP route cache disabled, and multi queue\ndevices, I noticed a very high contention on one rwlock used in\nneighbour code.\n\nWhen many cpus are trying to send frames (possibly using a high\nperformance multiqueue device) to the same neighbour, they fight for the\nneigh-\u003elock rwlock in order to call neigh_hh_init(), and fight on\nhh-\u003ehh_refcnt (a pair of atomic_inc/atomic_dec_and_test())\n\nBut we dont need to call neigh_hh_init() for dst that are used only\nonce. It costs four atomic operations at least, on two contended cache\nlines, plus the high contention on neigh-\u003elock rwlock.\n\nIntroduce a new dst flag, DST_NOCACHE, that is set when dst was not\ninserted in route cache.\n\nWith the stress test bench, sending 160000000 frames on one neighbour,\nresults are :\n\nBefore patch:\n\nreal\t2m28.406s\nuser\t0m11.781s\nsys\t36m17.964s\n\n\nAfter patch:\n\nreal\t1m26.532s\nuser\t0m12.185s\nsys\t20m3.903s\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72829071269b19381173a13ea1b2ca2f4f9d4cec",
      "tree": "a5445625189ba1be6bb8a38a0854452fbfef136f",
      "parents": [
        "10651db75a94c54a34bbf85fbee334d1114da3fb",
        "41f4a6f71fe33faa7971c173c263fb431fe987fe"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 03 22:09:32 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 03 22:09:32 2010 -0700"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "a8c9486b816f74d4645144db9e8fa2f711c1fc4b",
      "tree": "950214451e4bb2172cd9beb8f27a415664f77909",
      "parents": [
        "4c9687098f245601e9d94178715ee03afbcc6f80"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 01 16:15:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 03 21:50:53 2010 -0700"
      },
      "message": "ipmr: RCU protection for mfc_cache_array\n\nUse RCU \u0026 RTNL protection for mfc_cache_array[]\n\nipmr_cache_find() is called under rcu_read_lock();\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "41f4a6f71fe33faa7971c173c263fb431fe987fe",
      "tree": "fdc3e603162e3ad63f6ae4160f68eb803bb78d58",
      "parents": [
        "94d57c4cfaa43e29ca5fa5ff874048cfc67276f5",
        "1728943d83e9fd919e454332fe344944123b3c3a"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 01 11:12:36 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 01 11:12:36 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n"
    },
    {
      "commit": "367e5e376922dcf52f92e1db436010fb828d3bfa",
      "tree": "ee2fb2f50b23303a06b93492da2dea74b78cb263",
      "parents": [
        "bb7196d2bf30e4cb06fe5fed046c9084465e854c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 30 05:36:29 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 01 00:36:51 2010 -0700"
      },
      "message": "neigh: reorder fields in struct neighbour\n\nOn 64bit arches, there are two 32bit holes that we can remove.\n\nsizeof(struct neighbour) shrinks from 0xf8 to 0xf0 bytes\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "82efee1499a27c06f5afb11b07db384fdb3f7004",
      "tree": "c329e037ddf4e13cd824c131eab3bd3a2e67a0fc",
      "parents": [
        "828bac87bb074f3366621724fdfbe314f98ccc7e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 30 03:31:56 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 30 21:16:05 2010 -0700"
      },
      "message": "ipv4: introduce __ip_dev_find()\n\nip_dev_find(net, addr) finds a device given an IPv4 source address and\ntakes a reference on it.\n\nIntroduce __ip_dev_find(), taking a third argument, to optionally take\nthe device reference. Callers not asking the reference to be taken\nshould be in an rcu_read_lock() protected section.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b9f409293529da4630bfc5d6d8e7d7451a6ccb5",
      "tree": "4ad4baa2cedaae93a3a3668e154b4f1cbd950791",
      "parents": [
        "a64de47c091e4a337fa9763315cb6f2fbf0c583b"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Sep 28 19:30:14 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 29 19:45:36 2010 -0700"
      },
      "message": "tcp: tcp_enter_quickack_mode can be static\n\nFunction only used in tcp_input.c\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a64de47c091e4a337fa9763315cb6f2fbf0c583b",
      "tree": "e545dbaede640218956daf1bdd5d503986318861",
      "parents": [
        "bfa5ae63b823f4ffd3483a05f60a93a4a7b7d680"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Sep 28 17:08:02 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 29 19:45:35 2010 -0700"
      },
      "message": "arp: remove unnecessary export of arp_broken_ops\n\narp_broken_ops is only used in arp.c\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bfa5ae63b823f4ffd3483a05f60a93a4a7b7d680",
      "tree": "62dc495022ac697d81c3b80f5a262713e6f657a3",
      "parents": [
        "8560f2266b36adb43238f1f9fd13958dd031901c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Sep 28 05:58:37 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 29 13:25:53 2010 -0700"
      },
      "message": "net: rename netdev rx_queue to ingress_queue\n\nThere is some confusion with rx_queue name after RPS, and net drivers\nprivate rx_queue fields.\n\nI suggest to rename \"struct net_device\"-\u003erx_queue to ingress_queue.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d81f41c58c69ddde497e9e640ba5805aa26e78c",
      "tree": "9e4cadd10af9f487fabb99a393f095d185160a13",
      "parents": [
        "745e20f1b626b1be4b100af5d4bf7b3439392f8f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Sep 27 20:50:33 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 29 13:23:30 2010 -0700"
      },
      "message": "dummy: percpu stats and lockless xmit\n\nConverts dummy network device driver to :\n\n- percpu stats\n\n- 64bit stats\n\n- lockless xmit (NETIF_F_LLTX)\n\n- performance features added (NETIF_F_SG | NETIF_F_FRAGLIST |\nNETIF_F_TSO | NETIF_F_NO_CSUM | NETIF_F_HIGHDMA)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4465b469008bc03b98a1b8df4e9ae501b6c69d4b",
      "tree": "89cd40165e62694e8ed84d4d60486350ebd8b992",
      "parents": [
        "fc34ecd07f15358e2b29620fafeb8a6a9528ce79"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Sun May 23 19:54:12 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 28 23:38:15 2010 -0700"
      },
      "message": "ipv4: Allow configuring subnets as local addresses\n\nThis patch allows a host to be configured to respond to any address in\na specified range as if it were local, without actually needing to\nconfigure the address on an interface.  This is done through routing\ntable configuration.  For instance, to configure a host to respond\nto any address in 10.1/16 received on eth0 as a local address we can do:\n\nip rule add from all iif eth0 lookup 200\nip route add local 10.1/16 dev lo proto kernel scope host src 127.0.0.1 table 200\n\nThis host is now reachable by any 10.1/16 address (route lookup on\ninput for packets received on eth0 can find the route).  On output, the\nrule will not be matched so that this host can still send packets to\n10.1/16 (not sent on loopback).  Presumably, external routing can be\nconfigured to make sense out of this.\n\nTo make this work, we needed to modify the logic in finding the\ninterface which is assigned a given source address for output\n(dev_ip_find).  We perform a normal fib_lookup instead of just a\nlookup on the local table, and in the lookup we ignore the input\ninterface for matching.\n\nThis patch is useful to implement IP-anycast for subnets of virtual\naddresses.\n\nSigned-off-by: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3171d026291d08c2a4cfe06302ce308b09605c4b",
      "tree": "c9ff3f6253a52d63b041b13face40299573990ff",
      "parents": [
        "62fe0b40abb3484413800edaef9b087a20059acf"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Mon Sep 27 08:24:49 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 22:09:50 2010 -0700"
      },
      "message": "net: Add netif_copy_real_num_queues() for use by virtual net drivers\n\nThis sets the active numbers of queues on a net device to match another.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "62fe0b40abb3484413800edaef9b087a20059acf",
      "tree": "1fbd745de235b3a1d97931412fa9ff3e7228fd88",
      "parents": [
        "f91ff5b9ff529be8aac2039af63b2c8ea6cd6ebe"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Mon Sep 27 08:24:33 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 22:09:49 2010 -0700"
      },
      "message": "net: Allow changing number of RX queues after device allocation\n\nFor RPS, we create a kobject for each RX queue based on the number of\nqueues passed to alloc_netdev_mq().  However, drivers generally do not\ndetermine the numbers of hardware queues to use until much later, so\nthis usually represents the maximum number the driver may use and not\nthe actual number in use.\n\nFor TX queues, drivers can update the actual number using\nnetif_set_real_num_tx_queues().  Add a corresponding function for RX\nqueues, netif_set_real_num_rx_queues().\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "290b895e0ba4552dfcfc4bd35759c192345b934a",
      "tree": "439ffccea9fa87b28b6af2a06e562cc5a0c01f80",
      "parents": [
        "af5ef241133b602a77b682009f112e7c3f7604e5"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Sep 27 00:33:35 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 21:30:42 2010 -0700"
      },
      "message": "tunnels: prepare percpu accounting\n\nTunnels are going to use percpu for their accounting.\n\nThey are going to use a new tstats field in net_device.\n\nskb_tunnel_rx() is changed to be a wrapper around __skb_tunnel_rx()\n\nIPTUNNEL_XMIT() is changed to be a wrapper around __IPTUNNEL_XMIT()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d98efa84b790bdd62248eb0dfff17e9baf5c844",
      "tree": "1bf9c2f58502a930963579d50f3bcd49e5a8ed70",
      "parents": [
        "e40051d134f7ee95c8c1f7a3471e84eafc9ab326"
      ],
      "author": {
        "name": "Kumar Sanghvi",
        "email": "kumar.sanghvi@stericsson.com",
        "time": "Sun Sep 26 19:07:59 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 21:30:41 2010 -0700"
      },
      "message": "Phonet: Implement Pipe Controller to support Nokia Slim Modems\n\nPhonet stack assumes the presence of Pipe Controller, either in Modem or\non Application Processing Engine user-space for the Pipe data.\nNokia Slim Modems like WG2.5 used in ST-Ericsson U8500 platform do not\nimplement Pipe controller in them.\nThis patch adds Pipe Controller implemenation to Phonet stack to support\nPipe data over Phonet stack for Nokia Slim Modems.\n\nSigned-off-by: Kumar Sanghvi \u003ckumar.sanghvi@stericsson.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "01db403cf99f739f86903314a489fb420e0e254f",
      "tree": "bf04fbfb3ed88d6cf7abeea1ab5209be36907882",
      "parents": [
        "0b20406cda621c2495d10baab1e87127ceb43337"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 20:24:54 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 20:24:54 2010 -0700"
      },
      "message": "tcp: Fix \u003e4GB writes on 64-bit.\n\nFixes kernel bugzilla #16603\n\ntcp_sendmsg() truncates iov_len to an \u0027int\u0027 which a 4GB write to write\nzero bytes, for example.\n\nThere is also the problem higher up of how verify_iovec() works.  It\nwants to prevent the total length from looking like an error return\nvalue.\n\nHowever it does this using \u0027int\u0027, but syscalls return \u0027long\u0027 (and\nthus signed 64-bit on 64-bit machines).  So it could trigger\nfalse-positives on 64-bit as written.  So fix it to use \u0027long\u0027.\n\nReported-by: Olaf Bonorden \u003cbono@onlinehome.de\u003e\nReported-by: Daniel Büse \u003cdbuese@gmx.de\u003e\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fb0c5f0bc8b69b40549449ee7fc65f3706f12062",
      "tree": "f77a3ed449da953e65f919114c5ea1d4b2c85e88",
      "parents": [
        "7e1b33e5ea392dfc984fc63b76ca75acbf249dcd"
      ],
      "author": {
        "name": "Ulrich Weber",
        "email": "uweber@astaro.com",
        "time": "Mon Sep 27 03:31:00 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 15:03:33 2010 -0700"
      },
      "message": "tproxy: check for transparent flag in ip_route_newports\n\nas done in ip_route_connect()\n\nSigned-off-by: Ulrich Weber \u003cuweber@astaro.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "554891e63a29af35cc6bb403ef34e319518114d0",
      "tree": "2fdabf08455ea34697a853b3616cb92d9ef5b173",
      "parents": [
        "4080c7cdc23f26c6e6166a70f50fa43814552d81"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Sep 24 12:38:25 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:54 2010 -0400"
      },
      "message": "mac80211: move packet flags into packet\n\ncommit 8c0c709eea5cbab97fb464cd68b06f24acc58ee1\nAuthor: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nDate:   Wed Nov 25 17:46:15 2009 +0100\n\n    mac80211: move cmntr flag out of rx flags\n\nmoved the CMNTR flag into the skb RX flags for\nsome aggregation cleanups, but this was wrong\nsince the optimisation this flag tried to make\nrequires that it is kept across the processing\nof multiple interfaces -- which isn\u0027t true for\nflags in the skb. The patch not only broke the\noptimisation, it also introduced a bug: under\nsome (common!) circumstances the flag will be\nset on an already freed skb!\n\nHowever, investigating this in more detail, I\nfound that most of the flags that we set should\nbe per packet, _except_ for this one, due to\na-MPDU processing. Additionally, the flags used\nfor processing (currently just this one) need\nto be reset before processing a new packet.\n\nSince we haven\u0027t actually seen bugs reported as\na result of the wrong flags handling (which is\nnot too surprising -- the only real bug case I\ncan come up with is an a-MSDU contained in an\na-MPDU), I\u0027ll make a different fix for rc.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "686b9cb994f5f74be790df4cd12873dfdc8a6984",
      "tree": "960bae4d7613e4420c28d0c422e3c63c2a569ed3",
      "parents": [
        "295bafb47b0d365e1b4f747dffef29e590f13233"
      ],
      "author": {
        "name": "Ben Greear",
        "email": "greearb@candelatech.com",
        "time": "Thu Sep 23 09:44:36 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:45 2010 -0400"
      },
      "message": "mac80211/ath9k: Support AMPDU with multiple VIFs.\n\nThe old ieee80211_find_sta_by_hw method didn\u0027t properly\nfind VIFS when there was more than one per AP.  This caused\nAMPDU logic in ath9k to get the wrong VIF when trying to\naccount for transmitted SKBs.\n\nThis patch changes ieee80211_find_sta_by_hw to take a\nlocaladdr argument to distinguish between VIFs with the\nsame AP but different local addresses.  The method name\nis changed to ieee80211_find_sta_by_ifaddr.\n\nSigned-off-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e40051d134f7ee95c8c1f7a3471e84eafc9ab326",
      "tree": "88eb44e49a75721ae926665a2c42f08badac9d07",
      "parents": [
        "42099d7a3941d4aaf853caac92b3ae76149fc6e7",
        "2cc6d2bf3d6195fabcf0febc192c01f99519a8f3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 01:03:03 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 01:03:03 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/qlcnic/qlcnic_init.c\n\tnet/ipv4/ip_output.c\n"
    },
    {
      "commit": "2cc6d2bf3d6195fabcf0febc192c01f99519a8f3",
      "tree": "6fbbaa255617783eda308a00a21065bc99ad0d21",
      "parents": [
        "bc68580d41b131396054a1a04a7df4948555ed97"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Fri Sep 24 09:55:52 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 26 19:09:25 2010 -0700"
      },
      "message": "ipv6: add a missing unregister_pernet_subsys call\n\nClean up a missing exit path in the ipv6 module init routines.  In\naddrconf_init we call ipv6_addr_label_init which calls register_pernet_subsys\nfor the ipv6_addr_label_ops structure.  But if module loading fails, or if the\nipv6 module is removed, there is no corresponding unregister_pernet_subsys call,\nwhich leaves a now-bogus address on the pernet_list, leading to oopses in\nsubsequent registrations.  This patch cleans up both the failed load path and\nthe unload path.  Tested by myself with good results.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\n\n include/net/addrconf.h |    1 +\n net/ipv6/addrconf.c    |   11 ++++++++---\n net/ipv6/addrlabel.c   |    5 +++++\n 3 files changed, 14 insertions(+), 3 deletions(-)\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a7855c78a24d6348e989bec616318e68c662e78b",
      "tree": "43ee591745e17569ad212be6ec3c46e58b443c0a",
      "parents": [
        "83180af0b0ea166adf8249f4513beb7355f9b4c9"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 23 23:51:51 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 26 19:04:08 2010 -0700"
      },
      "message": "net: loopback driver cleanup\n\nloopback driver uses dev-\u003eml_priv to store its percpu stats pointer.\nIt uses ugly casts \"(void __percpu __force *)\" to shut up sparse\ncomplains.\n\nDefine an union to better document we use ml_priv in loopback driver and\ndefine a lstats field with appropriate types.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7a91b434e2bad554b709265db7603b1aa52dd92e",
      "tree": "00f51e051922fbaf2ca93e40d0059e5fbb86b2f1",
      "parents": [
        "807540baae406c84dcb9c1c8ef07a56d2d2ae84a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Sep 26 18:53:07 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 26 18:53:07 2010 -0700"
      },
      "message": "net: update SOCK_MIN_RCVBUF\n\nSOCK_MIN_RCVBUF current value is 256 bytes\n\nIt doesnt permit to receive the smallest possible frame, considering\nsocket sk_rmem_alloc/sk_rcvbuf account skb truesizes. On 64bit arches,\nsizeof(struct sk_buff) is 240 bytes. Add the typical 64 bytes of\nheadroom, and we go over the limit.\n\nWith old kernels and 32bit arches, we were under the limit, if netdriver\nwas doing copybreak.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "693019e90ca45d881109d32c0c6d29adf03f6447",
      "tree": "76142f67118da6998584172d609a32d989bfccc8",
      "parents": [
        "a3d6713fbd2ccb50898a6f88664da96a7857c039"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Thu Sep 23 11:19:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 26 18:48:40 2010 -0700"
      },
      "message": "net: reset skb queue mapping when rx\u0027ing over tunnel\n\nReset queue mapping when an skb is reentering the stack via a tunnel.\nOn second pass, the queue mapping from the original device is no\nlonger valid.\n\nSigned-off-by: Tom Herbert \u003ctherbert@google.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb4dfe562cac6fcb544df752e40c1d78000d0712",
      "tree": "a256abb0ecbfb4c1909563274ee9e7d0138b1b16",
      "parents": [
        "c5256c51232d8312755e8de2b514c426b19b101a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 23 05:06:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 26 18:31:13 2010 -0700"
      },
      "message": "net: skb_frag_t can be smaller on small arches\n\nOn 32bit arches, if PAGE_SIZE is smaller than 65536, we can use 16bit\noffset and size fields. This patch saves 72 bytes per skb on i386, or\n128 bytes after rounding.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "543876c92837a8b208b5c99ec225c1f5a581900e",
      "tree": "7a183a1bc3e8974b994e4bad1861ddd0f33ac7e7",
      "parents": [
        "77555ee7228234257957fd54daa0b69178906320"
      ],
      "author": {
        "name": "Giuseppe Cavallaro",
        "email": "peppe.cavallaro@st.com",
        "time": "Fri Sep 24 21:27:41 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 24 21:27:41 2010 -0700"
      },
      "message": "stmmac: review the wake-up support\n\nIf the PM support is available this is passed\nthrough the platform instead to be hard-coded\nin the core files.\nWoL on Magic Frame can be enabled by using\nthe ethtool support.\n\nSigned-off-by: Giuseppe Cavallaro \u003cpeppe.cavallaro@st.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb7d3066cf864342e8ae6a5c1126a1602c4d06c0",
      "tree": "85c7a4f11d06d1c90a3bcba05adc7df1eb3f2823",
      "parents": [
        "ed627be38a1a07c6986a9f17c299f6afc86ac6b7"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Tue Sep 21 21:36:18 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 24 15:54:30 2010 -0400"
      },
      "message": "mac80211: clear txflags for ps-filtered frames\n\nThis patch fixes stale mac80211_tx_control_flags for\nfiltered / retried frames.\n\nBecause ieee80211_handle_filtered_frame feeds skbs back\ninto the tx path, they have to be stripped of some tx\nflags so they won\u0027t confuse the stack, driver or device.\n\nCc: \u003cstable@kernel.org\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a02cec2155fbea457eca8881870fd2de1a4c4c76",
      "tree": "cfbfc4b32bfe10f9cd803d46c31607d13f1858f5",
      "parents": [
        "6a08d194ee40806e0ccd5f36ed768e64cbfc979f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 22 20:43:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 23 14:33:39 2010 -0700"
      },
      "message": "net: return operator cleanup\n\nChange \"return (EXPR);\" to \"return EXPR;\"\n\nreturn is not a function, parentheses are not required.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56b49f4b8f6728b91d10c556c116175051b77b60",
      "tree": "2a88008075a90686237b0e8ce1de72db1d5b0747",
      "parents": [
        "cbdd769ab9de26764bde0520a91536caa1587e13"
      ],
      "author": {
        "name": "Ollie Wild",
        "email": "aaw@google.com",
        "time": "Wed Sep 22 05:54:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 22 13:21:05 2010 -0700"
      },
      "message": "net: Move \"struct net\" declaration inside the __KERNEL__ macro guard\n\nThis patch reduces namespace pollution by moving the \"struct net\" declaration\nout of the userspace-facing portion of linux/netlink.h.  It has no impact on\nthe kernel.\n\n(This came up because we have several C++ applications which use \"net\" as a\nnamespace name.)\n\nSigned-off-by: Ollie Wild \u003caaw@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0741ca949692904646c310573754859cba09bf1",
      "tree": "fc95067d8bfee5f6c6c747c74d1d6547d70199a3",
      "parents": [
        "9e2e8f14d48dbb6c31aeb739ae4fc8997b9dfe84",
        "b618f6f885579a6237e5bf4582fa6167972ddef4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 21 18:17:19 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 21 18:17:19 2010 -0700"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "48daa3bb84d547828871534caa51427a3fe90748",
      "tree": "14b51ebc846bc0edecbbde028480ece59da53958",
      "parents": [
        "756e64a0b106f1a2ca96889c39ea0d48131105c0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Sep 21 06:57:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 21 18:04:47 2010 -0700"
      },
      "message": "ipv6: addrconf.h cleanups\n\n- Use rcu_dereference_rtnl() in __in6_dev_get\n- kerneldoc for __in6_dev_get() and in6_dev_get()\n- Use inline functions instead of macros\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "756e64a0b106f1a2ca96889c39ea0d48131105c0",
      "tree": "aab1079dc10deebcdc0dfeaf6e009f9371131668",
      "parents": [
        "a9478e386165477504916094ae5efb073a44fd9f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Sep 21 06:43:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 21 18:04:47 2010 -0700"
      },
      "message": "net: constify some ppp/pptp structs\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "98e684bd5c927cb94ff23fb6f1dd34dd346a19cf",
      "tree": "4274d2b1d7c5314e1bb4d33197211aa8faa08687",
      "parents": [
        "e254c274ae19888e5693ba6d32576ab03a8ae8a4",
        "536bb20b45dee3f9b77b0d250f8ed0733a5cb025"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 21 16:00:40 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 21 16:00:40 2010 -0700"
      },
      "message": "Merge branch \u0027dccp\u0027 of git://eden-feed.erg.abdn.ac.uk/net-next-2.6\n"
    },
    {
      "commit": "6099e3dea9aaa6127cea0610533221c9e956f009",
      "tree": "8587dd1927923374f898d92ad0335077f91d78a3",
      "parents": [
        "c22ab7816fd81efceefa96b00c4ad62cf657964b"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Mon Sep 20 08:42:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 21 14:57:58 2010 -0700"
      },
      "message": "ethtool: Add Ethernet MAC-level filtering/steering\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c22ab7816fd81efceefa96b00c4ad62cf657964b",
      "tree": "96b2c62a57cb2788a7cccfc456218e680fd783a3",
      "parents": [
        "daebbca3ab41031666ee27f991b223d2bc0415e9"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Mon Sep 20 08:41:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 21 14:57:58 2010 -0700"
      },
      "message": "ethtool: Define RX n-tuple action to clear a rule\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b618f6f885579a6237e5bf4582fa6167972ddef4",
      "tree": "b11508178570b98ce9cb2d76ecebd046a6f0e77c",
      "parents": [
        "462fb2af9788a82a534f8184abfde31574e1cfa0",
        "6e5c2b4e8addfaab8ef54dedaf7b607e1585c35b"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 21 15:49:14 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 21 15:49:14 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n\nConflicts:\n\tarch/arm/mach-omap2/board-omap3pandora.c\n\tdrivers/net/wireless/ath/ath5k/base.c\n"
    },
    {
      "commit": "15cea99306ae14ce5f7c3d3989bcc17202e2b0be",
      "tree": "4755cdb83ca470dfa44b02f6f34aa8fa1c3454c6",
      "parents": [
        "09cecc340b3b4d9960b039c0f576548bbf857f5a"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Thu Sep 16 01:31:51 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 21 11:05:00 2010 -0400"
      },
      "message": "wl1271: make ref_clock configurable by board\n\nThe wl1271 device is using a reference clock that may change\nbetween board to board.\n\nMake the ref_clock parameter configurable by board settings\ninstead of having a hard coded value in the sources.\n\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "61ee7007a5d61aa066076da578e8e8084e122d7d",
      "tree": "a4a9a4d812504af92fd4e84e92578b7dfbbf2605",
      "parents": [
        "2cc78ff78c0af502b040d4527212e29e02d3231d"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Thu Sep 16 01:31:12 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 21 11:04:57 2010 -0400"
      },
      "message": "wl12xx: add platform data passing support\n\nAdd a simple mechanism to pass platform data to the\nSDIO instances of wl12xx.\n\nThis way there is no confusion over who owns the \u0027embedded data\u0027,\ntypechecking is preserved, and no possibility for the wrong driver to\npick up the data.\n\nOriginally proposed by Russell King.\n\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c1f9a095600e07fefe64eb94eb711f410100824a",
      "tree": "7117a504f324b2b835fea50a5379cd94429978f5",
      "parents": [
        "09f250ac8faefa9deb14854e4715a139ed99617b"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Thu Sep 16 13:16:02 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 21 11:04:38 2010 -0400"
      },
      "message": "wl12xx: make wl12xx.h common to both spi and sdio\n\nMove wl12xx.h outside of the spi-specific location,\nso it can be shared with both spi and sdio solutions.\n\nUpdate all users of spi/wl12xx.h accordingly\n\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nAcked-by: Luciano Coelho \u003cluciano.coelho@nokia.com\u003e\nAcked-by: Tony Lindgren \u003ctony@atomide.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a18213d1d2a469956845b437f5d1d0401ab22e8b",
      "tree": "8a0635d19a9e58cf7861666eefd07e949db09e3f",
      "parents": [
        "4874c131d79695e3d372042781a408a1a8a762d8"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Sep 19 20:08:00 2010 +0200"
      },
      "committer": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Sep 21 12:14:25 2010 +0200"
      },
      "message": "dccp: Replace magic CCID-specific numbers by symbolic constants\n\nThe constants DCCPO_{MIN,MAX}_CCID_SPECIFIC are nowhere used in the code, but\ninstead for the CCID-specific options numbers are used.\n\nThis patch unifies the use of CCID-specific option numbers, by adding symbolic\nnames reflecting the definitions in RFC 4340, 10.3.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\n"
    },
    {
      "commit": "8444cf712c5f71845cba9dc30d8f530ff0d5ff83",
      "tree": "3283983551829eb3f985a92d49ec65ac8e487268",
      "parents": [
        "842c74bffcdb1d305ccd9e61e417cceae86b9963"
      ],
      "author": {
        "name": "Thomas Egerer",
        "email": "thomas.egerer@secunet.com",
        "time": "Mon Sep 20 11:11:38 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 20 11:11:38 2010 -0700"
      },
      "message": "xfrm: Allow different selector family in temporary state\n\nThe family parameter xfrm_state_find is used to find a state matching a\ncertain policy. This value is set to the template\u0027s family\n(encap_family) right before xfrm_state_find is called.\nThe family parameter is however also used to construct a temporary state\nin xfrm_state_find itself which is wrong for inter-family scenarios\nbecause it produces a selector for the wrong family. Since this selector\nis included in the xfrm_user_acquire structure, user space programs\nmisinterpret IPv6 addresses as IPv4 and vice versa.\nThis patch splits up the original init_tempsel function into a part that\ninitializes the selector respectively the props and id of the temporary\nstate, to allow for differing ip address families whithin the state.\n\nSigned-off-by: Thomas Egerer \u003cthomas.egerer@secunet.com\u003e\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f8f103d8466e627ecef7894248eb79407d9047c",
      "tree": "d41cdecb55ef6daf7238a1a4988db02b1836c61b",
      "parents": [
        "e6599c2ecf18002339fe81cde1fa83b37bf26290"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Sep 19 11:24:02 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 19 11:24:02 2010 -0700"
      },
      "message": "net: reorder struct netdev_hw_addr\n\nMove \u0027synced\u0027 and \u0027global_use\u0027 fields before \u0027refcount\u0027, to shrinks\nstruct netdev_hw_addr by 8 bytes (on 64bit arches).\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0f9deae9e7c421fa0c1c627beb8e174325e1ba7",
      "tree": "7883b0c64cc16f1c3f3f4360a4dbcc214e6a6a22",
      "parents": [
        "4bdab43323b459900578b200a4b8cf9713ac8fab"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Sep 17 16:55:03 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 17 16:55:03 2010 -0700"
      },
      "message": "netpoll: Disable IRQ around RCU dereference in netpoll_rx\n\nWe cannot use rcu_dereference_bh safely in netpoll_rx as we may\nbe called with IRQs disabled.  We could however simply disable\nIRQs as that too causes BH to be disabled and is safe in either\ncase.\n\nThanks to John Linville for discovering this bug and providing\na patch.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "07af7a2bfa853db3957a22f9a41f437bf0f10e63",
      "tree": "e3e6235bf0b42dd8d60475c541de7475cf8a6065",
      "parents": [
        "be2902daee80b655cebd482b5ee91ffc29408121"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Thu Sep 16 11:34:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 17 16:53:23 2010 -0700"
      },
      "message": "ethtool: Add comments for valid use of flow types\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be2902daee80b655cebd482b5ee91ffc29408121",
      "tree": "30302d3d2400e7bf7ab6f95822ffa989fbbe38a8",
      "parents": [
        "3b27e105550f7c4a79ecb6d6a9c49c651c59ae9b"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Thu Sep 16 11:28:07 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 17 16:53:23 2010 -0700"
      },
      "message": "ethtool, ixgbe: Move RX n-tuple mask fixup to ethtool\n\nThe ethtool utility does not set masks for flow parameters that are\nnot specified, so if both value and mask are 0 then this must be\ntreated as equivalent to a mask with all bits set.  Currently that is\ndone in the only driver that implements RX n-tuple filtering, ixgbe.\nMove it to the ethtool core.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebbb293f8b3021ae2009fcb7cb3b8a52fb5fd06a",
      "tree": "9ee381c887f2bc585c103a34b349d85fd95a2567",
      "parents": [
        "dfb8fb96ae2b5126cd0c08c0ccd7c42e1f46568a"
      ],
      "author": {
        "name": "Giuseppe CAVALLARO",
        "email": "peppe.cavallaro@st.com",
        "time": "Fri Sep 17 03:23:40 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 17 16:12:57 2010 -0700"
      },
      "message": "stmmac: consolidate and tidy-up the COE support\n\nThe first version of the driver had hard-coded the logic\nfor handling the checksum offloading.\nThis was designed according to the chips included in\nthe STM platforms where:\no MAC10/100 supports no COE at all.\no GMAC fully supports RX/TX COE.\n\nThis is not good for other chip configurations where,\nfor example, the mac10/100 supports the tx csum in HW\nor when the GMAC has no IPC.\n\nThanks to Johannes Stezenbach; he provided me a first\ndraft of this patch that only reviewed the IPC for the\nGMAC devices.\n\nThis patch also helps on SPEAr platforms where the\nMAC10/100 can perform the TX csum in HW.\nThanks to Deepak SIKRI for his support on this.\n\nIn the end, GMAC devices for STM platforms have\na bugged Jumbo frame support that needs to have\nthe Tx COE disabled for oversized frames (due to\nlimited buffer sizes). This information is also\npassed through the driver\u0027s platform structure.\n\nSigned-off-by: Giuseppe Cavallaro \u003cpeppe.cavallaro@st.com\u003e\nSigned-off-by: Johannes Stezenbach \u003cjs@sig21.net\u003e\nSigned-off-by: Deepak SIKRI \u003cdeepak.sikri@st.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dfb8fb96ae2b5126cd0c08c0ccd7c42e1f46568a",
      "tree": "9727f43bae819ece67c1c9bc26b3cb52e236e5ce",
      "parents": [
        "67c9660831f6b6b76866a0838466c83765ffbbd3"
      ],
      "author": {
        "name": "Giuseppe CAVALLARO",
        "email": "peppe.cavallaro@st.com",
        "time": "Fri Sep 17 03:23:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 17 16:12:56 2010 -0700"
      },
      "message": "stmmac: add CSR Clock range selection\n\nThis patch adds the CSR Clock range selection.\n\nOriginal patch from Johannes Stezenbach fixed the CSR\nin the stmmac_mdio. We agreed to provide this through\nthe platform instead of.\nAlso thanks to Johannes for having tested it on ARM.\n\nSigned-off-by: Giuseppe Cavallaro \u003cpeppe.cavallaro@st.com\u003e\nSigned-off-by: Johannes Stezenbach \u003cjs@sig21.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cd13539b8bc9ae884e6d8d9374c594adff4304e4",
      "tree": "6adc13bc1dfe5da2480f5d2186e2719f5f2b713f",
      "parents": [
        "94767632623c7bf5b16a0cf963ec93a8ad9acca4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 16 02:58:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 16 21:58:44 2010 -0700"
      },
      "message": "net: shrinks struct net_device\n\ncommit ab95bfe01 (net: replace hooks in __netif_receive_skb) added\nrx_handler at wrong place, between two cache line aligned objects,\ncreating a big hole (a full cache line)\n\nMove rx_handler and rx_handler_data before rx_queue, filling existing\nhole.\n\nMove master field in the cache line(s) used in receive path.\n\nThis saves 64 bytes (or L1_CACHE_BYTES), and avoids two possible\ncache misses in receive path.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2ca27bcff7127da1aa7dd39cd2a6f7cb187e327f",
      "tree": "fae1b81c56763a53d432310b8fcbb81b9bb48d7e",
      "parents": [
        "074ac8df9f93f2a35a356d92fd7f16cd846f0a03"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 16 14:58:23 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Sep 16 15:46:07 2010 -0400"
      },
      "message": "mac80211: add p2p device type support\n\nWhen a driver advertises p2p device support,\nmac80211 will handle it, but internally it will\nrewrite the interface type to STA/AP rather than\nP2P-STA/GO since otherwise a lot of paths need\nto be touched that are otherwise identical. A\np2p boolean tells drivers whether or not a given\ninterface will be used for p2p or not.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "074ac8df9f93f2a35a356d92fd7f16cd846f0a03",
      "tree": "b6a77291a1eea9a11862ad78e965c1df29e62d43",
      "parents": [
        "f799a301abf77b87133d624164d28dc2b521e99d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 16 14:58:22 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Sep 16 15:46:06 2010 -0400"
      },
      "message": "cfg80211/nl80211: introduce p2p device types\n\nThis adds P2P-STA and P2P-GO as device types so\nwe can distinguish between those and normal STA\nor AP (respectively) type interfaces.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9c376639297d3dd82d40e54c9cdca8da9dfc22f1",
      "tree": "4efdf23817f1ab3d90783f0f6335109537f174fd",
      "parents": [
        "78381c41776572cb642a485219c5d7651f198fbd"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Fri Aug 20 15:13:59 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Sep 16 15:19:44 2010 -0400"
      },
      "message": "include/net/cfg80211.h: wiphy_\u003clevel\u003e messages use dev_printk\n\nThe output becomes:\n\n[   41.261941] ieee80211 phy0: Selected rate control algorithm \u0027minstrel_ht\u0027\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "95ae6b228f814fc0528d0506ee9f18ac333d6851",
      "tree": "d5287f3dee478e1bd5fa79e63192447c5bc91e92",
      "parents": [
        "9e0064a5456fd75fd7c70f6f3692c7f732f91a65"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 15 04:04:31 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 22:06:05 2010 -0700"
      },
      "message": "ipv4: ip_ptr cleanups\n\ndev-\u003eip_ptr is protected by rtnl and rcu.\n\nYet some places dont use appropriate primitives and/or locking rules.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "507215f8d04f9e61f38c975e61d93bcafd30815f",
      "tree": "79a88610eaf8abcc3f160ca0ced0a1b4e72dfd80",
      "parents": [
        "b6a563b2af4ec5b0363cf89869ba234c0e2cd3da"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Sep 15 12:30:14 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 21:31:33 2010 -0700"
      },
      "message": "Phonet: list subscribed resources via proc_fs\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7417fa83c1a8b75a03bd9b9b358999f38e771eab",
      "tree": "7abf2eb2df05e1ca8ed96cd94b6fe026c8a57972",
      "parents": [
        "4e3d16ce5e82648d7f4dfd28b6cf8fe2e9a9efc3"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Sep 15 12:30:12 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 21:31:32 2010 -0700"
      },
      "message": "Phonet: hook resource routing to userspace via ioctl()\u0027s\n\nI wish we could use something cleaner, such as bind(). But that would\nnot work since resource subscription is orthogonal/in addition to the\nnormal object ID allocated via bind(). This is similar to multicasting\nwhich also uses ioctl()\u0027s.\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4e3d16ce5e82648d7f4dfd28b6cf8fe2e9a9efc3",
      "tree": "d212f0e503a4db4c2b04a0457250bba940205f39",
      "parents": [
        "6482f554e2b9cbe733d63124765104f29cf0c9ad"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Sep 15 12:30:11 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 21:31:32 2010 -0700"
      },
      "message": "Phonet: resource routing backend\n\nWhen both destination device and object are nul, Phonet routes the\npacket according to the resource field. In fact, this is the most\ncommon pattern when sending Phonet \"request\" packets. In this case,\nthe packet is delivered to whichever endpoint (socket) has\nregistered the resource.\n\nThis adds a new table so that Linux processes can register their\nPhonet sockets to Phonet resources, if they have adequate privileges.\n\n(Namespace support is not implemented at the moment.)\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6482f554e2b9cbe733d63124765104f29cf0c9ad",
      "tree": "464efc6726b6c183f820152edd14f03dda4a59ad",
      "parents": [
        "7fedd7e5dfeb0f6bd69ee120b5c44a5e49892e47"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Sep 15 12:19:53 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 21:31:31 2010 -0700"
      },
      "message": "Phonet: remove dangling pipe if an endpoint is closed early\n\nClosing a pipe endpoint is not normally allowed by the Phonet pipe,\nother than as a side after-effect of removing the pipe between two\nendpoints. But there is no way to prevent Linux userspace processes\nfrom being killed or suffering from bugs, so this can still happen.\nWe might as well forcefully close Phonet pipe endpoints then.\n\nThe cellular modem supports only a few existing pipes at a time. So we\nreally should not leak them. This change instructs the modem to destroy\nthe pipe if either of the pipe\u0027s endpoint (Linux socket) is closed too\nearly.\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7dff59efbb0e8b0f81c95fd40379c0d0c757c808",
      "tree": "17651e0f5ef9b4a4b00352b52351a3fc23ac4671",
      "parents": [
        "e0de7c93b950b9e784894efc4b529c6958cb747a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 15 11:07:15 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 19:29:45 2010 -0700"
      },
      "message": "net: add rtnl_dereference()\n\nWe sometime want to dereference an rcu protected pointer while\nholding RTNL. Use a macro to hide all lockdep details.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e0de7c93b950b9e784894efc4b529c6958cb747a",
      "tree": "49a86ecc91a43e7d86fab75b3c36753d340c11d2",
      "parents": [
        "e035587305011432ee07f69f9738b3c7ef7f3684"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Tue Sep 14 09:13:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 14:42:13 2010 -0700"
      },
      "message": "ethtool: Remove unimplemented flow specification types\n\nstruct ethtool_rawip4_spec and struct ethtool_ether_spec are neither\ncommented nor used by any driver, so remove them.  Adjust padding in\nthe user-visible unions that included these structures.\n\nFix references to struct ethtool_rawip4_spec in\nethtool_get_rx_ntuple(), which should use struct ethtool_usrip4_spec.\n\nstruct ethtool_usrip4_spec cannot hold IPv6 host addresses and there\nis no separate structure that can, so remove ETH_RX_NFC_IP6 and the\nreference to it in niu.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e035587305011432ee07f69f9738b3c7ef7f3684",
      "tree": "46037f2bdd25de4a939c5ba2bd200aded357b418",
      "parents": [
        "f833c4c181e4e948758b7b252322f50273100d30"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Tue Sep 14 09:10:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 14:42:13 2010 -0700"
      },
      "message": "ethtool: Complete kernel-doc comments for RX flow filter and hash control\n\nThere are now several interfaces within the ethtool API for getting\nand setting RX flow filtering and hashing behaviour, most of which are\npoorly documented.  This adds kernel-doc comments for all these\ninterfaces, based on the existing incomplete comments and on the\ninitial implementations.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "01f83d69844d307be2aa6fea88b0e8fe5cbdb2f4",
      "tree": "b01eba7a8b9cf737312c3721ff8ef361baa55bea",
      "parents": [
        "6dcbc12290abb452a5e42713faa6461b248e2f55"
      ],
      "author": {
        "name": "Alexey Kuznetsov",
        "email": "kuznet@ms2.inr.ac.ru",
        "time": "Wed Sep 15 10:27:52 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 15 12:01:44 2010 -0700"
      },
      "message": "tcp: Prevent overzealous packetization by SWS logic.\n\nIf peer uses tiny MSS (say, 75 bytes) and similarly tiny advertised\nwindow, the SWS logic will packetize to half the MSS unnecessarily.\n\nThis causes problems with some embedded devices.\n\nHowever for large MSS devices we do want to half-MSS packetize\notherwise we never get enough packets into the pipe for things\nlike fast retransmit and recovery to work.\n\nBe careful also to handle the case where MSS \u003e window, otherwise\nwe\u0027ll never send until the probe timer.\n\nReported-by: ツ Leandro Melo de Sales \u003cleandroal@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55b1804c678e679e1018671bd40b583eab124689",
      "tree": "6bf100ba8bca953b5ccd2c05773f442ea748a8fb",
      "parents": [
        "030bda0d416babd0cf34e584086f815b1c9d417c"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 13 18:24:01 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 14 20:22:05 2010 -0700"
      },
      "message": "net/irda: Use static const char * const where possible\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2944f45d9db851e186774df7c9cbf075f4a585c6",
      "tree": "165e9c5121451bc646cf35aa2431b354cc51ebe3",
      "parents": [
        "31a01645c0c7b46d7f74777cd2a66ddb2a22bbd9"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Tue Sep 14 18:37:20 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 14 16:14:26 2010 -0400"
      },
      "message": "mac80211: add a note about iterating interfaces during add_interface()\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e548833df83c3554229eff0672900bfe958b45fd",
      "tree": "85efc4a76dc356593d6d394776aeb845dc580fb6",
      "parents": [
        "cbd9da7be869f676afc204e1a664163778c770bd",
        "053d8f6622701f849fda2ca2c9ae596c13599ba9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 09 22:27:33 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 09 22:27:33 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/mac80211/main.c\n"
    },
    {
      "commit": "053d8f6622701f849fda2ca2c9ae596c13599ba9",
      "tree": "e5dd90cca3a69bc993b5aa860a9eeb8c9178450a",
      "parents": [
        "c9cedbba0fc591e1c0587f838932ca3f3c6fec57",
        "615cc2211c17ed05a2a5d94abdac6c340a8ea508"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 09 21:59:51 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 09 21:59:51 2010 -0700"
      },
      "message": "Merge branch \u0027vhost-net\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost\n"
    },
    {
      "commit": "cf0ac2b8a759fecbefd80f890c6dbe80ba65fd95",
      "tree": "d5feaeef197dc681d1cdab2e8070ac31f0c43141",
      "parents": [
        "f27e21a813e2c4ca74b30a5443602e75b146db9b",
        "905d64c89e2a9d71d0606904b7c3908633db6072"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 09 14:58:11 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 09 14:58:11 2010 -0700"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://oss.oracle.com/git/agrover/linux-2.6\n"
    },
    {
      "commit": "e199e6136ce6b151e6638ae93dca60748424d900",
      "tree": "0d66e0b5d227c36b005e4f5537f4bbcfc6ed4904",
      "parents": [
        "972c40b5bee429c84ba727f8ac0a08292bc5dc3d",
        "d56557af19867edb8c0e96f8e26399698a08857f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 08 23:49:04 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 08 23:49:04 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "719f835853a92f6090258114a72ffe41f09155cd",
      "tree": "a077b05397bf07a096be7f07b50375c5ed918ac2",
      "parents": [
        "ae2688d59b5f861dc70a091d003773975d2ae7fb"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 08 05:08:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 08 21:45:01 2010 -0700"
      },
      "message": "udp: add rehash on connect()\n\ncommit 30fff923 introduced in linux-2.6.33 (udp: bind() optimisation)\nadded a secondary hash on UDP, hashed on (local addr, local port).\n\nProblem is that following sequence :\n\nfd \u003d socket(...)\nconnect(fd, \u0026remote, ...)\n\nnot only selects remote end point (address and port), but also sets\nlocal address, while UDP stack stored in secondary hash table the socket\nwhile its local address was INADDR_ANY (or ipv6 equivalent)\n\nSequence is :\n - autobind() : choose a random local port, insert socket in hash tables\n              [while local address is INADDR_ANY]\n - connect() : set remote address and port, change local address to IP\n              given by a route lookup.\n\nWhen an incoming UDP frame comes, if more than 10 sockets are found in\nprimary hash table, we switch to secondary table, and fail to find\nsocket because its local address changed.\n\nOne solution to this problem is to rehash datagram socket if needed.\n\nWe add a new rehash(struct socket *) method in \"struct proto\", and\nimplement this method for UDP v4 \u0026 v6, using a common helper.\n\nThis rehashing only takes care of secondary hash table, since primary\nhash (based on local port only) is not changed.\n\nReported-by: Krzysztof Piotr Oledzki \u003cole@ans.pl\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nTested-by: Krzysztof Piotr Oledzki \u003cole@ans.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "905d64c89e2a9d71d0606904b7c3908633db6072",
      "tree": "ae1f56d4eedebec1a75441d6a66b97aea3e5fe5f",
      "parents": [
        "a46f561b774d90d8616473d56696e7d44fa1c9f1"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Sep 08 18:03:54 2010 -0700"
      },
      "committer": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Sep 08 18:16:55 2010 -0700"
      },
      "message": "RDS: Remove dead struct from rds.h\n\nflows are an obsolete date type.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\n"
    },
    {
      "commit": "a46f561b774d90d8616473d56696e7d44fa1c9f1",
      "tree": "acfffa1745ee08a8ea863143df745a6e734855e2",
      "parents": [
        "fd128dfa50cfc4f2959dc4aa5d7468d33b988332"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Aug 25 09:34:10 2010 -0700"
      },
      "committer": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Sep 08 18:16:54 2010 -0700"
      },
      "message": "RDS: rds.h: Replace u_int[size]_t with uint[size]_t\n\nReplace e.g. u_int32_t types with the more common uint32_t.\n\nReported-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\n"
    },
    {
      "commit": "fd128dfa50cfc4f2959dc4aa5d7468d33b988332",
      "tree": "af53d62ccf9558091ea1d19d5653f913e642d472",
      "parents": [
        "20c72bd5f5f902e5a8745d51573699605bf8d21c"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Aug 25 09:32:17 2010 -0700"
      },
      "committer": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Sep 08 18:16:52 2010 -0700"
      },
      "message": "RDS: Add rds.h to exported headers list\n\nAlso, a number of changes were made based on the assumption that\nrds.h wasn\u0027t exported, so roll these back.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\n"
    },
    {
      "commit": "20c72bd5f5f902e5a8745d51573699605bf8d21c",
      "tree": "6df337e07d423a0859ab92f25525570e134baba1",
      "parents": [
        "59f740a6aeb2cde2f79fe0df38262d4c1ef35cd8"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Aug 25 05:51:28 2010 -0700"
      },
      "committer": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Sep 08 18:16:51 2010 -0700"
      },
      "message": "RDS: Implement masked atomic operations\n\nAdd two CMSGs for masked versions of cswp and fadd. args\nstruct modified to use a union for different atomic op type\u0027s\narguments. Change IB to do masked atomic ops. Atomic op type\nin rds_message similarly unionized.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\n"
    },
    {
      "commit": "2c3a5f9abb1dc5efdab8ba9a568b1661c65fd1e3",
      "tree": "72b6a4c5298fecf46637987fd8ae42296dc90a97",
      "parents": [
        "7e3bd65ebfd5d6cd76b8b979920c632d6e6b4b2a"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Mon Mar 01 16:10:40 2010 -0800"
      },
      "committer": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Sep 08 18:12:06 2010 -0700"
      },
      "message": "RDS: Add flag for silent ops. Do atomic op before RDMA\n\nAdd a flag to the API so users can indicate they want\nsilent operations. This is needed because silent ops\ncannot be used with USE_ONCE MRs, so we can\u0027t just\nassume silent.\n\nAlso, change send_xmit to do atomic op before rdma op if\nboth are present, and centralize the hairy logic to determine if\nwe want to attempt silent, or not.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\n"
    },
    {
      "commit": "15133f6e67d8d646d0744336b4daa3135452cb0d",
      "tree": "e5675d5a3ab240edc9a66af6b891dd75fa9eabae",
      "parents": [
        "a63273d4992603979ddb181b6a8f07082839b39f"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Jan 12 14:33:38 2010 -0800"
      },
      "committer": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Sep 08 18:11:41 2010 -0700"
      },
      "message": "RDS: Implement atomic operations\n\nImplement a CMSG-based interface to do FADD and CSWP ops.\n\nAlter send routines to handle atomic ops.\n\nAdd atomic counters to stats.\n\nAdd xmit_atomic() to struct rds_transport\n\nInline rds_ib_send_unmap_rdma into unmap_rm\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\n"
    },
    {
      "commit": "a6e0fc8514d41dfdd98b1d15cacc432cf040f8af",
      "tree": "48a6b7cbae9fa0637b7f134b2d204740af783237",
      "parents": [
        "a7a4f1c1a52912eb8b3bd4d8f628d83a8b5d69dd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 08 14:15:32 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 08 14:15:32 2010 -0700"
      },
      "message": "net: introduce rcu_dereference_rtnl\n\nWe use rcu_dereference_check(p, rcu_read_lock_held() ||\nlockdep_rtnl_is_held()) several times in network stack.\n\nMore usages to come too, so its time to create a helper.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3634169bcc0cce33c815865d62ab378739f7389",
      "tree": "80165f1b0d8d7035734b7fe797083dbd9391781e",
      "parents": [
        "cc28a20e77b261eb4e80c84abd621e810302f435"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Sep 07 05:55:38 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 08 13:42:22 2010 -0700"
      },
      "message": "include/net/raw.h: Convert raw_seq_private macro to inline\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6523ce1525e88c598c75a1a6b8c4edddfa9defe8",
      "tree": "c3439e9c509676a0c29cd81fdaa65ad2632b903c",
      "parents": [
        "64289c8e6851bca0e589e064c9a5c9fbd6ae5dd4"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Sun Sep 05 18:02:29 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 08 10:39:57 2010 -0700"
      },
      "message": "ipvs: fix active FTP\n\n- Do not create expectation when forwarding the PORT\n  command to avoid blocking the connection. The problem is that\n  nf_conntrack_ftp.c:help() tries to create the same expectation later in\n  POST_ROUTING and drops the packet with \"dropping packet\" message after\n  failure in nf_ct_expect_related.\n\n- Change ip_vs_update_conntrack to alter the conntrack\n  for related connections from real server. If we do not alter the reply in\n  this direction the next packet from client sent to vport 20 comes as NEW\n  connection. We alter it but may be some collision happens for both\n  conntracks and the second conntrack gets destroyed immediately. The\n  connection stucks too.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d56557af19867edb8c0e96f8e26399698a08857f",
      "tree": "2d98f87962a5a08839371ed90b9eaa7f256bea36",
      "parents": [
        "fa2925cf90e612cb9c10c45d0cb8a7c7332e56a7",
        "17134d96735115644cc2f0e2b1bab51ca6e3ab95"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 16:00:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 16:00:17 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI: bus speed strings should be const\n  PCI hotplug: Fix build with CONFIG_ACPI unset\n  PCI: PCIe: Remove the port driver module exit routine\n  PCI: PCIe: Move PCIe PME code to the pcie directory\n  PCI: PCIe: Disable PCIe port services during port initialization\n  PCI: PCIe: Ask BIOS for control of all native services at once\n  ACPI/PCI: Negotiate _OSC control bits before requesting them\n  ACPI/PCI: Do not preserve _OSC control bits returned by a query\n  ACPI/PCI: Make acpi_pci_query_osc() return control bits\n  ACPI/PCI: Reorder checks in acpi_pci_osc_control_set()\n  PCI: PCIe: Introduce commad line switch for disabling port services\n  PCI: PCIe AER: Introduce pci_aer_available()\n  x86/PCI: only define pci_domain_nr if PCI and PCI_DOMAINS are set\n  PCI: provide stub pci_domain_nr function for !CONFIG_PCI configs\n"
    },
    {
      "commit": "a44a553f827f28d46130c9818dbcb95f4262b96c",
      "tree": "44bd46b1604eb93f15196193a99725f94138af41",
      "parents": [
        "ce7db282a3830f57f5b05ec48288c23a5c4d66d5",
        "93f68f1ef787d97ab688f78a01f446e85bb9a496"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:34:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:34:37 2010 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  powerpc/pseries: Correct rtas_data_buf locking in dlpar code\n  powerpc/85xx: Add P1021 PCI IDs and quirks\n  arch/powerpc/sysdev/qe_lib/qe.c: Add of_node_put to avoid memory leak\n  arch/powerpc/platforms/83xx/mpc837x_mds.c: Add missing iounmap\n  fsl_rio: fix compile errors\n  powerpc/85xx: Fix compile issue with p1022_ds due to lmb rename to memblock\n  powerpc/85xx: Fix compilation of mpc85xx_mds.c\n  powerpc: Don\u0027t use kernel stack with translation off\n  powerpc/perf_event: Reduce latency of calling perf_event_do_pending\n  powerpc/kexec: Adds correct calling convention for kexec purgatory\n"
    },
    {
      "commit": "ce7db282a3830f57f5b05ec48288c23a5c4d66d5",
      "tree": "8e191c4b2ffa1658d5c014da5cc6230fc58c1a59",
      "parents": [
        "cd4d4fc4137502f88ee871fc015a934dc28535e3",
        "54157c44471f5e266508ac08d270f2bc5857e8bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:08:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:08:37 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:\n  percpu: fix a mismatch between code and comment\n  percpu: fix a memory leak in pcpu_extend_area_map()\n  percpu: add __percpu notations to UP allocator\n  percpu: handle __percpu notations in UP accessors\n"
    },
    {
      "commit": "cd4d4fc4137502f88ee871fc015a934dc28535e3",
      "tree": "09dfa0627996ca80d0fcc936b6fbd5080ee6e9d7",
      "parents": [
        "608307e6de2631e37f55f106a7cbbc560cb12751",
        "9c37547ab62f88aac3e1e3c2065b611f811de9b5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:08:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:08:17 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: use zalloc_cpumask_var() for gcwq-\u003emayday_mask\n  workqueue: fix GCWQ_DISASSOCIATED initialization\n  workqueue: Add a workqueue chapter to the tracepoint docbook\n  workqueue: fix cwq-\u003enr_active underflow\n  workqueue: improve destroy_workqueue() debuggability\n  workqueue: mark lock acquisition on worker_maybe_bind_and_lock()\n  workqueue: annotate lock context change\n  workqueue: free rescuer on destroy_workqueue\n"
    },
    {
      "commit": "608a5ffc3ee0d6f4aff53e902659201eeaeb9c06",
      "tree": "38658ba63eb2fccaf9f3d23112c84a31a40e257f",
      "parents": [
        "78f220a84f464ff1a74d1b646e9b96bdddc47050",
        "6eb68d6f3bf1707d5d816ea9242b7d38f25b942e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:04:09 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 14:04:09 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6:\n  tty: fix tty_line must not be equal to number of allocated tty pointers in tty driver\n  serial: bfin_sport_uart: restore transmit frame sync fix\n  serial: fix port type conflict between NS16550A \u0026 U6_16550A\n  MAINTAINERS: orphan isicom\n  vt: Fix console corruption on driver hand-over.\n"
    },
    {
      "commit": "f8f235e5bbf4e61f3e0886a44afb1dc4cfe8f337",
      "tree": "9211554f0542ce636aa1f14ffe58cfa832efa04d",
      "parents": [
        "93f5f7f1249e76a5e8afbdab53f90b10c41fdb61"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Fri Aug 27 11:08:57 2010 +0800"
      },
      "committer": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Tue Sep 07 11:16:43 2010 +0100"
      },
      "message": "agp/intel: Fix cache control for Sandybridge\n\nSandybridge GTT has new cache control bits in PTE, which controls\ngraphics page cache in LLC or LLC/MLC, so we need to extend the mask\nfunction to respect the new bits.\n\nAnd set cache control to always LLC only by default on Gen6.\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\n"
    },
    {
      "commit": "73457f0f836956747e0394320be2163c050e96ef",
      "tree": "ec0b11057cce5d93800876f4a89a2bcdbc91b69e",
      "parents": [
        "0b5d404e349c0236b11466c0a4785520c0be6982"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Fri Aug 06 01:59:14 2010 +0300"
      },
      "committer": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Sun Sep 05 17:01:37 2010 +0300"
      },
      "message": "cgroups: fix API thinko\n\ncgroup_attach_task_current_cg API that have upstream is backwards: we\nreally need an API to attach to the cgroups from another process A to\nthe current one.\n\nIn our case (vhost), a priveledged user wants to attach it\u0027s task to cgroups\nfrom a less priveledged one, the API makes us run it in the other\ntask\u0027s context, and this fails.\n\nSo let\u0027s make the API generic and just pass in \u0027from\u0027 and \u0027to\u0027 tasks.\nAdd an inline wrapper for cgroup_attach_task_current_cg to avoid\nbreaking bisect.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\n"
    },
    {
      "commit": "71cad0554956de87c3fc413b1eac9313887eb14f",
      "tree": "c1b7e900fe2329d689042a1ccf49842135a38a67",
      "parents": [
        "d86b3001a1a6f9b8be15e5e060338de085d2bbbc"
      ],
      "author": {
        "name": "Philippe Langlais",
        "email": "philippe.langlais@stericsson.com",
        "time": "Tue Aug 31 14:19:09 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Sep 03 17:29:04 2010 -0700"
      },
      "message": "serial: fix port type conflict between NS16550A \u0026 U6_16550A\n\nBug seen by Dr. David Alan Gilbert with sparse\n\nSigned-off-by: Philippe Langlais \u003cphilippe.langlais@stericsson.com\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3fb5a991916091a908d53608a5899240039fb51e",
      "tree": "fa8e5855de904daffba92bd177fa57ee85641521",
      "parents": [
        "323f30b361b2e6febb9065ab4a1a5298acb66ac1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Sep 02 15:42:43 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 03 09:55:24 2010 -0700"
      },
      "message": "cls_cgroup: Fix rcu lockdep warning\n\nDave reported an rcu lockdep warning on 2.6.35.4 kernel\n\ntask-\u003ecgroups and task-\u003ecgroups-\u003esubsys[i] are protected by RCU.\nSo we avoid accessing invalid pointers here. This might happen,\nfor example, when you are deref-ing those pointers while someone\nmove @task from one cgroup to another.\n\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc8acf2c8c3e43fcc192762a9f964b3e9a17748b",
      "tree": "e3a91392771a22390e59c24fcb7bad3045ce17d1",
      "parents": [
        "7162f6691e9d39d8d866574687cddb3f1ec65d72"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Sep 02 13:07:41 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 02 19:06:22 2010 -0700"
      },
      "message": "drivers/net: avoid some skb-\u003eip_summed initializations\n\nfresh skbs have ip_summed set to CHECKSUM_NONE (0)\n\nWe can avoid setting again skb-\u003eip_summed to CHECKSUM_NONE in drivers.\n\nIntroduce skb_checksum_none_assert() helper so that we keep this\nassertion documented in driver sources.\n\nChange most occurrences of :\n\nskb-\u003eip_summed \u003d CHECKSUM_NONE;\n\nby :\n\nskb_checksum_none_assert(skb);\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7162f6691e9d39d8d866574687cddb3f1ec65d72",
      "tree": "c511679caf5c825ede4728870c513f92f4f1616b",
      "parents": [
        "250e061e1d3e26600236a3dd9172e7f5f5916c00",
        "78ab952717b62c0ba6ca7f7a27eaa0486685e45f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 02 12:45:44 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 02 12:45:44 2010 -0700"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "78ab952717b62c0ba6ca7f7a27eaa0486685e45f",
      "tree": "a4ab2bfc578f279fc6847031f501d84c75057531",
      "parents": [
        "3e502e63586920f219ed2590f69c1f5a8888cfa4",
        "85f72bc839705294b32b6c16b491c0422f0a71b3"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Sep 02 13:30:07 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Sep 02 13:30:07 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n"
    },
    {
      "commit": "c68839963426d42bdb2c915b435f9860d060e645",
      "tree": "b7ade0bcf08dc6c2a8465cb78bec556079c7c963",
      "parents": [
        "8ed2163ff3b6abc5143d46dea73e523b22a6f987"
      ],
      "author": {
        "name": "Peter Meerwald",
        "email": "pmeerw@pmeerw.net",
        "time": "Thu Sep 02 04:06:24 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 02 10:12:05 2010 -0700"
      },
      "message": "net: Improve comments in include/linux/phy.h\n\nCorrect state range of PHY bus addresses (i.e. 0-31) in comment,\nmake spelling of PHY consistent in comments.\n\nSigned-off-by: Peter Meerwald \u003cpmeerw@pmeerw.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "86cac58b71227cc34a3d0e78f19585c0eff49ea3",
      "tree": "e3329c4599474c12f17b0de5b2e8e4ff92233853",
      "parents": [
        "aed5029ead26fe47527d9e9f2052cf56b72543f0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Aug 31 18:25:32 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 01 10:57:55 2010 -0700"
      },
      "message": "skge: add GRO support\n\n- napi_gro_flush() is exported from net/core/dev.c, to avoid\n  an irq_save/irq_restore in the packet receive path.\n- use napi_gro_receive() instead of netif_receive_skb()\n- use napi_gro_flush() before calling __napi_complete()\n- turn on NETIF_F_GRO by default\n- Tested on a Marvell 88E8001 Gigabit NIC\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "a28dec2f26013aad89446b1f708f948617bc28a2"
}
