)]}'
{
  "log": [
    {
      "commit": "b738127dfb469bb9f595cdace30e7f881e8146b2",
      "tree": "a2d79958aa2da098dc38c72973205d516896c54b",
      "parents": [
        "13937911f93ef52ae652f4652761aea6a58d3193"
      ],
      "author": {
        "name": "Jesse Gross",
        "email": "jesse@nicira.com",
        "time": "Wed Oct 20 13:56:02 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 21 01:26:50 2010 -0700"
      },
      "message": "vlan: Rename VLAN_GROUP_ARRAY_LEN to VLAN_N_VID.\n\nVLAN_GROUP_ARRAY_LEN is simply the number of possible vlan VIDs.\nSince vlan groups will soon be more of an implementation detail\nfor vlan devices, rename the constant to be descriptive of its\nactual purpose.\n\nSigned-off-by: Jesse Gross \u003cjesse@nicira.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27b75c95f10d249574d9c4cb9dab878107faede8",
      "tree": "466656d86aaa395951e12b50903e730203c5f86f",
      "parents": [
        "e6484930d7c73d324bccda7d43d131088da697b9"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 15 05:44:11 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 20 03:02:23 2010 -0700"
      },
      "message": "net: avoid RCU for NOCACHE dst\n\nThere is no point using RCU for dst we allocate for a very short time\n(used once).\n\nChange dst_release() to take DST_NOCACHE into account, but also change\nskb_dst_set_noref() to force a refcount increment for such dst.\n\nThis is a _huge_ gain, because we dont waste memory to store xx thousand\nof dsts. Instead of queueing them to RCU, we can free them instantly.\n\nCPU caches can stay hot, re-using same memory blocks to hold temporary\ndsts.\n\nNote : remove unneeded smp_mb__before_atomic_dec(); in dst_release(),\nsince atomic_dec_return() implies a full memory barrier.\n\nStress test, 160.000.000 udp frames sent, IP route cache disabled\n(DDOS).\n\nBefore:\n\nreal    0m38.091s\nuser    0m13.189s\nsys     7m53.018s\n\nAfter:\n\nreal\t0m29.946s\nuser\t0m12.157s\nsys\t7m40.605s\n\nFor reference, if IP route cache was enabled :\n\nreal\t0m32.030s\nuser\t0m10.521s\nsys\t8m15.243s\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e6484930d7c73d324bccda7d43d131088da697b9",
      "tree": "afa528185a8f679730275722cbd19f660101af50",
      "parents": [
        "bd25fa7ba59cd26094319dfba0011b48465f7355"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Mon Oct 18 18:04:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 20 02:27:59 2010 -0700"
      },
      "message": "net: allocate tx queues in register_netdevice\n\nThis patch introduces netif_alloc_netdev_queues which is called from\nregister_device instead of alloc_netdev_mq.  This makes TX queue\nallocation symmetric with RX allocation.  Also, queue locks allocation\nis done in netdev_init_one_queue.  Change set_real_num_tx_queues to\nfail if requested number \u003c 1 or greater than number of allocated\nqueues.\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": "5eeaa2db162f1f6d83e988d4d28f4ba7be600e44",
      "tree": "440e245201485fcfb7858bf57aae755c00b15651",
      "parents": [
        "c5e90f562047ff9713183cf5e18f5e8997bc7373",
        "c64557d666eb62eb5f296c6b93bd0a5525ed1e36"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 20 01:59:48 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 20 01:59:48 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": "c2355e1ab910278a94d487b78590ee3c8eecd08a",
      "tree": "6a3adce66355ad36483500475f9931d0e359695e",
      "parents": [
        "c6ce3854f098e1307ecd3bde07903d65fb14a9cb"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Oct 13 16:01:49 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 18 08:32:07 2010 -0700"
      },
      "message": "bonding: Fix bonding drivers improper modification of netpoll structure\n\nThe bonding driver currently modifies the netpoll structure in its xmit path\nwhile sending frames from netpoll.  This is racy, as other cpus can access the\nnetpoll structure in parallel. Since the bonding driver points np-\u003edev to a\nslave device, other cpus can inadvertently attempt to send data directly to\nslave devices, leading to improper locking with the bonding master, lost frames,\nand deadlocks.  This patch fixes that up.\n\nThis patch also removes the real_dev pointer from the netpoll structure as that\ndata is really only used by bonding in the poll_controller, and we can emulate\nits behavior by check each slave for IS_UP.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1f8c6cbe6f08f93ac2a4ca19625891d8a82b7f8",
      "tree": "0ed97a9e3ed0414f69a7ad65778ee4dbeb282642",
      "parents": [
        "d3cd15657516141adce387810be8cb377baf020e"
      ],
      "author": {
        "name": "Marc Kleine-Budde",
        "email": "mkl@pengutronix.de",
        "time": "Mon Oct 18 15:00:18 2010 +0200"
      },
      "committer": {
        "name": "Marc Kleine-Budde",
        "email": "mkl@pengutronix.de",
        "time": "Mon Oct 18 15:16:08 2010 +0200"
      },
      "message": "can: mcp251x: Don\u0027t use pdata-\u003emodel for chip selection anymore\n\nSince commit e446630c960946b5c1762e4eadb618becef599e7, i.e. v2.6.35-rc1,\nthe mcp251x chip model can be selected via the modalias member in the\nstruct spi_board_info. The driver stores the actual model in the\nstruct mcp251x_platform_data.\n\nFrom the driver point of view the platform_data should be read only.\nSince all in-tree users of the mcp251x have already been converted to\nthe modalias method, this patch moves the \"model\" member from the\nstruct mcp251x_platform_data to the driver\u0027s private data structure.\n\nSigned-off-by: Marc Kleine-Budde \u003cmkl@pengutronix.de\u003e\nCc: Christian Pellegrin \u003cchripell@fsfe.org\u003e\nCc: Marc Zyngier \u003cmaz@misterjones.org\u003e\n"
    },
    {
      "commit": "8e602ce2980fd6941dc0d3dda12e5095e8206f34",
      "tree": "1a0ea79a6db1b01660cc034c822d02c95e356388",
      "parents": [
        "c60ce4e265404ca42ba860401f4b0f1e97332a67"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Oct 14 05:56:18 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 17 13:49:14 2010 -0700"
      },
      "message": "netns: reorder fields in struct net\n\nIn a network bench, I noticed an unfortunate false sharing between\n\u0027loopback_dev\u0027 and \u0027count\u0027 fields in \"struct net\".\n\n\u0027count\u0027 is written each time a socket is created or destroyed, while\nloopback_dev might be often read in routing code.\n\nMove loopback_dev in a read mostly section of \"struct net\"\n\nNote: struct netns_xfrm is cache line aligned on SMP.\n(It contains a \"struct dst_ops\")\nMove it at the end to avoid holes, and reduce sizeof(struct net) by 128\nbytes on ia32.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "31e3c3f6f1f9b154981a0e6620df700463db30ee",
      "tree": "5ed74529c528cc9a09d6f8c9a5083aaf4849b62e",
      "parents": [
        "15419227f773b6c1b5fae44bde876078a9204caa"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Oct 13 13:20:35 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Oct 16 11:13:24 2010 -0700"
      },
      "message": "tipc: cleanup function namespace\n\nDo some cleanups of TIPC based on make namespacecheck\n  1. Don\u0027t export unused symbols\n  2. Eliminate dead code\n  3. Make functions and variables local\n  4. Rename buf_acquire to tipc_buf_acquire since it is used in several files\n\nCompile tested only.\nThis make break out of tree kernel modules that depend on TIPC routines.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Jon Maloy \u003cjon.maloy@ericsson.com\u003e\nAcked-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "564824b0c52c34692d804bb6ea214451615b0b50",
      "tree": "d836fa51848026df74e2bec2b634f1fcf3c6d02f",
      "parents": [
        "6f0333b8fde44b8c04a53b2461504f0e8f1cebe6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 11 19:05:25 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Oct 16 11:13:19 2010 -0700"
      },
      "message": "net: allocate skbs on local node\n\ncommit b30973f877 (node-aware skb allocation) spread a wrong habit of\nallocating net drivers skbs on a given memory node : The one closest to\nthe NIC hardware. This is wrong because as soon as we try to scale\nnetwork stack, we need to use many cpus to handle traffic and hit\nslub/slab management on cross-node allocations/frees when these cpus\nhave to alloc/free skbs bound to a central node.\n\nskb allocated in RX path are ephemeral, they have a very short\nlifetime : Extra cost to maintain NUMA affinity is too expensive. What\nappeared as a nice idea four years ago is in fact a bad one.\n\nIn 2010, NIC hardwares are multiqueue, or we use RPS to spread the load,\nand two 10Gb NIC might deliver more than 28 million packets per second,\nneeding all the available cpus.\n\nCost of cross-node handling in network and vm stacks outperforms the\nsmall benefit hardware had when doing its DMA transfert in its \u0027local\u0027\nmemory node at RX time. Even trying to differentiate the two allocations\ndone for one skb (the sk_buff on local node, the data part on NIC\nhardware node) is not enough to bring good performance.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c64557d666eb62eb5f296c6b93bd0a5525ed1e36",
      "tree": "1e25cc32521d06ae876de18bb8e48b3cf9d30808",
      "parents": [
        "1a63c353c856c9f6d44a533afb6ad6dbbcdea683",
        "0d91f22b75347d9503b17a42b6c74d3f7750acd6"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 15 16:11:56 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 15 16:11:56 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": "1a63c353c856c9f6d44a533afb6ad6dbbcdea683",
      "tree": "a51c18f01c031a21f07ec3be07ffae210bb9adc7",
      "parents": [
        "7662ff46b7b3678162ce125903115e4ab0607a2d",
        "b3c0598952e02f1f1f6d003574549d940ecbf31a"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 15 16:00:02 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 15 16:00:02 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-next-2.6 into for-davem\n"
    },
    {
      "commit": "b3d6255388de0680a14f0907deb7b7f4fa0d25d5",
      "tree": "8eaefeadef047a8bc6fcc269669ac4288e41ef64",
      "parents": [
        "7368ddf144afd79456fd853fa25f33e31da003a9"
      ],
      "author": {
        "name": "Kumar Sanghvi",
        "email": "kumar.sanghvi@stericsson.com",
        "time": "Tue Oct 12 20:14:43 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 13 14:40:34 2010 -0700"
      },
      "message": "Phonet: \u0027connect\u0027 socket implementation for Pipe controller\n\nBased on suggestion by Rémi Denis-Courmont to implement \u0027connect\u0027\nfor Pipe controller logic,  this patch implements \u0027connect\u0027 socket\ncall for the Pipe controller logic.\nThe patch does following:-\n- Removes setsockopts for PNPIPE_CREATE and PNPIPE_DESTROY\n- Adds setsockopt for setting the Pipe handle value\n- Implements connect socket call\n- Updates the Pipe controller logic\n\nUser-space should now follow below sequence with Pipe controller:-\n-socket\n-bind\n-setsockopt for PNPIPE_PIPE_HANDLE\n-connect\n-setsockopt for PNPIPE_ENCAP_IP\n-setsockopt for PNPIPE_ENABLE\n\nGPRS/3G data has been tested working fine with this.\n\nSigned-off-by: Kumar Sanghvi \u003ckumar.sanghvi@stericsson.com\u003e\nAcked-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7be5086d4cb7cceb71d724a9524d5e927785d04f",
      "tree": "eaf0b7d527b9b91c704c8f339d855923c0a34571",
      "parents": [
        "271733cf844a2f5f186ef3b40c26d6397b71039a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Oct 13 12:06:24 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 13 15:45:22 2010 -0400"
      },
      "message": "mac80211: add probe request filter flag\n\nUsing the frame registration notification, we\ncan see when probe requests are requested and\nnotify the low-level driver via filtering. The\nflag is also set in AP and IBSS modes.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "271733cf844a2f5f186ef3b40c26d6397b71039a",
      "tree": "6b674540afe189b48599ae423c2174ebd48a8ffe",
      "parents": [
        "7a8266524af7ec70d1b3d10f964ce911d922d466"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Oct 13 12:06:23 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 13 15:45:22 2010 -0400"
      },
      "message": "cfg80211: notify drivers about frame registrations\n\nDrivers may need to adjust their filters according\nto frame registrations, so notify them about them.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "10d8dad8453f8648a448960d7a2d3d983dfe0ed3",
      "tree": "a5a550e2e5cdecdbc2a9fcff4098486be56139be",
      "parents": [
        "908ebfb95d16bdf7f5f37ad911ccd9b7350ba780"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Oct 12 07:07:42 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 13 15:45:21 2010 -0400"
      },
      "message": "wext: fix alignment problem in serializing \u0027struct iw_point\u0027\n\nwext: fix alignment problem in serializing \u0027struct iw_point\u0027\n\nThis fixes a typo in the definition of the serialized length of struct iw_point:\n a) wireless.h is exported to userspace, the typo causes IW_EV_POINT_PK_LEN\n    to be 12 on 64-bit, and 8 on 32-bit systems (causing misalignment);\n b) in compat-64 mode iwe_stream_add_point() memcpys overlap (see below).\n\nThe second case in  in compat-64 mode looks like (variable names are as in\ninclude/net/iw_handler.h:iwe_stream_add_point()):\n\n point_len \u003d IW_EV_COMPAT_POINT_LEN \u003d 8\n lcp_len   \u003d IW_EV_COMPAT_LCP_LEN   \u003d 4\n 2nd memcpy: IW_EV_POINT_PK_LEN - IW_EV_LCP_PK_LEN \u003d 12 - 4 \u003d 8\n\n IW_EV_LCP_PK_LEN\n \u003c--------------\u003e                *---\u003e \u0027extra\u0027 data area\n +-------+-------+-------+-------+---------------+------- ...-+\n | len   | cmd   |length | flags |  (empty) -\u003e extra      ... |\n +-------+-------+-------+-------+---------------+------- ...-+\n    2       2       2       2          4\n\n     lcp_len\n \u003c--------------\u003e                \u003c-!! OVERLAP !!\u003e\n \u003c--1st memcpy--\u003e\u003c------- 2nd memcpy -----------\u003e\n                                 \u003c---- 3rd memcpy ------- ... \u003e\n \u003c--------- point_len ----------\u003e\n\nThis case could cause overrun whenever iw_point.length \u003c 4.\nThe other two cases are -\n * 32-bit systems: IW_EV_POINT_PK_LEN - IW_EV_LCP_PK_LEN \u003d  8 - 4 \u003d 4,\n   the second memcpy copies exactly the 4 required bytes;\n * 64-bit systems: IW_EV_POINT_PK_LEN - IW_EV_LCP_PK_LEN \u003d 12 - 4 \u003d 8,\n   the second memcpy copies a superfluous (but non overlapping) 4 bytes.\n\nThe patch changes IW_EV_POINT_PK_LEN to be 8, so that in all 3 cases always only\nthe requested iw_point.{length,flags} (both __u16) are copied, avoiding overrrun\n(compat-64) and superfluous copy (64-bit). In addition, the userspace header is\nsanitized (in agreement with version 30 of the wireless tools).\n\nMany thanks to Johannes Berg for help and review with this patch.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "29b4433d991c88d86ca48a4c1cc33c671475be4b",
      "tree": "2ad21b86aab8193c4533820c40cd31af97a7377f",
      "parents": [
        "f0b9f4725180ea58c8da78b3de0b4e0ad180fc2c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 11 10:22:12 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 12 12:35:25 2010 -0700"
      },
      "message": "net: percpu net_device refcount\n\nWe tried very hard to remove all possible dev_hold()/dev_put() pairs in\nnetwork stack, using RCU conversions.\n\nThere is still an unavoidable device refcount change for every dst we\ncreate/destroy, and this can slow down some workloads (routers or some\napp servers, mmap af_packet)\n\nWe can switch to a percpu refcount implementation, now dynamic per_cpu\ninfrastructure is mature. On a 64 cpus machine, this consumes 256 bytes\nper device.\n\nOn x86, dev_hold(dev) code :\n\nbefore\n        lock    incl 0x280(%ebx)\nafter:\n        movl    0x260(%ebx),%eax\n        incl    fs:(%eax)\n\nStress bench :\n\n(Sending 160.000.000 UDP frames,\nIP route cache disabled, dual E5540 @2.53GHz,\n32bit kernel, FIB_TRIE)\n\nBefore:\n\nreal    1m1.662s\nuser    0m14.373s\nsys     12m55.960s\n\nAfter:\n\nreal    0m51.179s\nuser    0m15.329s\nsys     10m15.942s\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "534c92fde74c8d2143fc15b5f1d957f42cb43570",
      "tree": "1f6fe4dcf8bebd4b8313357036614900f289aab2",
      "parents": [
        "ab3e571564a5d8fa4923e2e858e574c931a014c7"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@nokia.com",
        "time": "Fri Oct 01 12:05:11 2010 +0300"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Tue Oct 12 12:44:53 2010 -0300"
      },
      "message": "Bluetooth: clean up rfcomm code\n\nRemove dead code and unused rfcomm thread events\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@nokia.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "796c86eec84ddfd02281c5071838ed1fefda6b90",
      "tree": "5b6c705846e46c39b4ddc233e5a1604d9fb9476d",
      "parents": [
        "0fba2558cbb3fae3a09147b7d6e18a6204204e0e"
      ],
      "author": {
        "name": "Mat Martineau",
        "email": "mathewm@codeaurora.org",
        "time": "Wed Sep 08 10:05:27 2010 -0700"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Tue Oct 12 12:44:51 2010 -0300"
      },
      "message": "Bluetooth: Add common code for stream-oriented recvmsg()\n\nThis commit adds a bt_sock_stream_recvmsg() function for use by any\nBluetooth code that uses SOCK_STREAM sockets.  This code is copied\nfrom rfcomm_sock_recvmsg() with minimal modifications to remove\nRFCOMM-specific functionality and improve readability.\n\nL2CAP (with the SOCK_STREAM socket type) and RFCOMM have common needs\nwhen it comes to reading data.  Proper stream read semantics require\nthat applications can read from a stream one byte at a time and not\nlose any data.  The RFCOMM code already operated on and pulled data\nfrom the underlying L2CAP socket, so very few changes were required to\nmake the code more generic for use with non-RFCOMM data over L2CAP.\n\nApplications that need more awareness of L2CAP frame boundaries are\nstill free to use SOCK_SEQPACKET sockets, and may verify that they\nconnection did not fall back to basic mode by calling getsockopt().\n\nSigned-off-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "fb3d8eb47ce377d6d7a8fc58b8046ea9eb376a28",
      "tree": "f39c407dc40a881d2502d195c655674d51995ce8",
      "parents": [
        "8f1e1742233cd1c3444dfc6c945a2efb2814e157"
      ],
      "author": {
        "name": "David Vrabel",
        "email": "david.vrabel@csr.com",
        "time": "Mon Aug 09 17:42:21 2010 -0400"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Tue Oct 12 12:44:51 2010 -0300"
      },
      "message": "Bluetooth: Support SDIO devices that are AMP controllers\n\nSigned-off-by: David Vrabel \u003cdavid.vrabel@csr.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "8f1e1742233cd1c3444dfc6c945a2efb2814e157",
      "tree": "252563ff2af556132d23f0edfd6bfa92a8a97dc5",
      "parents": [
        "29b4433d991c88d86ca48a4c1cc33c671475be4b"
      ],
      "author": {
        "name": "David Vrabel",
        "email": "david.vrabel@csr.com",
        "time": "Mon Aug 09 17:38:10 2010 -0400"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Tue Oct 12 12:44:51 2010 -0300"
      },
      "message": "Bluetooth: HCI devices are either BR/EDR or AMP radios\n\nHCI transport drivers may not know what type of radio an AMP device has\nso only say whether they\u0027re BR/EDR or AMP devices.\n\nSigned-off-by: David Vrabel \u003cdavid.vrabel@csr.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "e37ef961e50d74f55e9edb48e54dd2e7963aad39",
      "tree": "ac069f1c0fa4eaf54b28d712d05f7e483d165b19",
      "parents": [
        "fc66f95c68b6d4535a0ea2ea15d5cf626e310956"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 11 12:20:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 16:09:14 2010 -0700"
      },
      "message": "neigh: reorder struct neighbour fields\n\nLe mardi 12 octobre 2010 à 00:02 +0200, Eric Dumazet a écrit :\n\u003e Here is the followup patch.\n\u003e\n\u003e Thanks !\n\u003e\n\nOops, this was an old version, the up2date ones also took care of \"used\"\nfield.\n\nI guess its time for a sleep, sorry again.\n\n[PATCH net-next V2] neigh: reorder struct neighbour fields\n\n(refcnt) and (ha_lock, ha, used, dev, output, ops, primary_key) should\nbe placed on a separate cache lines.\n\nrefcnt can be often written, while other fields are mostly read.\n\nThis gave me good result on stress test :\n\nbefore:\n\nreal    0m45.570s\nuser    0m15.525s\nsys     9m56.669s\n\nAfter:\n\nreal    0m41.841s\nuser    0m15.261s\nsys     8m45.949s\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc66f95c68b6d4535a0ea2ea15d5cf626e310956",
      "tree": "ac3a7f08ad741a67ff683bf93e5669ddcae95ed7",
      "parents": [
        "0ed8ddf4045fcfcac36bad753dc4046118c603ec"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 08 06:37:34 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 13:06:53 2010 -0700"
      },
      "message": "net dst: use a percpu_counter to track entries\n\nstruct dst_ops tracks number of allocated dst in an atomic_t field,\nsubject to high cache line contention in stress workload.\n\nSwitch to a percpu_counter, to reduce number of time we need to dirty a\ncentral location. Place it on a separate cache line to avoid dirtying\nread only fields.\n\nStress test :\n\n(Sending 160.000.000 UDP frames,\nIP route cache disabled, dual E5540 @2.53GHz,\n32bit kernel, FIB_TRIE, SLUB/NUMA)\n\nBefore:\n\nreal    0m51.179s\nuser    0m15.329s\nsys     10m15.942s\n\nAfter:\n\nreal\t0m45.570s\nuser\t0m15.525s\nsys\t9m56.669s\n\nWith a small reordering of struct neighbour fields, subject of a\nfollowing patch, (to separate refcnt from other read mostly fields)\n\nreal\t0m41.841s\nuser\t0m15.261s\nsys\t8m45.949s\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ed8ddf4045fcfcac36bad753dc4046118c603ec",
      "tree": "cf1d9eb14668c4d2257b3519ed7deec8c5cb396d",
      "parents": [
        "d122179a3c0fdc71b88cb9e3605f372b1651a9ff"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Oct 07 10:44:07 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 12:54:04 2010 -0700"
      },
      "message": "neigh: Protect neigh-\u003eha[] with a seqlock\n\nAdd a seqlock in struct neighbour to protect neigh-\u003eha[], and avoid\ndirtying neighbour in stress situation (many different flows / dsts)\n\nDirtying takes place because of read_lock(\u0026n-\u003elock) and n-\u003eused writes.\n\nSwitching to a seqlock, and writing n-\u003eused only on jiffies changes\npermits less dirtying.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d122179a3c0fdc71b88cb9e3605f372b1651a9ff",
      "tree": "63a48b333e7565967b6d7c9e246557bfcb9f225f",
      "parents": [
        "419c20465d6319274e7286f0966e2390540e6e0a",
        "b00916b189d13a615ff05c9242201135992fcda3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 12:30:34 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 12:30:34 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/core/ethtool.c\n"
    },
    {
      "commit": "cfdfa4d3a0c7aa1287c61326a7714f262466157a",
      "tree": "24726a9526bd15e045b6f2a2c99bc141c2e37efc",
      "parents": [
        "3430098ae463e31ab16926ac3eb295368a3ca5d9"
      ],
      "author": {
        "name": "Steve deRosier",
        "email": "steve@cozybit.com",
        "time": "Sat Oct 09 17:23:28 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 11 15:04:21 2010 -0400"
      },
      "message": "mac80211: Update mesh constants to approved IEEE ANA values\n\nThis patch updates IEEE802.11 mesh constants to be consistent with newly\napproved values. It modifies some values, as well as adds many new constants\nin preparation for updating mesh code to the current 802.11s drafts. ANA\nnumbers were taken from:\nhttps://mentor.ieee.org/802.11/dcn/09/11-09-0031-12-0000-ana-database-assigned-number-authority.xls\n\nA few notes are in order:\n1. This will break backwards compatibility with existing Linux kernels as\nover-the-air constants have changed.\n2. Some old and obsolete constants have been retained for now as the mesh code\nitself hasn\u0027t been updated yet to the new 802.11s draft. This was desired to\nkeep the existing mesh scheme working until it can be updated. Adding the\napproved values is the first step in updating the mesh code.\n3. Obsolete constants have been clearly marked.\n4. All ANA approved 802.11s constants have been added.\n\nSigned-off-by: Steve deRosier \u003csteve@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8610c29a2c9f273886b1c31ae4d92c69d4326262",
      "tree": "c0424e55a67e0a2a1c7f1d72a9d807c442da5a9c",
      "parents": [
        "15943a72c7d2031c9150917ca9161a9f891d455a"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sat Oct 09 02:39:29 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 11 15:04:20 2010 -0400"
      },
      "message": "cfg80211: add channel utilization stats to the survey command\n\nUsing these, user space can calculate a relative channel utilization\nwith arbitrary intervals by regularly taking snapshots of the survey\nresults.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5a5c731aa59cc2c44ca20f45b1a577cd4f5435e2",
      "tree": "c5f45cd0e014bbaf600fe172ebbd117ca2737bbb",
      "parents": [
        "b38afa87698375179026224522c2e48dcbf17e65"
      ],
      "author": {
        "name": "Ben Greear",
        "email": "greearb@candelatech.com",
        "time": "Thu Oct 07 16:39:20 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 11 15:04:19 2010 -0400"
      },
      "message": "wireless: Set some stats used by /proc/net/wireless (wext)\n\nSome stats for /proc/net/wireless (and wext in general) are not\nbeing set.  This patch addresses a few of those with values easily\nobtained from mac80211 core.\n\nSigned-off-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "34d101dd6204bd100fc2e6f7b5f9a10f959ce2c9",
      "tree": "77b714a4de7273ec53dac80396b94a2f896cfa95",
      "parents": [
        "37f9fc452d138dfc4da2ee1ce5ae85094efc3606"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 11 09:16:57 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 09:16:57 2010 -0700"
      },
      "message": "neigh: speedup neigh_hh_init()\n\nWhen a new dst is used to send a frame, neigh_resolve_output() tries to\nassociate an struct hh_cache to this dst, calling neigh_hh_init() with\nthe neigh rwlock write locked.\n\nMost of the time, hh_cache is already known and linked into neighbour,\nso we find it and increment its refcount.\n\nThis patch changes the logic so that we call neigh_hh_init() with\nneighbour lock read locked only, so that fast path can be run in\nparallel by concurrent cpus.\n\nThis brings part of the speedup we got with commit c7d4426a98a5f\n(introduce DST_NOCACHE flag) for non cached dsts, even for cached ones,\nremoving one of the contention point that routers hit on multiqueue\nenabled machines.\n\nFurther improvements would need to use a seqlock instead of an rwlock to\nprotect neigh-\u003eha[], to not dirty neigh too often and remove two atomic\nops.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "03789f26722a15ccfe6f191e9fb3d356f2f18a1e",
      "tree": "a55a493a1b4804d0acafad5fd1a4a3b1100f3ff4",
      "parents": [
        "6d8e74ed377dd4cbad7ccc69300f734090e15c05"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Fri Oct 08 04:02:02 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 08 14:09:10 2010 -0700"
      },
      "message": "Phonet: cleanup pipe enable socket option\n\nThe current code works like this:\n\n  int garbage, status;\n  socklen_t len \u003d sizeof(status);\n\n  /* enable pipe */\n  setsockopt(fd, SOL_PNPIPE, PNPIPE_ENABLE, \u0026garbage, sizeof(garbage));\n  /* disable pipe */\n  setsockopt(fd, SOL_PNPIPE, PNPIPE_DISABLE, \u0026garbage, sizeof(garbage));\n  /* get status */\n  getsockopt(fd, SOL_PNPIPE, PNPIPE_INQ, \u0026status, \u0026len);\n\n...which does not follow the usual socket option pattern. This patch\nmerges all three \"options\" into a single gettable\u0026settable option,\nbefore Linux 2.6.37 gets out:\n\n  int status;\n  socklen_t len \u003d sizeof(status);\n\n  /* enable pipe */\n  status \u003d 1;\n  setsockopt(fd, SOL_PNPIPE, PNPIPE_ENABLE, \u0026status, sizeof(status));\n  /* disable pipe */\n  status \u003d 0;\n  setsockopt(fd, SOL_PNPIPE, PNPIPE_ENABLE, \u0026status, sizeof(status));\n  /* get status */\n  getsockopt(fd, SOL_PNPIPE, PNPIPE_ENABLE, \u0026status, \u0026len);\n\nThis also fixes the error code from EFAULT to ENOTCONN.\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nCc: Kumar Sanghvi \u003ckumar.sanghvi@stericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cf8d1a3b8cb19fa49494c1b8f0f9e3a37f2c218",
      "tree": "0e9262488832ad27f6ba42680bf104872fa3c697",
      "parents": [
        "8391d07b80e8da957cd888870e23f8e218438622",
        "e9a68707d736f4f73d7e209885d7b4c5c452b1dc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 08 13:51:11 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 08 13:51:11 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": "e9a68707d736f4f73d7e209885d7b4c5c452b1dc",
      "tree": "d9f76964c77c1059483b08436ed060b702b8e25d",
      "parents": [
        "dd53df265b1ee7a1fbbc76bb62c3bec2383bbd44",
        "15a6321d1c0f8db561932cd99e1b9897981da71f"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 08 15:39:28 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 08 15:39:28 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\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/wireless/ipw2x00/ipw2200.c\n"
    },
    {
      "commit": "388ac775be95e510c2095ed6cd59422a5183a9fb",
      "tree": "bbdb6f1b5aa46ec8ebb5c1eccdd4934082a66094",
      "parents": [
        "43b19952de54b0fccfcdc5968891ebe550367fe8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Oct 07 13:11:09 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Oct 07 14:41:28 2010 -0400"
      },
      "message": "cfg80211: constify WDS address\n\nThere\u0027s no need for the WDS peer address\nto not be const, so make it const.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fb3dbece264a50ab4373f3af0bbbd9175d3ad4d7",
      "tree": "7208ecc94dcec12738635c5850980ce6d9f7349c",
      "parents": [
        "12e94471b2be5ef9b55b10004a3a2cd819490036",
        "eaa71b318c5ed0cd1ac3182a533471dc5edf372d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 07 00:59:39 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 07 00:59:39 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-2.6\n"
    },
    {
      "commit": "69259abb64d4da77273bf59accfc9fa79e7165f4",
      "tree": "bd043ab03a788b749c8d5ae4049d8defae9abf34",
      "parents": [
        "dd53df265b1ee7a1fbbc76bb62c3bec2383bbd44",
        "12e94471b2be5ef9b55b10004a3a2cd819490036"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 06 19:39:31 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 06 19:39:31 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/pcmcia/pcnet_cs.c\n\tnet/caif/caif_socket.c\n"
    },
    {
      "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": "b206b4ef062d83c0875a085672ed50e8c8b01521",
      "tree": "f182cc272055f7b646bc62a5d37fb097a8fd07cc",
      "parents": [
        "09be251e9005ebd67e5eabcaad904edb7ecacc55"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Wed Oct 06 18:34:12 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 06 16:30:43 2010 -0400"
      },
      "message": "nl80211/mac80211: Add retry and failed transmission count to station info\n\nThis information is already available in mac80211, we just need to export it\nvia cfg80211 and nl80211.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e31b82136d1adc7a599b6e99d3321e5831841f5a",
      "tree": "c72d78d4cccfd08587e909c7efe59956f1cbc23e",
      "parents": [
        "53f73c09d64f1fa7d7e6e8b6bb7468d42eddc92d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Oct 05 19:39:30 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 06 16:30:40 2010 -0400"
      },
      "message": "cfg80211/mac80211: allow per-station GTKs\n\nThis adds API to allow adding per-station GTKs,\nupdates mac80211 to support it, and also allows\ndrivers to remove a key from hwaccel again when\nthis may be necessary due to multiple GTKs.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\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": "e1d9694cae722d00a94fb58f901aa69c9c324a16",
      "tree": "19a7f36292adbc178ba4fac6f2f9e1acadb1b3f1",
      "parents": [
        "39c12be86aaedd2f81bfb2236aca5333a2334dea",
        "b3a084b9b684622b149e8dcf03855bf0d5fb588b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 05 13:07:43 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 05 13:07:43 2010 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: rcu_read_lock_bh_held(): disabling irqs also disables bh\n  generic-ipi: Fix deadlock in __smp_call_function_single\n"
    },
    {
      "commit": "231d0aefd88e94129cb8fb84794f9bb788c6366e",
      "tree": "a97313f61b394f93413a9025e72de05179c0ef65",
      "parents": [
        "5336377d6225959624146629ce3fc88ee8ecda3d"
      ],
      "author": {
        "name": "Evgeny Kuznetsov",
        "email": "ext-eugeny.kuznetsov@nokia.com",
        "time": "Tue Oct 05 12:47:57 2010 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 05 11:47:18 2010 -0700"
      },
      "message": "wait: using uninitialized member of wait queue\n\nThe \"flags\" member of \"struct wait_queue_t\" is used in several places in\nthe kernel code without beeing initialized by init_wait().  \"flags\" is\nused in bitwise operations.\n\nIf \"flags\" not initialized then unexpected behaviour may take place.\nIncorrect flags might used later in code.\n\nAdded initialization of \"wait_queue_t.flags\" with zero value into\n\"init_wait\".\n\nSigned-off-by: Evgeny Kuznetsov \u003cEXT-Eugeny.Kuznetsov@nokia.com\u003e\n[ The bit we care about does end up being initialized by both\n   prepare_to_wait() and add_to_wait_queue(), so this doesn\u0027t seem to\n   cause actual bugs, but is definitely the right thing to do -Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5336377d6225959624146629ce3fc88ee8ecda3d",
      "tree": "571b9db75d1ba50faa1e399509563f367fd5694f",
      "parents": [
        "2f6b3aa7a563d05453c4d73ccf88191aee84333f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 05 11:29:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 05 11:29:27 2010 -0700"
      },
      "message": "modules: Fix module_bug_list list corruption race\n\nWith all the recent module loading cleanups, we\u0027ve minimized the code\nthat sits under module_mutex, fixing various deadlocks and making it\npossible to do most of the module loading in parallel.\n\nHowever, that whole conversion totally missed the rather obscure code\nthat adds a new module to the list for BUG() handling.  That code was\ndoubly obscure because (a) the code itself lives in lib/bugs.c (for\ndubious reasons) and (b) it gets called from the architecture-specific\n\"module_finalize()\" rather than from generic code.\n\nCalling it from arch-specific code makes no sense what-so-ever to begin\nwith, and is now actively wrong since that code isn\u0027t protected by the\nmodule loading lock any more.\n\nSo this commit moves the \"module_bug_{finalize,cleanup}()\" calls away\nfrom the arch-specific code, and into the generic code - and in the\nprocess protects it with the module_mutex so that the list operations\nare now safe.\n\nFuture fixups:\n - move the module list handling code into kernel/module.c where it\n   belongs.\n - get rid of \u0027module_bug_list\u0027 and just use the regular list of modules\n   (called \u0027modules\u0027 - imagine that) that we already create and maintain\n   for other reasons.\n\nReported-and-tested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "46bf695802bb090d9d0d0fec6bb5b46c24b17d4e",
      "tree": "788afdbec413608f6331ffbac4153f0f6736e6b7",
      "parents": [
        "e7480bbb926c5816e4fbfca70748096bbe0e4978",
        "4b48e6876b641e1138f37a0fc11fb6a4fc3e24e1"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:50:27 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:50:27 2010 -0400"
      },
      "message": "Merge branch \u0027wireless-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx\n"
    },
    {
      "commit": "691895e7e2204be9a717809fb78d6ff7c10b470a",
      "tree": "a261d33e79b7b471f092127e4e57517f1603106e",
      "parents": [
        "970bf9d40c03e48cc34ee2c1a70693a0e0fca3f6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Oct 05 16:19:42 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:37:52 2010 -0400"
      },
      "message": "nl80211: fix remain-on-channel documentation\n\nThe documentation for NL80211_CMD_REMAIN_ON_CHANNEL\nisn\u0027t accurate, an interface index is required by\nthe command. Update it accordingly.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ff4c92d85c6f2777d2067f8552e7fefb4d1754ae",
      "tree": "77e35603821e5602e96c90644e42e70f097ad79c",
      "parents": [
        "2ee4e27cf25ab647137713ca16377d8d9e138ea2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Oct 04 21:14:03 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:30 2010 -0400"
      },
      "message": "genetlink: introduce pre_doit/post_doit hooks\n\nEach family may have some amount of boilerplate\nlocking code that applies to most, or even all,\ncommands.\n\nThis allows a family to handle such things in\na more generic way, by allowing it to\n a) include private flags in each operation\n b) specify a pre_doit hook that is called,\n    before an operation\u0027s doit() callback and\n    may return an error directly,\n c) specify a post_doit hook that can undo\n    locking or similar things done by pre_doit,\n    and finally\n d) include two private pointers in each info\n    struct passed between all these operations\n    including doit(). (It\u0027s two because I\u0027ll\n    need two in nl80211 -- can be extended.)\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "78be49ec2a0df34de9441930fdced20311fd709f",
      "tree": "0eb6da18b78abc19e58b1cfd2375c548454186a8",
      "parents": [
        "5a5b6ed6ce46be128f2a5a9e56f47193c3ac3e32"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Sat Oct 02 11:31:55 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:28 2010 -0400"
      },
      "message": "mac80211: distinct between max rates and the number of rates the hw can report\n\nSome drivers cannot handle multiple retry rates specified by the rc\nalgorithm but instead use their own retry table (for example rt2800).\nHowever, if such a device registers itself with a max_rates value of 1\nthe rc algorithm cannot make use of the extended information the device\ncan provide about retried rates. On the other hand, if a device\nregisters itself with a max_rates value \u003e 1 the rc algorithm assumes\nthat the device can handle multi rate retries.\n\nFix this issue by introducing another hw parameter max_report_rates that\ncan be set to a different value then max_rates to indicate if a device\nis capable of reporting more rates then specified in max_rates.\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e8347ebad2f1b15bddb6ed3ed5f767531eb52dc3",
      "tree": "02fa4846517ea56b06c0c6ad40d5870ca321153a",
      "parents": [
        "e51f3eff9a7e17ddd749799d4291f7e33e9883b9"
      ],
      "author": {
        "name": "Bill Jordan",
        "email": "bjordan@ig88.(none)",
        "time": "Fri Oct 01 13:54:28 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:24 2010 -0400"
      },
      "message": "cfg80211: patches to allow setting the WDS peer\n\nAdded a nl interface to set the peer bssid of a WDS interface.\n\nSigned-off-by: Bill Jordan \u003cbjordan@rajant.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ea229e682633a18c1fa2c408400a6923cfc47910",
      "tree": "db12c45737152b7aae91f05f3d1013057ea61563",
      "parents": [
        "663fcafd977f13e6483f7d4cf2ccdbc4fae81ed0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 30 21:21:25 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:23 2010 -0400"
      },
      "message": "cfg80211: remove spurious __KERNEL__ ifdef\n\nThe net/cfg80211.h header file isn\u0027t exported to\nuserspace, so there\u0027s no need for any kind of\n__KERNEL__ protection in it. If it was exported,\neverything else in it would need protection as\nwell, not just the logging stuff ...\n\nCc:Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "17e5a8082894a4b66cb69e7ec16074f0f01281e1",
      "tree": "604746f9c4aa8d77c41f1e22e9f553b5cdcfa823",
      "parents": [
        "0bda652300dff8136c9d889f1133462c7c7d332c"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Wed Sep 29 17:15:30 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:22 2010 -0400"
      },
      "message": "nl80211: allow drivers to indicate whether the survey data channel is in use\n\nSome user space applications only want to display survey data for\nthe operating channel, however there is no API to get that yet.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\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": "18ffe4b18cef097f789d3ff43b45f2938cebe241",
      "tree": "59a23065256d235eb85a7afcd2d0efa628d16e9c",
      "parents": [
        "b10c4d40b3e413a908072acc53dea13e90c39aff",
        "abb295f3b3db602f91accf58b526b30b48673af1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 01 10:58:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 01 10:58:31 2010 -0700"
      },
      "message": "Merge branch \u0027drm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:\n  vmwgfx: Fix fb VRAM pinning failure due to fragmentation\n  vmwgfx: Remove initialisation of dev::devname\n  vmwgfx: Enable use of the vblank system\n  vmwgfx: vt-switch (master drop) fixes\n  drm/vmwgfx: Fix breakage introduced by commit \"drm: block userspace under allocating buffer and having drivers overwrite it (v2)\"\n  drm: Hold the mutex when dropping the last GEM reference (v2)\n  drm/gem: handlecount isn\u0027t really a kref so don\u0027t make it one.\n  drm: i810/i830: fix locked ioctl variant\n  drm/radeon/kms: add quirk for MSI K9A2GM motherboard\n  drm/radeon/kms: fix potential segfault in r600_ioctl_wait_idle\n  drm: Prune GEM vma entries\n  drm/radeon/kms: fix up encoder info messages for DFP6\n  drm/radeon: fix PCI ID 5657 to be an RV410\n"
    },
    {
      "commit": "303a407002db563ae76d0f8a8ef0d8fe7954fcd4",
      "tree": "cb2383c974717eeecf861296e988bd8d6df98481",
      "parents": [
        "35ec42167bb5f13db93f1e8c13298eb564f95142",
        "fdb8c58a1671beb51949412e053926acd5500b5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 01 10:54:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 01 10:54:58 2010 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:\n  ACPI: invoke DSDT corruption workaround on all Toshiba Satellite\n  ACPI, APEI, Fix ERST MOVE_DATA instruction implementation\n  ACPI: fan: Fix more unbalanced code block\n  ACPI: acpi_pad: simplify code to avoid false gcc build warning\n  ACPI, APEI, Fix error path for memory allocation\n  ACPI, APEI, HEST Fix the unsuitable usage of platform_data\n  ACPI, APEI, Fix acpi_pre_map() return value\n  ACPI, APEI, Fix APEI related table size checking\n  ACPI: Disable Windows Vista compatibility for Toshiba P305D\n  ACPI: Kconfig: fix typo.\n  ACPI: add missing __percpu markup in arch/x86/kernel/acpi/cstate.c\n  ACPI: Fix typos\n  ACPI video: fix a poor warning message\n  ACPI: fix build warnings resulting from merge window conflict\n  ACPI: EC: add Vista incompatibility DMI entry for Toshiba Satellite L355\n  ACPI: expand Vista blacklist to include SP1 and SP2\n  ACPI: delete ZEPTO idle\u003dnomwait DMI quirk\n  ACPI: enable repeated PCIEXP wakeup by clearing PCIEXP_WAKE_STS on resume\n  PM / ACPI: Blacklist systems known to require acpi_sleep\u003dnonvs\n  ACPI: Don\u0027t report current_now if battery reports in mWh\n"
    },
    {
      "commit": "35ec42167bb5f13db93f1e8c13298eb564f95142",
      "tree": "2ca9d23a556144d5eb482f53675a4401c7ffd50f",
      "parents": [
        "3c729087d4312a4a1fa1a8b674fd9c8050cfc3db",
        "6110a1f43c27b516e16d5ce8860fca50748c2a87"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 01 10:53:45 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 01 10:53:45 2010 -0700"
      },
      "message": "Merge branch \u0027idle-release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6\n\n* \u0027idle-release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6:\n  intel_idle: Voluntary leave_mm before entering deeper\n  acpi_idle: add missing \\n to printk\n  intel_idle: add missing __percpu markup\n  intel_idle: Change mode 755 \u003d\u003e 644\n  cpuidle: Fix typos\n  intel_idle: PCI quirk to prevent Lenovo Ideapad s10-3 boot hang\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": "39b4d07aa3583ceefe73622841303a0a3e942ca1",
      "tree": "d42f6e782f331b1d967f50ca3a02b9e51ea88515",
      "parents": [
        "29d08b3efddca628b0360411ab2b85f7b1723f48"
      ],
      "author": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Thu Sep 30 09:10:26 2010 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Oct 01 21:08:45 2010 +1000"
      },
      "message": "drm: Hold the mutex when dropping the last GEM reference (v2)\n\nIn order to be fully threadsafe we need to check that the drm_gem_object\nrefcount is still 0 after acquiring the mutex in order to call the free\nfunction. Otherwise, we may encounter scenarios like:\n\nThread A:                                        Thread B:\ndrm_gem_close\nunreference_unlocked\nkref_put                                         mutex_lock\n...                                              i915_gem_evict\n...                                              kref_get -\u003e BUG\n...                                              i915_gem_unbind\n...                                              kref_put\n...                                              i915_gem_object_free\n...                                              mutex_unlock\nmutex_lock\ni915_gem_object_free -\u003e BUG\ni915_gem_object_unbind\nkfree\nmutex_unlock\n\nNote that no driver is currently using the free_unlocked vfunc and it is\nscheduled for removal, hasten that process.\n\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id\u003d30454\nReported-and-Tested-by: Magnus Kessler \u003cMagnus.Kessler@gmx.net\u003e\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nCc: stable@kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\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": "6110a1f43c27b516e16d5ce8860fca50748c2a87",
      "tree": "021233718337a4a72ba4715f4d0782d5253fec7c",
      "parents": [
        "9587a678fa56ea6d7f39b048f24f5d03a89bf9b3"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Sep 30 21:19:07 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Sep 30 21:19:22 2010 -0400"
      },
      "message": "intel_idle: Voluntary leave_mm before entering deeper\n\nAvoid TLB flush IPIs for the cores in deeper c-states by voluntary leave_mm()\nbefore entering into that state. CPUs tend to flush TLB in those c-states\nanyways.\n\nacpi_idle does this with C3-type states, but it was not caried over\nwhen intel_idle was introduced.  intel_idle can apply it\nto C-states in addition to those that ACPI might export as C3...\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "29d08b3efddca628b0360411ab2b85f7b1723f48",
      "tree": "f89a8a3069ebe9828b8a08c4b123f52625bf0bc7",
      "parents": [
        "130b9851933e6da636502cd85e1ba8f45f862e8c"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Sep 27 16:17:17 2010 +1000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Oct 01 09:17:44 2010 +1000"
      },
      "message": "drm/gem: handlecount isn\u0027t really a kref so don\u0027t make it one.\n\nThere were lots of places being inconsistent since handle count\nlooked like a kref but it really wasn\u0027t.\n\nFix this my just making handle count an atomic on the object,\nand have it increase the normal object kref.\n\nNow i915/radeon/nouveau drivers can drop the normal reference on\nuserspace object creation, and have the handle hold it.\n\nThis patch fixes a memory leak or corruption on unload, because\nthe driver had no way of knowing if a handle had been actually\nadded for this object, and the fbcon object needed to know this\nto clean itself up properly.\n\nReviewed-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "e454c844644683571617896ab2a4ce0109c1943e",
      "tree": "fd8fbcb76608bce78062c6a74ff8e8b65b3e34ae",
      "parents": [
        "b0239c80fe89d5832a68a0f3121a9d5ec9fb763e"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Tue Sep 21 16:31:11 2010 -0300"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Thu Sep 30 12:19:35 2010 -0300"
      },
      "message": "Bluetooth: Fix deadlock in the ERTM logic\n\nThe Enhanced Retransmission Mode(ERTM) is a realiable mode of operation\nof the Bluetooth L2CAP layer. Think on it like a simplified version of\nTCP.\nThe problem we were facing here was a deadlock. ERTM uses a backlog\nqueue to queue incomimg packets while the user is helding the lock. At\nsome moment the sk_sndbuf can be exceeded and we can\u0027t alloc new skbs\nthen the code sleep with the lock to wait for memory, that stalls the\nERTM connection once we can\u0027t read the acknowledgements packets in the\nbacklog queue to free memory and make the allocation of outcoming skb\nsuccessful.\n\nThis patch actually affect all users of bt_skb_send_alloc(), i.e., all\nL2CAP modes and SCO.\n\nWe are safe against socket states changes or channels deletion while the\nwe are sleeping wait memory. Checking for the sk-\u003esk_err and\nsk-\u003esk_shutdown make the code safe, since any action that can leave the\nsocket or the channel in a not usable state set one of the struct\nmembers at least. Then we can check both of them when getting the lock\nagain and return with the proper error if something unexpected happens.\n\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\nSigned-off-by: Ulisses Furquim \u003culisses@profusion.mobi\u003e\n"
    },
    {
      "commit": "65836112fc24bdf009554481b36b6ba0a690b855",
      "tree": "a165b5eb510a16c17c466fb79ae4a6c98998e3be",
      "parents": [
        "381bd10aff491216383291879b29461efb575119"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Tue Sep 28 20:20:28 2010 +0200"
      },
      "committer": {
        "name": "Luciano Coelho",
        "email": "luciano.coelho@nokia.com",
        "time": "Thu Sep 30 06:01:56 2010 +0300"
      },
      "message": "wl12xx: fix non-wl12xx build scenarios\n\nSupport building wl1271-equipped boards without building the\nwl1271 driver itself, e.g.:\n\nCONFIG_MACH_OMAP_ZOOM3\u003dy\nCONFIG_WL12XX is not set\n\nReported-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nSigned-off-by: Luciano Coelho \u003cluciano.coelho@nokia.com\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": "77f890223338c890fc33972673d2bd3a53061570",
      "tree": "c2ed6ee220adc2c69816feaf4bcd6273f3dcdd97",
      "parents": [
        "4193d9163582b05e33aca3392e46649e5c3da8d1",
        "cc60f8878eab892c03d06b10f389232b9b66bd83"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 29 18:41:19 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 29 18:41:19 2010 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:\n  dmaengine: fix interrupt clearing for mv_xor\n  missing inline keyword for static function in linux/dmaengine.h\n  dma/shdma: move dereference below the NULL check\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": "58f87ed0d45141a90167f34c0959d607160a26df",
      "tree": "c9c279958afd9c05d466a2f05b59d4e74d9423af",
      "parents": [
        "e9f74c489c9d4209946c04f29e7a724cb5537206"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.de.marchi@gmail.com",
        "time": "Tue Sep 07 12:49:45 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Sep 28 21:38:19 2010 -0400"
      },
      "message": "ACPI: Fix typos\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "a2724f28d9f99b7b42e800b528902f0e3321873b",
      "tree": "b4431876af950c16ea6af3a8f2864a4ae494bc62",
      "parents": [
        "050026feae5bd4fe2db4096b63b15abce7c47faa",
        "01db403cf99f739f86903314a489fb420e0e254f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 28 12:01:26 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 28 12:01:26 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (47 commits)\n  tcp: Fix \u003e4GB writes on 64-bit.\n  net/9p: Mount only matching virtio channels\n  de2104x: fix ethtool\n  tproxy: check for transparent flag in ip_route_newports\n  ipv6: add IPv6 to neighbour table overflow warning\n  tcp: fix TSO FACK loss marking in tcp_mark_head_lost\n  3c59x: fix regression from patch \"Add ethtool WOL support\"\n  ipv6: add a missing unregister_pernet_subsys call\n  s390: use free_netdev(netdev) instead of kfree()\n  sgiseeq: use free_netdev(netdev) instead of kfree()\n  rionet: use free_netdev(netdev) instead of kfree()\n  ibm_newemac: use free_netdev(netdev) instead of kfree()\n  smsc911x: Add MODULE_ALIAS()\n  net: reset skb queue mapping when rx\u0027ing over tunnel\n  br2684: fix scheduling while atomic\n  de2104x: fix TP link detection\n  de2104x: fix power management\n  de2104x: disable autonegotiation on broken hardware\n  net: fix a lockdep splat\n  e1000e: 82579 do not gate auto config of PHY by hardware during nominal use\n  ...\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": "31dfbc93923c0aaa0440b809f80ff2830c6a531a",
      "tree": "9527de1c84f266ea23d6009c454d7cf1d1769889",
      "parents": [
        "73758a5d51280ca0613b8380fc07351f4d64f9c8"
      ],
      "author": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Mon Sep 27 21:28:30 2010 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Sep 28 09:14:34 2010 +1000"
      },
      "message": "drm: Prune GEM vma entries\n\nHook the GEM vm open/close ops into the generic drm vm open/close so\nthat the private vma entries are created and destroy appropriately.\nFixes the leak of the drm_vma_entries during the lifetime of the filp.\n\nReported-by: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: stable@kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\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": "6a6aa2b7e47c725b5256ff0f7462fe1247cabf5a",
      "tree": "dcd8e549193e7aedcdcfb34c13177eceda5b29f4",
      "parents": [
        "f0619343ce782a731f55b8ba06d9a7e7d28a0fb8",
        "7329cf0201f48695862e334828a108aa7175e955"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 27 12:22:21 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 27 12:22:21 2010 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86/amd-iommu: Fix rounding-bug in __unmap_single\n  x86/amd-iommu: Work around S3 BIOS bug\n  x86/amd-iommu: Set iommu configuration flags in enable-loop\n  x86, setup: Fix earlyprintk\u003dserial,0x3f8,115200\n  x86, setup: Fix earlyprintk\u003dserial,ttyS0,115200\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": "f459ffbdfd04edb4a8ce6eea33170eb057a5e695",
      "tree": "5b100aa27d6b94bed8eae5489c4a27cbe2cfb82f",
      "parents": [
        "32163f4b2cef28a5aab8b226ffecfc6379a53786"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Sat Sep 25 17:45:50 2010 +1000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Sep 27 09:21:28 2010 +1000"
      },
      "message": "drm/radeon: fix PCI ID 5657 to be an RV410\n\nfixes https://bugzilla.kernel.org/show_bug.cgi?id\u003d19012\n\ncc: stable@kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\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": "7329cf0201f48695862e334828a108aa7175e955",
      "tree": "9ebea4a0394d14a00b98cc4ee6f726588956c168",
      "parents": [
        "74b3c444a963ba55aef89b33a1bcaada9a4c206f",
        "04e0463e088b41060c08c255eb0d3278a504f094"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 24 11:19:53 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 24 11:19:53 2010 +0200"
      },
      "message": "Merge branch \u0027amd-iommu/2.6.36\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu into x86/urgent\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": "b3a084b9b684622b149e8dcf03855bf0d5fb588b",
      "tree": "0c04087b9819e64530f14aed21eb4e3453d75d53",
      "parents": [
        "27c379f7f89a4d558c685b5d89b5ba2fe79ae701"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 22 08:38:44 2010 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Sep 23 08:25:17 2010 -0700"
      },
      "message": "rcu: rcu_read_lock_bh_held(): disabling irqs also disables bh\n\nrcu_dereference_bh() doesnt know yet about hard irq being disabled, so\nlockdep can trigger in netpoll_rx() after commit f0f9deae9e7c4 (netpoll:\nDisable IRQ around RCU dereference in netpoll_rx)\n\nReported-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nTested-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    }
  ],
  "next": "4c894f47bb49284008073d351c0ddaac8860864e"
}
