)]}'
{
  "log": [
    {
      "commit": "987c402ac31988f7ecdb38b657bcfeea5831d479",
      "tree": "64917b72fe9171d3de5b6950e3cc3889bb17af3a",
      "parents": [
        "1cfa26661a85549063e369e2b40275eeaa7b923c"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Aug 11 18:17:17 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 11 18:17:17 2008 -0700"
      },
      "message": "skbuff: Code readability NiT\n\nInserting a space between the `-\u0027 improved the C readability (some languages\nallow hyphens within functions and variable names, which is confusing).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00e8a4da8cf0d7dba8cc4b0da28ea0f12dcf6b36",
      "tree": "66d6b18fbafd6f1887f7ab7246e98caff2dd720c",
      "parents": [
        "7d283aee50351ec19eaf654a8690d77c4e1dff50"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Wed Aug 06 13:28:54 2008 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 07 09:49:42 2008 -0400"
      },
      "message": "list.h: add list_cut_position()\n\nThis adds list_cut_position() which lets you cut a list into\ntwo lists given a pivot in the list.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7d283aee50351ec19eaf654a8690d77c4e1dff50",
      "tree": "8b0079f19db09ecd264cc2e8c428033fe725015f",
      "parents": [
        "e6fce5b916cd7f7f79b2b3e53ba74bbfc1d7cf8b"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Wed Aug 06 15:21:26 2008 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 07 09:49:42 2008 -0400"
      },
      "message": "list.h: Add list_splice_tail() and list_splice_tail_init()\n\nIf you are using linked lists for queues list_splice() will not do what\nyou would expect even if you use the elements passed reversed. We need\nto handle these differently. We add list_splice_tail() and\nlist_splice_tail_init().\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fe414248551e2880fe8913577699003ff145ab9d",
      "tree": "d775ad642b3bed42659956f2ddac3f8e382c6c35",
      "parents": [
        "9a5d3414202a21ed4b053657345ea0fd492d513a"
      ],
      "author": {
        "name": "Laurent Pinchart",
        "email": "laurentp@cse-semaphore.com",
        "time": "Wed Jul 23 17:41:52 2008 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Aug 07 02:22:54 2008 -0400"
      },
      "message": "dm9000: Support MAC address setting through platform data.\n\nThe dm9000 driver reads the chip\u0027s MAC address from the attached EEPROM. When\nno EEPROM is present, or when the MAC address is invalid, it falls back to\nreading the address from the chip.\n\nThis patch lets platform code set the desired MAC address through platform\ndata.\n\nSigned-off-by: Laurent Pinchart \u003claurentp@cse-semaphore.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "b11f8d8cc3bb2fa6fa55286babc1a5ebb2e932c4",
      "tree": "bafbb4ca35003403da55c5a34c56e2390d1af8b2",
      "parents": [
        "4f63135eb23015a17eaf4f7478deedf63e98ff5c"
      ],
      "author": {
        "name": "Brandon Philips",
        "email": "brandon@ifup.org",
        "time": "Tue Jul 15 02:18:41 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Aug 07 02:22:08 2008 -0400"
      },
      "message": "ethtool: Expand ethtool_cmd.speed to 32 bits\n\nIntroduce the speed_hi field to ethtool_cmd, using the reserved space,\nto expand the speed field to 2^32 Megabits/second.\n\nMaking this field expansion now gives us plenty of time to fix up the\nuser-space pieces that use SIOCETHTOOL before hardware faster than 64\nGb/s is available.\n\nSigned-off-by: Brandon Philips \u003cbphilips@suse.de\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "e63e03273b89f7248baa56cf242474f661e776e1",
      "tree": "7e0a000ed3b252849b9002306ba479074c165330",
      "parents": [
        "37193fb4639fa94f91cbbab1e8aca596300e1d94",
        "ffb208479bd62ab26c29a242faeb1de1c6d5fcdc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 19:37:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 19:37:42 2008 -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: (78 commits)\n  AX.25: Fix sysctl registration if !CONFIG_AX25_DAMA_SLAVE\n  pktgen: mac count\n  pktgen: random flow \n  bridge: Eliminate unnecessary forward delay\n  bridge: fix compile warning in net/bridge/br_netfilter.c\n  ipv4: remove unused field in struct flowi (include/net/flow.h).\n  tg3: Fix \u0027scheduling while atomic\u0027 errors\n  net: Kill plain NET_XMIT_BYPASS.\n  net_sched: Add qdisc __NET_XMIT_BYPASS flag\n  net_sched: Add qdisc __NET_XMIT_STOLEN flag\n  iwl3945: fix merge mistake for packet injection\n  iwlwifi: grap nic access before accessing periphery registers\n  iwlwifi: decrement rx skb counter in scan abort handler\n  iwlwifi: fix unhandled interrupt when HW rfkill is on\n  iwlwifi: implement iwl5000_calc_rssi\n  iwlwifi: memory allocation optimization\n  iwlwifi: HW bug fixes\n  p54: Fix potential concurrent access to private data\n  rt2x00: Disable link tuning in rt2500usb\n  iwlwifi: Don\u0027t use buffer allocated on the stack for led names\n  ...\n"
    },
    {
      "commit": "bf1db69fbf4ff511e88736ce2e6318846f34492b",
      "tree": "545a9d60d7932dbfc7ce5d9af621c9af9923bc3a",
      "parents": [
        "7c44319dc6deb0028ef7811670bf1e4bc6644672"
      ],
      "author": {
        "name": "Richard Hughes",
        "email": "richard@hughsie.com",
        "time": "Tue Aug 05 13:01:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 14:33:50 2008 -0700"
      },
      "message": "pm_qos: spelling fixes\n\nA documentation cleanup patch.  With a minor tweak to clarify units for\nkbs.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: mark gross \u003cmgross@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f6ac436dcc4c34709bcde355f3f2254ac0a183d4",
      "tree": "a0f70b63df735a2bb780ee0bfac5d92be63a9f25",
      "parents": [
        "8cd6819842b79953c61250c719f61e01e51dd8cd"
      ],
      "author": {
        "name": "Mark Asselstine",
        "email": "mark.asselstine@windriver.com",
        "time": "Tue Aug 05 13:01:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 14:33:48 2008 -0700"
      },
      "message": "Remove the deprecated cli() sti() functions\n\nThese functions have been deprecated for some time now but remained until\nall legacy callers could be removed.  With a few commits in 2.6.26 this\nhas happened so now we can remove these deprecated functions.\n\nSigned-off-by: Mark Asselstine \u003cmark.asselstine@windriver.com\u003e\nReviewed-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "60cadec9da7b6c91aca51f408c828f7e74a68379",
      "tree": "006fa6831612ad3a70312f6b513c1dfc73cd5816",
      "parents": [
        "756fcab27756f32722b748e2aff3393eef9a589d"
      ],
      "author": {
        "name": "Shadi Ammouri",
        "email": "shadi@marvell.com",
        "time": "Tue Aug 05 13:01:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 14:33:46 2008 -0700"
      },
      "message": "spi: new orion_spi driver\n\nThis adds an SPI driver for the SPI controller found in various Marvell\nOrion ARM SoCs.  It currently supports only one slave, which must use SPI\nmode 0.\n\n[dbrownell@users.sourceforge.net: cleanups, meet specs, pass \"sparse\"]\nSigned-off-by: Shadi Ammouri \u003cshadi@marvell.com\u003e\nSigned-off-by: Saeed Bishara \u003csaeed@marvell.com\u003e\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c6e2bee26eee190b20cd87e71b288bca6a5357a4",
      "tree": "63c3db3e448e844fa60cc1f9a85a25bd970559f0",
      "parents": [
        "775587b6d769af3ba779a12ce790db4ccf0d1676"
      ],
      "author": {
        "name": "Bernhard Walle",
        "email": "bwalle@suse.de",
        "time": "Tue Aug 05 13:01:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 14:33:46 2008 -0700"
      },
      "message": "kdump: report actual value of VMCOREINFO_OSRELEASE in VMCOREINFO\n\nThe current implementation reports the structure name as\nVMCOREINFO_OSRELEASE in VMCOREINFO, e.g.\n\n        VMCOREINFO_OSRELEASE\u003dinit_uts_ns.name.release\n\nThat doesn\u0027t make sense because it\u0027s always the same. Instead, use the\nvalue, e.g.\n\n        VMCOREINFO_OSRELEASE\u003d2.6.26-rc3\n\nThat\u0027s also what the \u0027makedumpfile -g\u0027 does.\n\nSigned-off-by: Bernhard Walle \u003cbwalle@suse.de\u003e\nCc: \"Ken\u0027ichi Ohmichi\" \u003coomichi@mxs.nes.nec.co.jp\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c5bfc3757f1d843a8e1261840c1f53c5062f8e92",
      "tree": "cd0a125eaaa3e4c8b2e90c59fc8d13e1011776bb",
      "parents": [
        "0e25f710618ce919ac5ae4850c90d3fca19565c3"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Aug 05 18:17:01 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Aug 05 18:17:01 2008 +0200"
      },
      "message": "ide: remove CONFIG_IDE_MAX_HWIFS\n\nThe benefits of a user settable CONFIG_IDE_MAX_HWIFS have become pretty \ntiny and are no longer considered worth the trouble of an own option.\n\nSimply always #define MAX_HWIFS to 10.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "39b986a6c73434d122967dc86efb295ab9a28437",
      "tree": "409dbbd1aa99c158a2de4f1e278f245e5785c956",
      "parents": [
        "242f44261e6c5fdc13e3cd12f949ab717dc37d58"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Aug 05 18:16:57 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Aug 05 18:16:57 2008 +0200"
      },
      "message": "ide: sanitize struct ide_port_ops documentation (take 2)\n\nv2:\nAdd missing \u0027@\u0027-s.  (Noticed by Randy Dunlap)\n\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "33e334950abda8e42c3b6e6f280fad0d4ab92141",
      "tree": "7d52e5d4772f578c499200f38cfc54b79e3357fb",
      "parents": [
        "ad619800e4e034cad44299b2a22df9eebb043ac3",
        "3e2236c108792c3afbbfbe3f373ee7fdd68eda8e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 05 01:28:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 05 01:28:35 2008 -0700"
      },
      "message": "Merge branch \u0027no-ath9k\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "cc6533e98a7f3cb7fce9d740da49195c7aa523a4",
      "tree": "23b1a33c9c6894f799808e7dcbcf3afeb1d71192",
      "parents": [
        "c27f339af90bb874a7a9c680b17abfd32d4a727b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 04 23:04:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 04 23:04:08 2008 -0700"
      },
      "message": "net: Kill plain NET_XMIT_BYPASS.\n\ndst_input() was doing something completely absurd, looping\non skb-\u003edst-\u003einput() if NET_XMIT_BYPASS was seen, but these\nfunctions never return such an error.\n\nAnd as a result plain ole\u0027 NET_XMIT_BYPASS has no more\nreferences and can be completely killed off.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "378a2f090f7a478704a372a4869b8a9ac206234e",
      "tree": "cf324a45a9dc21231d1d3225c51c9d5d2b57bbee",
      "parents": [
        "6e583ce5242f32e925dcb198f7123256d0798370"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Aug 04 22:31:03 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 04 22:31:03 2008 -0700"
      },
      "message": "net_sched: Add qdisc __NET_XMIT_STOLEN flag\n\nPatrick McHardy \u003ckaber@trash.net\u003e noticed:\n\"The other problem that affects all qdiscs supporting actions is\nTC_ACT_QUEUED/TC_ACT_STOLEN getting mapped to NET_XMIT_SUCCESS\neven though the packet is not queued, corrupting upper qdiscs\u0027\nqlen counters.\"\n\nand later explained:\n\"The reason why it translates it at all seems to be to not increase\nthe drops counter. Within a single qdisc this could be avoided by\nother means easily, upper qdiscs would still increase the counter\nwhen we return anything besides NET_XMIT_SUCCESS though.\n\nThis means we need a new NET_XMIT return value to indicate this to\nthe upper qdiscs. So I\u0027d suggest to introduce NET_XMIT_STOLEN,\nreturn that to upper qdiscs and translate it to NET_XMIT_SUCCESS\nin dev_queue_xmit, similar to NET_XMIT_BYPASS.\"\n\nDavid Miller \u003cdavem@davemloft.net\u003e noticed:\n\"Maybe these NET_XMIT_* values being passed around should be a set of\nbits. They could be composed of base meanings, combined with specific\nattributes.\n\nSo you could say \"NET_XMIT_DROP | __NET_XMIT_NO_DROP_COUNT\"\n\nThe attributes get masked out by the top-level -\u003eenqueue() caller,\nsuch that the base meanings are the only thing that make their\nway up into the stack. If it\u0027s only about communication within the\nqdisc tree, let\u0027s simply code it that way.\"\n\nThis patch is trying to realize these ideas.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ca5de404ff036a29b25e9a83f6919c9f606c5841",
      "tree": "474da867c4d4086313cee90cdc3560bb17fade96",
      "parents": [
        "529ae9aaa08378cfe2a4350bded76f32cc8ff0ce"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Sat Aug 02 12:02:13 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 21:56:09 2008 -0700"
      },
      "message": "fs: rename buffer trylock\n\nLike the page lock change, this also requires name change, so convert the\nraw test_and_set bitop to a trylock.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "529ae9aaa08378cfe2a4350bded76f32cc8ff0ce",
      "tree": "d3ae998f9876c72a83a022805103a92111852b21",
      "parents": [
        "e9ba9698187ddbc0c5bfcf41de0349a662d23d02"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Sat Aug 02 12:01:03 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 21:31:34 2008 -0700"
      },
      "message": "mm: rename page trylock\n\nConverting page lock to new locking bitops requires a change of page flag\noperation naming, so we might as well convert it to something nicer\n(!TestSetPageLocked_Lock \u003d\u003e trylock_page, SetPageLocked \u003d\u003e set_page_locked).\n\nThis also facilitates lockdeping of page lock.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2e1e9212ed8c532c6b324de77d3cafef5d2bc846",
      "tree": "15097a99d03679f2c95ea2fdc0eb3c3ebcc474b8",
      "parents": [
        "2acb802b0c5485aedb46e23b2b45e49573454c09",
        "f5663f5bded3364158e2d31904173cb1debc2ecd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:26:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:26:15 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (29 commits)\n  sh: enable maple_keyb in dreamcast_defconfig.\n  SH2(A) cache update\n  nommu: Provide vmalloc_exec().\n  add addrespace definition for sh2a.\n  sh: Kill off ARCH_SUPPORTS_AOUT and remnants of a.out support.\n  sh: define GENERIC_HARDIRQS_NO__DO_IRQ.\n  sh: define GENERIC_LOCKBREAK.\n  sh: Save NUMA node data in vmcore for crash dumps.\n  sh: module_alloc() should be using vmalloc_exec().\n  sh: Fix up __bug_table handling in module loader.\n  sh: Add documentation and integrate into docbook build.\n  sh: Fix up broken kerneldoc comments.\n  maple: Kill useless private_data pointer.\n  maple: Clean up maple_driver_register/unregister routines.\n  input: Clean up maple keyboard driver\n  maple: allow removal and reinsertion of keyboard driver module\n  sh: /proc/asids depends on MMU.\n  arch/sh/boards/mach-se/7343/irq.c: removed duplicated #include\n  arch/sh/boards/board-ap325rxa.c: removed duplicated #include\n  sh/boards/Makefile typo fix\n  ...\n"
    },
    {
      "commit": "115a326c1e5cab457924356123bbfd7d783ecf9d",
      "tree": "378baee7316461465ce08cf5c997e7426c2d93e6",
      "parents": [
        "18f6db95dcfa68e93bafe435381299abbffb5c7e"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Mon Aug 04 13:56:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:23:43 2008 -0700"
      },
      "message": "tracehook: kerneldoc fix\n\nMy last change to tracehook.h made it confuse the kerneldoc parser.\nMove the #define\u0027s before the comment so it\u0027s happy again.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c635fd3d3de9dec4729135add72c2ff32595605b",
      "tree": "9617681bd52cf63ae0797acc1ab13aefca2ed7d7",
      "parents": [
        "82e68f7ffec3800425f2391c8c86277606860442",
        "cf368d2f9aced8adc8bd6b1f04294a71551d5fce"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:03:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:03:56 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/users/dwmw2/random-2.6\n\n* git://git.infradead.org/users/dwmw2/random-2.6:\n  drivers/video/console/promcon.c: fix build error\n  Fix IHEX firmware generation/loading\n"
    },
    {
      "commit": "82248a5e92793014d156a12dbcbba633794ce9f8",
      "tree": "c91d54ea1122d8faf69bf15c7b8e1dc6921296b4",
      "parents": [
        "c2d5cedadcd3976cfc1fa5590e3a73a059c6401a",
        "31981db0d0b665713ab3e9531f936fdb67947225"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:00:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:00:37 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/ISDN-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/ISDN-2.6:\n  Add DIP switch readout for HFC-4S IOB4ST\n  Fix remaining big endian issue of hfcmulti\n  mISDN cleanup user interface\n  mISDN fix main ISDN Makefile\n"
    },
    {
      "commit": "1a3f7d98e5f50f21ce6fb1406a35531d9596c5c6",
      "tree": "c08708cd17f163f18c149133c92551f83249fd98",
      "parents": [
        "fca082c9f1e11ec07efa8d2f9f13688521253f36"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 16:50:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 16:50:38 2008 -0700"
      },
      "message": "Revert \"UFS: add const to parser token table\"\n\nThis reverts commit f9247273cb69ba101877e946d2d83044409cc8c5 (and\nfb2e405fc1fc8b20d9c78eaa1c7fd5a297efde43 - \"fix fs/nfs/nfsroot.c\ncompilation\" - that fixed a missed conversion).\n\nThe changes cause problems for at least the sparc build.  Let\u0027s re-do\nthem when the exact issues are resolved.\n\nRequested-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nRequested-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "98f7dfd86cbbd377e2cbc293529681b914296f68",
      "tree": "cce0e06183ae4b8ce0aa845cb56cf9ca90984749",
      "parents": [
        "298df1f62aa69881528bf0f1c3c14395bc447846"
      ],
      "author": {
        "name": "Emmanuel Grumbach",
        "email": "emmanuel.grumbach@intel.com",
        "time": "Fri Jul 18 13:52:59 2008 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 04 15:09:07 2008 -0400"
      },
      "message": "mac80211: pass dtim_period to low level driver\n\nThis patch adds the dtim_period in ieee80211_bss_conf, this allows the low\nlevel driver to know the dtim_period, and to plan power save accordingly.\n\nSigned-off-by: Emmanuel Grumbach \u003cemmanuel.grumbach@intel.com\u003e\nSigned-off-by: Tomas Winkler \u003ctomas.winkler@intel.com\u003e\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "617870632de6739fca0893f3e6648e9ae1bd0ddb",
      "tree": "cad36762206a99ee6317290f3d58d818f18f5c58",
      "parents": [
        "63870295de9adb365cd121dab94379b8cfdf986a"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Aug 04 10:58:24 2008 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Aug 04 10:58:24 2008 +0900"
      },
      "message": "maple: Kill useless private_data pointer.\n\nWe can simply wrap in to the dev_set/get_drvdata(), there\u0027s no reason\nto track an extra level of private data on top of the struct device.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "63870295de9adb365cd121dab94379b8cfdf986a",
      "tree": "16c0b5288fa10f4f365f75d5c4fcad9c8a15e2c9",
      "parents": [
        "459021fe3627083ea6678a7b29f9f74accf9c6fd"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Aug 04 10:39:46 2008 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Aug 04 10:39:46 2008 +0900"
      },
      "message": "maple: Clean up maple_driver_register/unregister routines.\n\nThese were completely inconsistent. Clean these up to take a maple_driver\npointer directly for consistency.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "cf368d2f9aced8adc8bd6b1f04294a71551d5fce",
      "tree": "f09f76519d81e67bb2f1339f020c968f5289e93f",
      "parents": [
        "85ebd00334099fd5d296bcae74a66c943d46686d"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Sun Aug 03 03:03:57 2008 +0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 03 09:51:30 2008 +0100"
      },
      "message": "drivers/video/console/promcon.c: fix build error\n\ndrivers/video/console/promcon.c:158: error: implicit declaration of\nfunction \u0027con_protect_unimap\u0027\n\nIntroduced by commit a29ccf6f823a84d89e1c7aaaf221cf7282022024\n(\"embedded: fix vc_translate operator precedence\").\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nCc: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "85ebd00334099fd5d296bcae74a66c943d46686d",
      "tree": "07f799155fd03f15606e7c49a7d6547fb6f18563",
      "parents": [
        "f1136d022af8f07a97f59c6d07483bdb82ffbd8e"
      ],
      "author": {
        "name": "Marc Zyngier",
        "email": "maz@misterjones.org",
        "time": "Sat Aug 02 19:12:23 2008 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sat Aug 02 18:36:10 2008 +0100"
      },
      "message": "Fix IHEX firmware generation/loading\n\nFix both the IHEX firmware generation (len field always null, and EOF\nmarker a byte too short) and loading (struct ihex_binrec needs to be\npacked to reflect the on-disk structure).\n\nSigned-off-by: Marc Zyngier \u003cmaz@misterjones.org\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "ff4cc1de2401ad44ae084c3f5a9e898af0879520",
      "tree": "24e0e3d1b8a35559546910a0ca0cd1f9f63f1576",
      "parents": [
        "780aefed1e179b23dcfbd6cfcb627ec3bd0a164c"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Wed Jul 30 18:26:58 2008 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sat Aug 02 16:28:50 2008 +0200"
      },
      "message": "mISDN cleanup user interface\n\nThe channelmap should have the same size on 32 and 64 bit systems\nand should not depend on endianess.\nThanks to David Woodhouse for spotting this.\n\nSigned-off-by: Karsten Keil \u003ckkeil@suse.de\u003e\n"
    },
    {
      "commit": "4744b43431e8613f920c5cba88346756f53c5165",
      "tree": "dafe97684babed8a1b5a9c79bf7043d2ac7e2849",
      "parents": [
        "3669bc143fb3d389918379547f4a6b28a757b7fe"
      ],
      "author": {
        "name": "Tim Bird",
        "email": "tim.bird@am.sony.com",
        "time": "Fri Aug 01 14:05:50 2008 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 01 22:23:09 2008 +0100"
      },
      "message": "embedded: fix vc_translate operator precedence\n\nThis fixes a bug in operator precedence in the newly introduced vc_translate\nmacro.  Without this fix, the translation of some characters on the\nkernel console is garbled.\n\nThis patch was copied to the e-mail list previously for testing.  Now,\nall reports confirm that it works, so this is an official post for\napplication.\n\nSigned-off-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "84ff7a001270258f71d6ab0d164f351e32c9718a",
      "tree": "6b2f33a9ad492186062de247d3572fa5efebe4bd",
      "parents": [
        "478735e42bfa047384afa72dceb408035532db20",
        "1f4170e12db06fdde5279d665a7e6e2976b2b623"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:48:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:48:16 2008 -0700"
      },
      "message": "Merge branch \u0027kvm-updates-2.6.27\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm\n\n* \u0027kvm-updates-2.6.27\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:\n  KVM: s390: Fix kvm on IBM System z10\n  KVM: Advertise synchronized mmu support to userspace\n  KVM: Synchronize guest physical memory map to host virtual memory map\n  KVM: Allow browsing memslots with mmu_lock\n  KVM: Allow reading aliases with mmu_lock\n"
    },
    {
      "commit": "3a4b7886ee59e122d359e1714ed89585a06645ad",
      "tree": "d4db00a37e7d3013f2c5f7cad9f6d83c8c0f4c29",
      "parents": [
        "b8a327be3fbf05b5d3a935b4c03a3dcdb6db833e",
        "963e4975c6f93c148ca809d986d412201df9af89"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:41:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:41:29 2008 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  pata_it821x: Driver updates and reworking\n  libata.h: replace __FUNCTION__ with __func__\n  ata_piix: subsys 106b:00a3 is apple ich8m too\n  libata-core: make sure that ata_force_tbl is freed in case of an error\n  libata: update atapi disable handling\n  pata_via: add VX800 flag; add function for fixing h/w bugs\n  pata_ali: misplaced pci_dev_put()\n"
    },
    {
      "commit": "b8a327be3fbf05b5d3a935b4c03a3dcdb6db833e",
      "tree": "96f4822dd4a1d5c43df5fe60382b6d39bbc2b671",
      "parents": [
        "46bd58eab21650fe820e4e3a27a6a134892cc2eb",
        "f13fae2d2a9372a5155d20bc9da4c14f02193277"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:39:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:39:09 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-pull\n\n* \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-pull: (64 commits)\n  [XFS] Remove vn_revalidate calls in xfs.\n  [XFS] Now that xfs_setattr is only used for attributes set from -\u003esetattr\n  [XFS] xfs_setattr currently doesn\u0027t just handle the attributes set through\n  [XFS] fix use after free with external logs or real-time devices\n  [XFS] A bug was found in xfs_bmap_add_extent_unwritten_real(). In a\n  [XFS] fix compilation without CONFIG_PROC_FS\n  [XFS] s/XFS_PURGE_INODE/IRELE/g s/VN_HOLD(XFS_ITOV())/IHOLD()/\n  [XFS] fix mount option parsing in remount\n  [XFS] Disable queue flag test in barrier check.\n  [XFS] streamline init/exit path\n  [XFS] Fix up problem when CONFIG_XFS_POSIX_ACL is not set and yet we still\n  [XFS] Don\u0027t assert if trying to mount with blocksize \u003e pagesize\n  [XFS] Don\u0027t update mtime on rename source\n  [XFS] Allow xfs_bmbt_split() to fallback to the lowspace allocator\n  [XFS] Restore the lowspace extent allocator algorithm\n  [XFS] use minleft when allocating in xfs_bmbt_split()\n  [XFS] attrmulti cleanup\n  [XFS] Check for invalid flags in xfs_attrlist_by_handle.\n  [XFS] Fix CI lookup in leaf-form directories\n  [XFS] Use the generic xattr methods.\n  ...\n"
    },
    {
      "commit": "5c7edcd7ee6b77b88252fe4096dce1a46a60c829",
      "tree": "4936df589df33c671e2e98ea45b89e7f45278f61",
      "parents": [
        "1e24b15b267293567a8d752721c7ae63f281325a"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Thu Jul 31 02:04:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:01:11 2008 -0700"
      },
      "message": "tracehook: fix exit_signal\u003d0 case\n\nMy commit 2b2a1ff64afbadac842bbc58c5166962cf4f7664 introduced a regression\n(sorry about that) for the odd case of exit_signal\u003d0 (e.g. clone_flags\u003d0).\nThis is not a normal use, but it\u0027s used by a case in the glibc test suite.\n\nDying with exit_signal\u003d0 sends no signal, but it\u0027s supposed to wake up a\nparent\u0027s blocked wait*() calls (unlike the delayed_group_leader case).\nThis fixes tracehook_notify_death() and its caller to distinguish a\n\"signal 0\" wakeup from the delayed_group_leader case (with no wakeup).\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nTested-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e24b15b267293567a8d752721c7ae63f281325a",
      "tree": "ee63644d2dc59899e42ec0802c201140e3a92e5e",
      "parents": [
        "63a16f90167850010864a9e8ebb71d216983090f",
        "388667bed591b2359713bb17d5de0cf56e961447"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:56:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:56:07 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://neil.brown.name/md\n\n* \u0027for-linus\u0027 of git://neil.brown.name/md:\n  md: raid10: wake up frozen array\n  md: do not count blocked devices as spares\n  md: do not progress the resync process if the stripe was blocked\n  md: delay notification of \u0027active_idle\u0027 to the recovery thread\n  md: fix merge error\n  md: move async_tx_issue_pending_all outside spin_lock_irq\n"
    },
    {
      "commit": "63a16f90167850010864a9e8ebb71d216983090f",
      "tree": "c4b284cc596421ac8100e0ad3b2f56ead4563d2d",
      "parents": [
        "5adf2b03d97111c8955495ba11e8b7db27df8695",
        "c259ae52e204d42f8b2d484c85517a4c367030e1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:54:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:54:05 2008 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2:\n  [PATCH] ocfs2: Release mutex in error handling code\n  [PATCH] ocfs2: Fix oops when racing files truncates with writes into an mmap region\n  [PATCH 2/2] ocfs2: Fix race between mount and recovery\n  [PATCH 1/2] ocfs2: Add counter in struct ocfs2_dinode to track journal replays\n  [PATCH] configfs: Convenience macros for attribute definition.\n  [PATCH] configfs: Pin configfs subsystems separately from new config_items.\n  [PATCH] configfs: Fix open directory making rmdir() fail\n  [PATCH] configfs: Lock new directory inodes before removing on cleanup after failure\n  [PATCH] configfs: Prevent userspace from creating new entries under attaching directories\n  [PATCH] configfs: Fix failing symlink() making rmdir() fail\n  [PATCH] configfs: Fix symlink() to a removing item\n  [PATCH] configfs: Include linux/err.h in linux/configfs.h\n"
    },
    {
      "commit": "b17b3d479c4c43c3a980ee553c3be3ca456523de",
      "tree": "6715c10bfe1301eb3c112b17a858b541ce14aef5",
      "parents": [
        "31582b094d640fdab3fd29237b348a4c7c8646fb",
        "93769f58078e2a066b56217cae1e343ac5a6b78c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:46:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:46:00 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  md: the bitmap code needs to use blk_plug_device_unlocked()\n  block: add a blk_plug_device_unlocked() that grabs the queue lock\n"
    },
    {
      "commit": "9a5467fd600669cda488771dac3e951034fe2b08",
      "tree": "20c3c73ff3571e525193aca20d3602161b4e90be",
      "parents": [
        "676056132425ac425d7215cdaa8bd25582e07966",
        "00b1304c4ca81dd893973cc620b87a5c3ff3f660"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:35:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:35:16 2008 -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: (46 commits)\n  tcp: MD5: Fix IPv6 signatures\n  skbuff: add missing kernel-doc for do_not_encrypt\n  net/ipv4/route.c: fix build error\n  tcp: MD5: Fix MD5 signatures on certain ACK packets\n  ipv6: Fix ip6_xmit to send fragments if ipfragok is true\n  ipvs: Move userspace definitions to include/linux/ip_vs.h\n  netdev: Fix lockdep warnings in multiqueue configurations.\n  netfilter: xt_hashlimit: fix race between htable_destroy and htable_gc\n  netfilter: ipt_recent: fix race between recent_mt_destroy and proc manipulations\n  netfilter: nf_conntrack_tcp: decrease timeouts while data in unacknowledged\n  irda: replace __FUNCTION__ with __func__\n  nsc-ircc: default to dongle type 9 on IBM hardware\n  bluetooth: add quirks for a few hci_usb devices\n  hysdn: remove the packed attribute from PofTimStamp_tag\n  isdn: use the common ascii hex helpers\n  tg3: adapt tg3 to use reworked PCI PM code\n  atm: fix direct casts of pointers to u32 in the InterPhase driver\n  atm: fix const assignment/discard warnings in the ATM networking driver\n  net: use the common ascii hex helpers\n  random32: seeding improvement\n  ...\n"
    },
    {
      "commit": "6c5e0c4d518a37e1d5d794c14433e80284415079",
      "tree": "26208a4fe4115a37c000a13d50df8c1a5e393553",
      "parents": [
        "94ad374a0751f40d25e22e036c37f7263569d24c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 01 20:31:32 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 01 20:31:32 2008 +0200"
      },
      "message": "block: add a blk_plug_device_unlocked() that grabs the queue lock\n\nblk_plug_device() must be called with the queue lock held, so callers\noften just grab and release the lock for that purpose. Add a helper\nthat does just that.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "623fa579e61f250c1913c70257ef3a753820bb68",
      "tree": "179fcff4a0469bfa9a9ce5cab14fff6141810cd0",
      "parents": [
        "d65f5c5803d9cd6fa0b540a0dddf956be671bc36",
        "e4c094a595ba8ea402e6b2153f7bbf6ef039eea0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:29:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:29:54 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  [MTD] [NAND] drivers/mtd/nand/nandsim.c: fix printk warnings\n  [MTD] [NAND] Blackfin NFC Driver: Cleanup the error exit path of bf5xx_nand_probe function\n  [MTD] [NAND] Blackfin NFC Driver: use standard dev_err() rather than printk()\n  [MTD] [NAND] Blackfin NFC Driver: enable Blackfin nand HWECC support by default\n  [MTD] [NAND] Blackfin NFC Driver: add proper devinit/devexit markings to probe/remove functions\n  [MTD] [NAND] Blackfin NFC Driver: add support for the ECC layout the Blackfin bootrom uses\n  [MTD] [NAND] Blackfin NFC Driver: fix bug - hw ecc calc by making sure we extract 11 bits from each register instead of 10\n  [MTD] [NAND] Blackfin NFC Driver: fix bug - do not clobber the status from the first 256 bytes if operating on 512 pages\n  [MTD] [NAND] diskonchip.c fix sparse endian warnings\n  [MTD] [NAND] drivers/mtd/nand/nandsim.c needs div64.h\n  [JFFS2] Fix allocation of summary buffer\n  Fix rename of at91_nand -\u003e atmel_nand\n  [MTD] [NOR] drivers/mtd/chips/jedec_probe.c: fix Am29DL800BB device ID\n  [MTD] MTD_DEBUG always does compile-time typechecks\n  [MTD] DataFlash: bugfix, binary page sizes now handled\n  [MTD] [NAND] fsl_elbc_nand.c: fix printk warning\n  [MTD] [NAND] nandsim: support random page read command\n  [MTD] [NAND] fix subpage read for small page NAND\n"
    },
    {
      "commit": "d65f5c5803d9cd6fa0b540a0dddf956be671bc36",
      "tree": "d8b7e7197bd126ce857c9a368dd7573b531cb22f",
      "parents": [
        "a8086ad803fc4d251edb9a49838bf99c7fdfb44f",
        "8d66bf5481002b0960aa49aed0987c73f5d7816c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:26:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:26:51 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  [PATCH] pass struct path * to do_add_mount()\n  [PATCH] switch mtd and dm-table to lookup_bdev()\n  [patch 3/4] vfs: remove unused nameidata argument of may_create()\n  [PATCH] devpts: switch to IDA\n  [PATCH 2/2] proc: switch inode number allocation to IDA\n  [PATCH 1/2] proc: fix inode number bogorithmetic\n  [PATCH] fix bdev leak in block_dev.c do_open()\n  [PATCH] fix races and leaks in vfs_quota_on() users\n  [PATCH] clean dup2() up a bit\n  [PATCH] merge locate_fd() and get_unused_fd()\n  [PATCH] ipv4_static_sysctl_init() should be under CONFIG_SYSCTL\n  Re: BUG at security/selinux/avc.c:883 (was: Re: linux-next: Tree\n"
    },
    {
      "commit": "561b35b341b1aeeab486affe1ede0ee6640ce33b",
      "tree": "a7570737884bef3c15db98cae629a82ce3586b3c",
      "parents": [
        "a7c2a10dab4e5122cbcfa3d5e9d589a52ccc2287",
        "0eb5d5ab3ec99bfd22ff16797d95835369ffb25b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:56:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:56:40 2008 -0700"
      },
      "message": "Merge branch \u0027reg-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6\n\n* \u0027reg-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6:\n  regulator: TI bq24022 Li-Ion Charger driver\n  regulator: maintainers - add maintainers for regulator framework.\n  regulator: documentation - ABI\n  regulator: documentation - machine\n  regulator: documentation - regulator driver\n  regulator: documentation - consumer interface\n  regulator: documentation - overview\n  regulator: core kbuild files\n  regulator: regulator test harness\n  regulator: add support for fixed regulators.\n  regulator: regulator framework core\n  regulator: fixed regulator interface\n  regulator: machine driver interface\n  regulator: regulator driver interface\n  regulator: consumer device interface\n"
    },
    {
      "commit": "b14f7fb5aa2f4289e3a9fa8d7d92417ec8607498",
      "tree": "8f0ef2cf36dbf096e91c89f5917a24fb363f6101",
      "parents": [
        "00e9028a95fb8a4d79f2fb695a853f33ea7d3b57",
        "9fec6060d9e48ed7db0dac0e16d0f0f0e615b7f6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:55:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:55:07 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/battery-2.6\n\n* git://git.infradead.org/battery-2.6:\n  power_supply: Sharp SL-6000 (tosa) batteries support\n  power_supply: fix up CHARGE_COUNTER output to be more precise\n  power_supply: add CHARGE_COUNTER property and olpc_battery support for it\n  power_supply: bump EC version check that we refuse to run with in olpc_battery\n  power_supply: cleanup of the OLPC battery driver\n  power_supply: add eeprom dump file to olpc_battery\u0027s sysfs\n  power_supply: Support serial number in olpc_battery\n"
    },
    {
      "commit": "00e9028a95fb8a4d79f2fb695a853f33ea7d3b57",
      "tree": "2dea2ae498a6ce57de8890e87185aca5e9f3ad2d",
      "parents": [
        "57b1494d2ba544c62673234da6115c21fac27ffc",
        "7cb93181629c613ee2b8f4ffe3446f8003074842"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:53:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:53:43 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (28 commits)\n  mm/hugetlb.c must #include \u003casm/io.h\u003e\n  video: Fix up hp6xx driver build regressions.\n  sh: defconfig updates.\n  sh: Kill off stray mach-rsk7203 reference.\n  serial: sh-sci: Fix up SH7760/SH7780/SH7785 early printk regression.\n  sh: Move out individual boards without mach groups.\n  sh: Make sure AT_SYSINFO_EHDR is exposed to userspace in asm/auxvec.h.\n  sh: Allow SH-3 and SH-5 to use common headers.\n  sh: Provide common CPU headers, prune the SH-2 and SH-2A directories.\n  sh/maple: clean maple bus code\n  sh: More header path fixups for mach dir refactoring.\n  sh: Move out the solution engine headers to arch/sh/include/mach-se/\n  sh: I2C fix for AP325RXA and Migo-R\n  sh: Shuffle the board directories in to mach groups.\n  sh: dma-sh: Fix up dreamcast dma.h mach path.\n  sh: Switch KBUILD_DEFCONFIG to shx3_defconfig.\n  sh: Add ARCH_DEFCONFIG entries for sh and sh64.\n  sh: Fix compile error of Solution Engine\n  sh: Proper __put_user_asm() size mismatch fix.\n  sh: Stub in a dummy ENTRY_OFFSET for uImage offset calculation.\n  ...\n"
    },
    {
      "commit": "57b1494d2ba544c62673234da6115c21fac27ffc",
      "tree": "34f91f3187805fa034f8e63966d471ba2498d148",
      "parents": [
        "9fe3b64be3dc8313e9fa87255f169c608d074cbd",
        "8978b74253280d59e97cf49a3ec2c0cbccd5b801"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:28:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:28:17 2008 -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  generic, x86: fix add iommu_num_pages helper function\n  x86: remove stray \u003c6\u003e in BogoMIPS printk\n  x86: move dma32_reserve_bootmem() after reserve_crashkernel()\n"
    },
    {
      "commit": "8d66bf5481002b0960aa49aed0987c73f5d7816c",
      "tree": "7beac720e1df882a1cd4d6d09e6ac25ddd04b399",
      "parents": [
        "d5686b444ff3f72808d2b3fbd58672a86cdf38e7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 09:05:54 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 11:25:32 2008 -0400"
      },
      "message": "[PATCH] pass struct path * to do_add_mount()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "77e69dac3cefacee939cb107ae9cd520a62338e0",
      "tree": "02ddee5ac85ceb632eab2aff994ffbd3233e51eb",
      "parents": [
        "1b7e190b4764ea3ca1080404dd593eae5230d2b3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 04:29:18 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 11:25:25 2008 -0400"
      },
      "message": "[PATCH] fix races and leaks in vfs_quota_on() users\n\n* new helper: vfs_quota_on_path(); equivalent of vfs_quota_on() sans the\n  pathname resolution.\n* callers of vfs_quota_on() that do their own pathname resolution and\n  checks based on it are switched to vfs_quota_on_path(); that way we\n  avoid the races.\n* reiserfs leaked dentry/vfsmount references on several failure exits.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1027abe8827b47f7e9c4ed6514fde3d44f79963c",
      "tree": "be6aba7e46176534cc71622de53a8bcbf28a06c4",
      "parents": [
        "a1bc6eb4b499ae67ada9a01660010580b6569403"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 30 04:13:04 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 11:25:23 2008 -0400"
      },
      "message": "[PATCH] merge locate_fd() and get_unused_fd()\n\n\tNew primitive: alloc_fd(start, flags).  get_unused_fd() and\nget_unused_fd_flags() become wrappers on top of it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a4b526b3ba6353cd89a38e41da48ed83b0ead16f",
      "tree": "362842354bdcde59feede51cbeefc9b8833aacf7",
      "parents": [
        "934b2857cc576ae53c92a66e63fce7ddcfa74691"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Aug 01 16:39:12 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Aug 01 16:39:30 2008 +0200"
      },
      "message": "[S390] Optimize storage key operations for anon pages\n\nFor anonymous pages without a swap cache backing the check in\npage_remove_rmap for the physical dirty bit in page_remove_rmap is\nunnecessary. The instructions that are used to check and reset the dirty\nbit are expensive. Removing the check noticably speeds up process exit.\nIn addition the clearing of the dirty bit in __SetPageUptodate is\npointless as well. With these two changes there is no storage key\noperation for an anonymous page anymore if it does not hit the swap\nspace.\n\nThe micro benchmark which repeatedly executes an empty shell script\ngets about 5% faster.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "4a7b61d23505854dff7d04cc11944566cffdd0ee",
      "tree": "9781004b3b7ce3f1e0da150ed376a1e3c485c670",
      "parents": [
        "8a9204db665365354b349ed5b0bc054f0433a2a4"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Jul 31 20:52:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 20:52:08 2008 -0700"
      },
      "message": "skbuff: add missing kernel-doc for do_not_encrypt\n\nAdd missing kernel-doc notation to sk_buff:\n\nWarning(linux-2.6.27-rc1-git2//include/linux/skbuff.h:345): No description found for parameter \u0027do_not_encrypt\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc4768eb081a67642c0c44c34ea597c273bdedcb",
      "tree": "908712225413cacafdea5bdf3b33072d7c616355",
      "parents": [
        "c3f26a269c2421f97f10cf8ed05d5099b573af4d"
      ],
      "author": {
        "name": "Julius Volz",
        "email": "juliusv@google.com",
        "time": "Thu Jul 31 20:45:24 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 20:45:24 2008 -0700"
      },
      "message": "ipvs: Move userspace definitions to include/linux/ip_vs.h\n\nCurrent versions of ipvsadm include \"/usr/src/linux/include/net/ip_vs.h\"\ndirectly. This file also contains kernel-only definitions. Normally, public\ndefinitions should live in include/linux, so this patch moves the\ndefinitions shared with userspace to a new file, \"include/linux/ip_vs.h\".\n\nThis also removes the unused NFC_IPVS_PROPERTY bitmask, which was once\nused to point into skb-\u003enfcache.\n\nTo make old ipvsadms still compile with this, the old header file includes\nthe new one.\n\nThanks to Dave Miller and Horms for noting/adding the missing Kbuild entry\nfor the new header file.\n\nSigned-off-by: Julius Volz \u003cjuliusv@google.com\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c3f26a269c2421f97f10cf8ed05d5099b573af4d",
      "tree": "d0602cbb48742b3e39ab6bdcaa08c342d4cd2cae",
      "parents": [
        "967ab999a090b1a4e7d3c7febfd6d89b42fb4cf4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 16:58:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 16:58:50 2008 -0700"
      },
      "message": "netdev: Fix lockdep warnings in multiqueue configurations.\n\nWhen support for multiple TX queues were added, the\nnetif_tx_lock() routines we converted to iterate over\nall TX queues and grab each queue\u0027s spinlock.\n\nThis causes heartburn for lockdep and it\u0027s not a healthy\nthing to do with lots of TX queues anyways.\n\nSo modify this to use a top-level lock and a \"frozen\"\nstate for the individual TX queues.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ecb3d28c7edd58b54f16838c434b342ba9195bec",
      "tree": "2babdc068dde924a905b0b25e673be0ca7a7dccd",
      "parents": [
        "70526b67443a980d5029d9cf06903bef731a4e96"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Wed Jun 18 19:29:05 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Thu Jul 31 16:21:13 2008 -0700"
      },
      "message": "[PATCH] configfs: Convenience macros for attribute definition.\n\nSysfs has the _ATTR() and _ATTR_RO() macros to make defining extended\nform attributes easier.  configfs should have something similiar.\n\n- _CONFIGFS_ATTR() and _CONFIGFS_ATTR_RO() are the counterparts to the\n  sysfs macros.\n- CONFIGFS_ATTR_STRUCT() creates the extended form attribute structure.\n- CONFIGFS_ATTR_OPS() defines the show_attribute()/store_attribute()\n  operations that call the show()/store() operations of the extended\n  form configfs_attributes.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "dacdd0e04768da1fd2b24a6ee274c582b40d0c5b",
      "tree": "45b559bb14e9f968943bbc98b23b1489823898e0",
      "parents": [
        "94ad374a0751f40d25e22e036c37f7263569d24c"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 17 16:54:19 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Thu Jul 31 16:21:12 2008 -0700"
      },
      "message": "[PATCH] configfs: Include linux/err.h in linux/configfs.h\n\nWe now use PTR_ERR() in the -\u003emake_item() and -\u003emake_group() operations.\nFolks including configfs.h need err.h.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "ae375044d31075a31de5a839e07ded7f67b660aa",
      "tree": "13f49a97aa48fa8f19cbe7055e0b5e4df3abc462",
      "parents": [
        "a97a6f10771b90235b33c13a6db9279237a08422"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jul 31 00:38:01 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 00:38:01 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_tcp: decrease timeouts while data in unacknowledged\n\nIn order to time out dead connections quicker, keep track of outstanding data\nand cap the timeout.\n\nSuggested by Herbert Xu.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "963e4975c6f93c148ca809d986d412201df9af89",
      "tree": "41cb6ec55e48a2186dbe4c13531fd05439efbade",
      "parents": [
        "1f938d060a7bc01b5f82d46db3e38cd501b445a6"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jul 24 17:16:06 2008 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Jul 31 02:04:50 2008 -0400"
      },
      "message": "pata_it821x: Driver updates and reworking\n\n- Add support for the RDC 1010 variant\n- Rework the core library to have a read_id method. This allows the hacky\n  bits of it821x to go and prepares us for pata_hd\n- Switch from WARN to BUG in ata_id_string as it will reboot if you get\n  it wrong so WARN won\u0027t be seen\n- Allow the issue of command 0xFC on the 821x. This is needed to query\n  rebuild status.\n- Tidy up printk formatting\n- Do more ident rewriting on RAID volumes to handle firmware provided\n  ident data which is rather wonky\n- Report the firmware revision and device layout in RAID mode\n- Don\u0027t try and disable raid on the 8211 or RDC - they don\u0027t have the\n  relevant bits\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "1f938d060a7bc01b5f82d46db3e38cd501b445a6",
      "tree": "f88f748671ac616742b41f202b4f56da1e577423",
      "parents": [
        "487eff68e42287fd45cf178063f1ce1bad23c612"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Mon Jul 21 00:06:19 2008 +0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Jul 31 01:48:16 2008 -0400"
      },
      "message": "libata.h: replace __FUNCTION__ with __func__\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "660fc1f4d88b0f5e4bb936e4a5a9b95b70df9e58",
      "tree": "a5b5de254f9b4378d77171e2a5d6496ec8e3e3f5",
      "parents": [
        "3dd730f2b49f101b90d283c3efc4e6cd826dd8f6",
        "ce0ad7f0952581ba75ab6aee55bb1ed9bb22cf4f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:43:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:43:56 2008 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  powerpc/mm: Lockless get_user_pages_fast() for 64-bit (v3)\n  powerpc: Don\u0027t use the wrong thread_struct for ptrace get/set VSX regs\n  powerpc: Fix ptrace buffer size for VSX\n  powerpc: Correctly hookup PTRACE_GET/SETVSRREGS for 32 bit processes\n  ide/powermac: Fix use of uninitialized pointer on media-bay\n  powerpc: Allow non-hcall return values for lparcfg writes\n  ipmi/powerpc: Use linux/of_{device,platform}.h instead of asm\n  powerpc/fsl: proliferate simple-bus compatibility to soc nodes\n  Documentation: remove old sbc8260 board specific information\n  cpm2: Rework baud rate generators configuration to support external clocks.\n  powerpc: rtc_cmos_setup: assign interrupts only if there is i8259 PIC\n  cpm_uart: Add generic clock API support to set baudrates\n  cpm_uart: Modem control lines support\n  powerpc: implement GPIO LIB API on CPM1 Freescale SoC.\n  cpm2: Implement GPIO LIB API on CPM2 Freescale SoC.\n  powerpc: Fix 8xx build failure\n  powerpc: clean up the Book-E HW watchpoint support\n"
    },
    {
      "commit": "3dd730f2b49f101b90d283c3efc4e6cd826dd8f6",
      "tree": "040c55f93a1d3fbbd85e2e81319d8f259f71c55f",
      "parents": [
        "a4319d9fa02fb3f032596d18c6fcc8b05d01a3a5"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Jul 29 16:07:37 2008 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:35:49 2008 -0700"
      },
      "message": "cpumask: statement expressions confuse some versions of gcc\n\nwhen you take the address of the result.  Noticed on a sparc64 compile\nusing a version 3.4.5 cross compiler.\n\n kernel/time/tick-common.c: In function `tick_check_new_device\u0027:\n kernel/time/tick-common.c:210: error: invalid lvalue in unary `\u0026\u0027\n ...\n\nJust make it a regular expression.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4319d9fa02fb3f032596d18c6fcc8b05d01a3a5",
      "tree": "55bfcb36dcaf1935d1877810a79e398b34e46014",
      "parents": [
        "afd962a9e8708c571c5c0c4a6d098f931742c229",
        "031cf19e6f63941506c9baf76ac7adac06edcf08"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:13:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:13:37 2008 -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  net: Make \"networking\" one-click deselectable.\n  ipv6: Fix useless proc net sockstat6 removal\n  tcp: MD5: Use MIB counter instead of warning for MD5 mismatch.\n  pkt_sched: Fix OOPS on ingress qdisc add.\n  niu: Fix error checking in niu_ethflow_to_class.\n  IPv6: datagram_send_ctl() should exit immediately when an error occured\n  mac80211: fix mesh beaconing\n  PS3: gelic: use unsigned long for irqflags\n  mac80211: fix cfg80211 hooks for master interface\n  nl80211: fix dump callbacks\n  mac80211: partially fix skb-\u003ecb use\n  rtl8187: Improve wireless statistics for RTL8187B\n  rtl8187: Fix for TX sequence number problem\n  mac80211: append CONFIG_ to MAC80211_VERBOSE_PS_DEBUG in net/mac80211/tx.c.\n  mac80211: fix sparse integer as NULL pointer warning\n  drivers/net/wireless/iwlwifi/iwl-led.c: printk fix\n  mac80211: return correct error return from ieee80211_wep_init\n  mac80211: tx, use dev_kfree_skb_any for beacon_get\n  rt2x00: Clear queue entry flags during initialization\n  rt2x00: Force full register config after start()\n  ...\n"
    },
    {
      "commit": "c627f9cc046c7cd93b4525d89377fb409e170a18",
      "tree": "851913d2ebd2946b577592fb410f750e6fdc943b",
      "parents": [
        "f718cd4add5aea9d379faff92f162571e356cc5f"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Jul 29 22:33:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:47 2008 -0700"
      },
      "message": "mm: add zap_vma_ptes(): a library function to unmap driver ptes\n\nzap_vma_ptes() is intended to be used by drivers to unmap ptes assigned to the\ndriver private vmas.  This interface is similar to zap_page_range() but is\nless general \u0026 less likely to be abused.\n\nNeeded by the GRU driver.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "204b885e7322656284626949e51f292fe61313fa",
      "tree": "8cf2371c6f4892ae2ffef5d448698f99c5d71777",
      "parents": [
        "87547ee95d81ec0ee1503fcaf9c9594469bc2510"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Jul 29 22:33:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:46 2008 -0700"
      },
      "message": "introduce lower_32_bits() macro\n\nThe file kernel.h contains the upper_32_bits macro.  This patch adds the\nother part, the lower_32_bits macro.  Its first use will be in the driver\nfor AMD IOMMU.\n\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2c203003f64de5fe55ae35712942100d270667fa",
      "tree": "e15e01f1b4c02820f0ecae49e3f874221912a4b5",
      "parents": [
        "3f1712bac586069d6c891a8201457283b27e8abe"
      ],
      "author": {
        "name": "Jerome Arbez-Gindre",
        "email": "jeromearbezgindre@gmail.com",
        "time": "Tue Jul 29 22:33:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:45 2008 -0700"
      },
      "message": "connector: add a BlackBoard user to connector\n\nAdd a BlackBoard user to connector.  BlackBoard is part of the TSP GPL\nsampling framework (http://savannah.nongnu.org/p/tsp)\n\n[akpm@linux-foundation.org: add comment]\nSigned-off-by: Jerome Arbez-Gindre \u003cjeromearbezgindre@gmail.com\u003e\nAcked-by: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3f1712bac586069d6c891a8201457283b27e8abe",
      "tree": "95f5b83236a5ae8bcb714fe0e756ab26e9722bc9",
      "parents": [
        "c389d27b5e643d745f55ffb939b1426060ba63d4"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Tue Jul 29 22:33:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:45 2008 -0700"
      },
      "message": "print_ip_sym(): use %pS\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d1958f05095a7e9ecbba86235122784a3d1b561",
      "tree": "9c0621d0f689c4711d5de2e770140698366b14aa",
      "parents": [
        "3971e1a917548977cff71418a7c3575ffbc9571f"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Jul 29 22:33:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:44 2008 -0700"
      },
      "message": "mm: remove find_max_pfn_with_active_regions\n\nIt has no user now\n\nAlso print out info about adding/removing active regions.\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1531acd43310a7e4571d52e8846640667f4c74b",
      "tree": "ccb0a733180644ec8856219711e6119fd05d4737",
      "parents": [
        "1a4e564b7db999fbe5d88318c96ac8747699d417"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Tue Jul 29 22:32:58 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:43 2008 -0700"
      },
      "message": "cpufreq acpi: only call _PPC after cpufreq ACPI init funcs got called already\n\nIngo Molnar provided a fix to not call _PPC at processor driver\ninitialization time in \"[PATCH] ACPI: fix cpufreq regression\" (git\ncommit e4233dec749a3519069d9390561b5636a75c7579)\n\nBut it can still happen that _PPC is called at processor driver\ninitialization time.\n\nThis patch should make sure that this is not possible anymore.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1a4e564b7db999fbe5d88318c96ac8747699d417",
      "tree": "6451a0bd33533f7a214faa205ad174978458781e",
      "parents": [
        "e958d3ace7791f33518f0259cd3cf229408b135c"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Tue Jul 29 22:32:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:43 2008 -0700"
      },
      "message": "resource: add resource_size()\n\nAvoid one-off errors by introducing a resource_size() function.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nCc: Ben Dooks \u003cben-linux@fluff.org\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95b1bc20532c18e3f19cd460c8350350c84ffbb2",
      "tree": "0ec3aef3787c979f1425184e51a157e5e351cdf3",
      "parents": [
        "771999b65f79264acde4b855e5d35696eca5e80c"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Tue Jul 29 22:28:12 2008 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Jul 30 14:21:05 2008 +0100"
      },
      "message": "[MTD] MTD_DEBUG always does compile-time typechecks\n\nThe current style for debug messages is to ensure they\u0027re always\nparsed by the compiler and then subjected to dead code removal.\nThat way builds won\u0027t break only when debug options get enabled,\nwhich is common when they are stripped out early by CPP.\n\nThis patch makes CONFIG_MTD_DEBUG adopt that convention.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "96d8b647cfff90c8ff07863866aacdcd9d13cead",
      "tree": "2ab2043e692f1cc03d84380d3e5ea820ec95dc6a",
      "parents": [
        "6e86841d05f371b5b9b86ce76c02aaee83352298"
      ],
      "author": {
        "name": "Alexey Korolev",
        "email": "akorolev@infradead.org",
        "time": "Tue Jul 29 13:54:11 2008 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Jul 30 11:59:24 2008 +0100"
      },
      "message": "[MTD] [NAND] fix subpage read for small page NAND\n\nCurrent implementation of subpage read feature for NAND has issues with\nsmall page devices. Small page NAND do not support RNDOUT command.\nSo subpage feature is not applicable for them.\n\nThis patch disables support of subpage for small page NAND.\nThe code is verified on nandsim(SP NAND simulation) and on LP NAND\ndevices.\n\nThanks a lot to Artem for finding this issue.\n\nSigned-off-by: Alexey Korolev \u003cakorolev@infradead.org\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "785957d3e8c6fb37b18bf671923a76dbd8240025",
      "tree": "59f089e4bd109ad9d896c6e6a0f1699f42a34136",
      "parents": [
        "8d50b53d66a8a6ae41bafbdcabe401467803f33a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:03:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:27:25 2008 -0700"
      },
      "message": "tcp: MD5: Use MIB counter instead of warning for MD5 mismatch.\n\nFrom a report by Matti Aarnio, and preliminary patch by Adam Langley.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0eb5d5ab3ec99bfd22ff16797d95835369ffb25b",
      "tree": "38f384a106bcfa8e92e37bf5459e755bc8a9c15b",
      "parents": [
        "e53e86c7ae123b11c269b0835c04e1b42ca4baed"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "philipp.zabel@gmail.com",
        "time": "Fri Jul 11 17:28:06 2008 +0200"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:23 2008 +0100"
      },
      "message": "regulator: TI bq24022 Li-Ion Charger driver\n\nThis adds a regulator driver for the TI bq24022 Single-Chip\nLi-Ion Charger with its nCE and ISET2 pins connected to GPIOs.\n\nSigned-off-by: Philipp Zabel \u003cphilipp.zabel@gmail.com\u003e\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "48d335ba3164ce99cb8847513d0e3b6ee604eb20",
      "tree": "5b1c547c2b18d4c4ef73f60102ed06cb76e6a166",
      "parents": [
        "4c1184e85cb381121a5273ea20ad31ca3faa0a4f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Apr 30 15:50:21 2008 +0100"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:21 2008 +0100"
      },
      "message": "regulator: fixed regulator interface\n\nThis patch adds support for fixed regulators. This class of regulator is\nnot software controllable but can coexist on machines with software\ncontrolable regulators.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4c1184e85cb381121a5273ea20ad31ca3faa0a4f",
      "tree": "957a0edd71c836f6704a4a68a4916a0579ec1bc4",
      "parents": [
        "571a354b1542a274d88617e1f6703f3fe7a517f1"
      ],
      "author": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Apr 30 15:46:09 2008 +0100"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:21 2008 +0100"
      },
      "message": "regulator: machine driver interface\n\nThis interface is for machine specific code and allows the creation of\nvoltage/current domains (with constraints) for each regulator. It can\nprovide regulator constraints that will prevent device damage through\novervoltage or over current caused by buggy client drivers. It also\nallows the creation of a regulator tree whereby some regulators are\nsupplied by others (similar to a clock tree).\n\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Philipp Zabel \u003cphilipp.zabel@gmail.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "571a354b1542a274d88617e1f6703f3fe7a517f1",
      "tree": "efa2f1f1c6b2ab8c176cf30d3806bc34f159e1b7",
      "parents": [
        "e2ce4eaa76214f65a3f328ec5b45c30248115768"
      ],
      "author": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Apr 30 15:42:28 2008 +0100"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:20 2008 +0100"
      },
      "message": "regulator: regulator driver interface\n\nThis allows regulator drivers to register their regulators and provide\noperations to the core. It also has a notifier call chain for propagating\nregulator events to clients.\n\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "e2ce4eaa76214f65a3f328ec5b45c30248115768",
      "tree": "ec90170e0b26ebecfa94b1f0416d8c5f2c27efba",
      "parents": [
        "6e86841d05f371b5b9b86ce76c02aaee83352298"
      ],
      "author": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Apr 30 15:10:07 2008 +0100"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:20 2008 +0100"
      },
      "message": "regulator: consumer device interface\n\nAdd support to allow consumer device drivers to control their regulator\npower supply.\n\nThis uses a similar API to the kernel clock interface in that consumer\ndrivers can get and put a regulator (like they can with clocks atm) and\nget/set voltage, current limit, mode, enable and disable. This should\nallow consumers complete control over their supply voltage and current\nlimit. This also compiles out if not in use so drivers can be reused in\nsystems with no regulator based power control.\n\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "ce0ad7f0952581ba75ab6aee55bb1ed9bb22cf4f",
      "tree": "bf2a8845a031cb685219db2ddcb3d296b4a9ffab",
      "parents": [
        "7d2a175b9bf6e9422bebe95130a3c79a25ff4602"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Jul 30 15:23:13 2008 +1000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 30 15:26:54 2008 +1000"
      },
      "message": "powerpc/mm: Lockless get_user_pages_fast() for 64-bit (v3)\n\nImplement lockless get_user_pages_fast for 64-bit powerpc.\n\nPage table existence is guaranteed with RCU, and speculative page references\nare used to take a reference to the pages without having a prior existence\nguarantee on them.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "e93dc4891df93d7efa59d861fdcbb529a1819343",
      "tree": "545d95bc78c76d44b22bf2590c033311f44c0616",
      "parents": [
        "6e86841d05f371b5b9b86ce76c02aaee83352298",
        "56a6d13dfd49d90d72a1a962246206719dd9d143"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 29 21:51:00 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 29 21:51:00 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "9fec6060d9e48ed7db0dac0e16d0f0f0e615b7f6",
      "tree": "74b41f31a08f6500ff3dfcf64ba21e2d9a8e87e5",
      "parents": [
        "fece418418f51e92dd7e67e17c5e3fe5a28d3279",
        "6e86841d05f371b5b9b86ce76c02aaee83352298"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "cbouatmailru@gmail.com",
        "time": "Wed Jul 30 02:05:23 2008 +0400"
      },
      "committer": {
        "name": "Anton Vorontsov",
        "email": "cbouatmailru@gmail.com",
        "time": "Wed Jul 30 02:05:23 2008 +0400"
      },
      "message": "Merge branch \u0027master\u0027 of /home/cbou/linux-2.6\n\nConflicts:\n\n\tdrivers/power/Kconfig\n\tdrivers/power/Makefile\n"
    },
    {
      "commit": "d0f09804144fd9471a13cf4d80e66842c7fa114f",
      "tree": "4a1f0f78bad7e5be4ad400397a19d4b8d6fbbdcd",
      "parents": [
        "0ccd58fc03f40529f66190b1a41e92a732d2bda8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 29 11:32:07 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 29 16:55:08 2008 -0400"
      },
      "message": "mac80211: partially fix skb-\u003ecb use\n\nThis patch fixes mac80211 to not use the skb-\u003ecb over the queue step\nfrom virtual interfaces to the master. The patch also, for now,\ndisables aggregation because that would still require requeuing,\nwill fix that in a separate patch. There are two other places (software\nrequeue and powersaving stations) where requeue can happen, but that is\nnot currently used by any drivers/not possible to use respectively.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f1b23361a0f15497d4c6795a2935b2e98064ddfb",
      "tree": "78c3b671562de9180e9e7d385a2f851e5fe67aa1",
      "parents": [
        "37f55e9d78d1b63047b1b7ae175cdce650547ba8"
      ],
      "author": {
        "name": "Henrique de Moraes Holschuh",
        "email": "hmh@hmh.eng.br",
        "time": "Mon Jul 21 21:18:19 2008 -0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 29 16:36:33 2008 -0400"
      },
      "message": "rfkill: document the rfkill struct locking (v2)\n\nReorder fields in struct rfkill and add comments to make it clear\nwhich fields are protected by rfkill-\u003emutex.\n\nSigned-off-by: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nAcked-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1795cf48b322b4d19230a40dbe7181acedd34a94",
      "tree": "5d1426c12687f1c80cb648da2f105714c9819001",
      "parents": [
        "0764bff445bb13cd17e41b6ab196ef83c23c6c17"
      ],
      "author": {
        "name": "Adrian McMenamin",
        "email": "adrian@mcmen.demon.co.uk",
        "time": "Tue Jul 29 22:10:56 2008 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Jul 29 22:10:56 2008 +0900"
      },
      "message": "sh/maple: clean maple bus code\n\nThis patch cleans up the handling of the maple bus queue to remove\nthe risk of races when adding packets. It also removes references to the\nredundant connect and disconnect functions.\n\nSigned-off-by: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "8978b74253280d59e97cf49a3ec2c0cbccd5b801",
      "tree": "7cecd6951437f01f541178c1afc14d4e1d2e2b23",
      "parents": [
        "35780c8ea7ad5c6d5483244d5f5bf37176fda86a"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 29 13:38:53 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 12:12:48 2008 +0200"
      },
      "message": "generic, x86: fix add iommu_num_pages helper function\n\nThis IOMMU helper function doesn\u0027t work for some architectures:\n\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d121699304403202\u0026w\u003d2\n\nIt also breaks POWER and SPARC builds:\n\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d121730388001890\u0026w\u003d2\n\nCurrently, only x86 IOMMUs use this so let\u0027s move it to x86 for\nnow.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ed8486243379ef3e6c61363df915882945c0eaec",
      "tree": "5504b545fc236d192be34a4a68de7b74c64f70e9",
      "parents": [
        "e930bffe95e1e886a1ede80726ea38df5838d067"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue Jul 29 11:30:57 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue Jul 29 12:34:02 2008 +0300"
      },
      "message": "KVM: Advertise synchronized mmu support to userspace\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "e930bffe95e1e886a1ede80726ea38df5838d067",
      "tree": "d39227c3de8e7d4a70737c78693f6d7f458066af",
      "parents": [
        "604b38ac0369bd50fcbb33344aa5553c071009f7"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Fri Jul 25 16:24:52 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue Jul 29 12:33:53 2008 +0300"
      },
      "message": "KVM: Synchronize guest physical memory map to host virtual memory map\n\nSynchronize changes to host virtual addresses which are part of\na KVM memory slot to the KVM shadow mmu.  This allows pte operations\nlike swapping, page migration, and madvise() to transparently work\nwith KVM.\n\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "5dfb66ba8c4a96eb732942c9f78629e4db1a51d4",
      "tree": "d443adb4d02ac2599baf402698a589a9b814e478",
      "parents": [
        "1d9b9f6a53d77ed801ba875f937d6dabbfc381ce",
        "424f525a1241351da947fb48a938128ddd774511"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 18:15:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 18:15:41 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.o-hand.com/linux-mfd\n\n* \u0027for-linus\u0027 of git://git.o-hand.com/linux-mfd:\n  mfd: accept pure device as a parent, not only platform_device\n  mfd: add platform_data to mfd_cell\n  mfd: Coding style fixes\n  mfd: Use to_platform_device instead of container_of\n"
    },
    {
      "commit": "1d9b9f6a53d77ed801ba875f937d6dabbfc381ce",
      "tree": "36ea93b80a444c3b37111e352790ebc07f29379f",
      "parents": [
        "a3ad7f128c637b7612ebeacb1f85fec933bb1195",
        "12c0b20fa4afb5c8a377d6987fb2dcf353e1dce1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 18:14:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 18:14:24 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (21 commits)\n  x86/PCI: use dev_printk when possible\n  PCI: add D3 power state avoidance quirk\n  PCI: fix bogus \"\u0027device\u0027 may be used uninitialized\" warning in pci_slot\n  PCI: add an option to allow ASPM enabled forcibly\n  PCI: disable ASPM on pre-1.1 PCIe devices\n  PCI: disable ASPM per ACPI FADT setting\n  PCI MSI: Don\u0027t disable MSIs if the mask bit isn\u0027t supported\n  PCI: handle 64-bit resources better on 32-bit machines\n  PCI: rewrite PCI BAR reading code\n  PCI: document pci_target_state\n  PCI hotplug: fix typo in pcie hotplug output\n  x86 gart: replace to_pages macro with iommu_num_pages\n  x86, AMD IOMMU: replace to_pages macro with iommu_num_pages\n  iommu: add iommu_num_pages helper function\n  dma-coherent: add documentation to new interfaces\n  Cris: convert to using generic dma-coherent mem allocator\n  Sh: use generic per-device coherent dma allocator\n  ARM: support generic per-device coherent dma mem\n  Generic dma-coherent: fix DMA_MEMORY_EXCLUSIVE\n  x86: use generic per-device dma coherent allocator\n  ...\n"
    },
    {
      "commit": "424f525a1241351da947fb48a938128ddd774511",
      "tree": "e837c0f6b15a3efe38bb0aa3db5a46305e5a9f38",
      "parents": [
        "56edb58be157a06dc147a988af3588059556d392"
      ],
      "author": {
        "name": "Dmitry Baryshkov",
        "email": "dbaryshkov@gmail.com",
        "time": "Tue Jul 29 01:30:26 2008 +0200"
      },
      "committer": {
        "name": "Samuel Ortiz",
        "email": "sameo@openedhand.com",
        "time": "Tue Jul 29 01:30:26 2008 +0200"
      },
      "message": "mfd: accept pure device as a parent, not only platform_device\n\nSigned-off-by: Dmitry Baryshkov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@openedhand.com\u003e\n"
    },
    {
      "commit": "8ab22b9abb5c55413802e4adc9aa6223324547c3",
      "tree": "cff3319e1275e8a7c083d492889ec6bd0c7712d3",
      "parents": [
        "d84a52f62f6a396ed77aa0052da74ca9e760b28a"
      ],
      "author": {
        "name": "Hisashi Hifumi",
        "email": "hifumi.hisashi@oss.ntt.co.jp",
        "time": "Mon Jul 28 15:46:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:21 2008 -0700"
      },
      "message": "vfs: pagecache usage optimization for pagesize!\u003dblocksize\n\nWhen we read some part of a file through pagecache, if there is a\npagecache of corresponding index but this page is not uptodate, read IO\nis issued and this page will be uptodate.\n\nI think this is good for pagesize \u003d\u003d blocksize environment but there is\nroom for improvement on pagesize !\u003d blocksize environment.  Because in\nthis case a page can have multiple buffers and even if a page is not\nuptodate, some buffers can be uptodate.\n\nSo I suggest that when all buffers which correspond to a part of a file\nthat we want to read are uptodate, use this pagecache and copy data from\nthis pagecache to user buffer even if a page is not uptodate.  This can\nreduce read IO and improve system throughput.\n\nI wrote a benchmark program and got result number with this program.\n\nThis benchmark do:\n\n  1: mount and open a test file.\n\n  2: create a 512MB file.\n\n  3: close a file and umount.\n\n  4: mount and again open a test file.\n\n  5: pwrite randomly 300000 times on a test file.  offset is aligned\n     by IO size(1024bytes).\n\n  6: measure time of preading randomly 100000 times on a test file.\n\nThe result was:\n\t2.6.26\n        330 sec\n\n\t2.6.26-patched\n        226 sec\n\nArch:i386\nFilesystem:ext3\nBlocksize:1024 bytes\nMemory: 1GB\n\nOn ext3/4, a file is written through buffer/block.  So random read/write\nmixed workloads or random read after random write workloads are optimized\nwith this patch under pagesize !\u003d blocksize environment.  This test result\nshowed this.\n\nThe benchmark program is as follows:\n\n#include \u003cstdio.h\u003e\n#include \u003csys/types.h\u003e\n#include \u003csys/stat.h\u003e\n#include \u003cfcntl.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003ctime.h\u003e\n#include \u003cstdlib.h\u003e\n#include \u003cstring.h\u003e\n#include \u003csys/mount.h\u003e\n\n#define LEN 1024\n#define LOOP 1024*512 /* 512MB */\n\nmain(void)\n{\n\tunsigned long i, offset, filesize;\n\tint fd;\n\tchar buf[LEN];\n\ttime_t t1, t2;\n\n\tif (mount(\"/dev/sda1\", \"/root/test1/\", \"ext3\", 0, 0) \u003c 0) {\n\t\tperror(\"cannot mount\\n\");\n\t\texit(1);\n\t}\n\tmemset(buf, 0, LEN);\n\tfd \u003d open(\"/root/test1/testfile\", O_CREAT|O_RDWR|O_TRUNC);\n\tif (fd \u003c 0) {\n\t\tperror(\"cannot open file\\n\");\n\t\texit(1);\n\t}\n\tfor (i \u003d 0; i \u003c LOOP; i++)\n\t\twrite(fd, buf, LEN);\n\tclose(fd);\n\tif (umount(\"/root/test1/\") \u003c 0) {\n\t\tperror(\"cannot umount\\n\");\n\t\texit(1);\n\t}\n\tif (mount(\"/dev/sda1\", \"/root/test1/\", \"ext3\", 0, 0) \u003c 0) {\n\t\tperror(\"cannot mount\\n\");\n\t\texit(1);\n\t}\n\tfd \u003d open(\"/root/test1/testfile\", O_RDWR);\n\tif (fd \u003c 0) {\n\t\tperror(\"cannot open file\\n\");\n\t\texit(1);\n\t}\n\n\tfilesize \u003d LEN * LOOP;\n\tfor (i \u003d 0; i \u003c 300000; i++){\n\t\toffset \u003d (random() % filesize) \u0026 (~(LEN - 1));\n\t\tpwrite(fd, buf, LEN, offset);\n\t}\n\tprintf(\"start test\\n\");\n\ttime(\u0026t1);\n\tfor (i \u003d 0; i \u003c 100000; i++){\n\t\toffset \u003d (random() % filesize) \u0026 (~(LEN - 1));\n\t\tpread(fd, buf, LEN, offset);\n\t}\n\ttime(\u0026t2);\n\tprintf(\"%ld sec\\n\", t2-t1);\n\tclose(fd);\n\tif (umount(\"/root/test1/\") \u003c 0) {\n\t\tperror(\"cannot umount\\n\");\n\t\texit(1);\n\t}\n}\n\nSigned-off-by: Hisashi Hifumi \u003chifumi.hisashi@oss.ntt.co.jp\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cddb8a5c14aa89810b40495d94d3d2a0faee6619",
      "tree": "d0b47b071f7d2dd1d6f9c36084aa8cfcef90d1da",
      "parents": [
        "7906d00cd1f687268f0a3599442d113767795ae6"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Mon Jul 28 15:46:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:21 2008 -0700"
      },
      "message": "mmu-notifiers: core\n\nWith KVM/GFP/XPMEM there isn\u0027t just the primary CPU MMU pointing to pages.\n There are secondary MMUs (with secondary sptes and secondary tlbs) too.\nsptes in the kvm case are shadow pagetables, but when I say spte in\nmmu-notifier context, I mean \"secondary pte\".  In GRU case there\u0027s no\nactual secondary pte and there\u0027s only a secondary tlb because the GRU\nsecondary MMU has no knowledge about sptes and every secondary tlb miss\nevent in the MMU always generates a page fault that has to be resolved by\nthe CPU (this is not the case of KVM where the a secondary tlb miss will\nwalk sptes in hardware and it will refill the secondary tlb transparently\nto software if the corresponding spte is present).  The same way\nzap_page_range has to invalidate the pte before freeing the page, the spte\n(and secondary tlb) must also be invalidated before any page is freed and\nreused.\n\nCurrently we take a page_count pin on every page mapped by sptes, but that\nmeans the pages can\u0027t be swapped whenever they\u0027re mapped by any spte\nbecause they\u0027re part of the guest working set.  Furthermore a spte unmap\nevent can immediately lead to a page to be freed when the pin is released\n(so requiring the same complex and relatively slow tlb_gather smp safe\nlogic we have in zap_page_range and that can be avoided completely if the\nspte unmap event doesn\u0027t require an unpin of the page previously mapped in\nthe secondary MMU).\n\nThe mmu notifiers allow kvm/GRU/XPMEM to attach to the tsk-\u003emm and know\nwhen the VM is swapping or freeing or doing anything on the primary MMU so\nthat the secondary MMU code can drop sptes before the pages are freed,\navoiding all page pinning and allowing 100% reliable swapping of guest\nphysical address space.  Furthermore it avoids the code that teardown the\nmappings of the secondary MMU, to implement a logic like tlb_gather in\nzap_page_range that would require many IPI to flush other cpu tlbs, for\neach fixed number of spte unmapped.\n\nTo make an example: if what happens on the primary MMU is a protection\ndowngrade (from writeable to wrprotect) the secondary MMU mappings will be\ninvalidated, and the next secondary-mmu-page-fault will call\nget_user_pages and trigger a do_wp_page through get_user_pages if it\ncalled get_user_pages with write\u003d1, and it\u0027ll re-establishing an updated\nspte or secondary-tlb-mapping on the copied page.  Or it will setup a\nreadonly spte or readonly tlb mapping if it\u0027s a guest-read, if it calls\nget_user_pages with write\u003d0.  This is just an example.\n\nThis allows to map any page pointed by any pte (and in turn visible in the\nprimary CPU MMU), into a secondary MMU (be it a pure tlb like GRU, or an\nfull MMU with both sptes and secondary-tlb like the shadow-pagetable layer\nwith kvm), or a remote DMA in software like XPMEM (hence needing of\nschedule in XPMEM code to send the invalidate to the remote node, while no\nneed to schedule in kvm/gru as it\u0027s an immediate event like invalidating\nprimary-mmu pte).\n\nAt least for KVM without this patch it\u0027s impossible to swap guests\nreliably.  And having this feature and removing the page pin allows\nseveral other optimizations that simplify life considerably.\n\nDependencies:\n\n1) mm_take_all_locks() to register the mmu notifier when the whole VM\n   isn\u0027t doing anything with \"mm\".  This allows mmu notifier users to keep\n   track if the VM is in the middle of the invalidate_range_begin/end\n   critical section with an atomic counter incraese in range_begin and\n   decreased in range_end.  No secondary MMU page fault is allowed to map\n   any spte or secondary tlb reference, while the VM is in the middle of\n   range_begin/end as any page returned by get_user_pages in that critical\n   section could later immediately be freed without any further\n   -\u003einvalidate_page notification (invalidate_range_begin/end works on\n   ranges and -\u003einvalidate_page isn\u0027t called immediately before freeing\n   the page).  To stop all page freeing and pagetable overwrites the\n   mmap_sem must be taken in write mode and all other anon_vma/i_mmap\n   locks must be taken too.\n\n2) It\u0027d be a waste to add branches in the VM if nobody could possibly\n   run KVM/GRU/XPMEM on the kernel, so mmu notifiers will only enabled if\n   CONFIG_KVM\u003dm/y.  In the current kernel kvm won\u0027t yet take advantage of\n   mmu notifiers, but this already allows to compile a KVM external module\n   against a kernel with mmu notifiers enabled and from the next pull from\n   kvm.git we\u0027ll start using them.  And GRU/XPMEM will also be able to\n   continue the development by enabling KVM\u003dm in their config, until they\n   submit all GRU/XPMEM GPLv2 code to the mainline kernel.  Then they can\n   also enable MMU_NOTIFIERS in the same way KVM does it (even if KVM\u003dn).\n   This guarantees nobody selects MMU_NOTIFIER\u003dy if KVM and GRU and XPMEM\n   are all \u003dn.\n\nThe mmu_notifier_register call can fail because mm_take_all_locks may be\ninterrupted by a signal and return -EINTR.  Because mmu_notifier_reigster\nis used when a driver startup, a failure can be gracefully handled.  Here\nan example of the change applied to kvm to register the mmu notifiers.\nUsually when a driver startups other allocations are required anyway and\n-ENOMEM failure paths exists already.\n\n struct  kvm *kvm_arch_create_vm(void)\n {\n        struct kvm *kvm \u003d kzalloc(sizeof(struct kvm), GFP_KERNEL);\n+       int err;\n\n        if (!kvm)\n                return ERR_PTR(-ENOMEM);\n\n        INIT_LIST_HEAD(\u0026kvm-\u003earch.active_mmu_pages);\n\n+       kvm-\u003earch.mmu_notifier.ops \u003d \u0026kvm_mmu_notifier_ops;\n+       err \u003d mmu_notifier_register(\u0026kvm-\u003earch.mmu_notifier, current-\u003emm);\n+       if (err) {\n+               kfree(kvm);\n+               return ERR_PTR(err);\n+       }\n+\n        return kvm;\n }\n\nmmu_notifier_unregister returns void and it\u0027s reliable.\n\nThe patch also adds a few needed but missing includes that would prevent\nkernel to compile after these changes on non-x86 archs (x86 didn\u0027t need\nthem by luck).\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix mm/filemap_xip.c build]\n[akpm@linux-foundation.org: fix mm/mmu_notifier.c build]\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Kanoj Sarcar \u003ckanojsarcar@yahoo.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Chris Wright \u003cchrisw@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmarcelo@kvack.org\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Izik Eidus \u003cizike@qumranet.com\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7906d00cd1f687268f0a3599442d113767795ae6",
      "tree": "63609454d164a088d7f535f826764579c0f297f6",
      "parents": [
        "6beeac76f5f96590fb751af5e138fbc3f62e8460"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Mon Jul 28 15:46:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:21 2008 -0700"
      },
      "message": "mmu-notifiers: add mm_take_all_locks() operation\n\nmm_take_all_locks holds off reclaim from an entire mm_struct.  This allows\nmmu notifiers to register into the mm at any time with the guarantee that\nno mmu operation is in progress on the mm.\n\nThis operation locks against the VM for all pte/vma/mm related operations\nthat could ever happen on a certain mm.  This includes vmtruncate,\ntry_to_unmap, and all page faults.\n\nThe caller must take the mmap_sem in write mode before calling\nmm_take_all_locks().  The caller isn\u0027t allowed to release the mmap_sem\nuntil mm_drop_all_locks() returns.\n\nmmap_sem in write mode is required in order to block all operations that\ncould modify pagetables and free pages without need of altering the vma\nlayout (for example populate_range() with nonlinear vmas).  It\u0027s also\nneeded in write mode to avoid new anon_vmas to be associated with existing\nvmas.\n\nA single task can\u0027t take more than one mm_take_all_locks() in a row or it\nwould deadlock.\n\nmm_take_all_locks() and mm_drop_all_locks are expensive operations that\nmay have to take thousand of locks.\n\nmm_take_all_locks() can fail if it\u0027s interrupted by signals.\n\nWhen mmu_notifier_register returns, we must be sure that the driver is\nnotified if some task is in the middle of a vmtruncate for the \u0027mm\u0027 where\nthe mmu notifier was registered (mmu_notifier_invalidate_range_start/end\nis run around the vmtruncation but mmu_notifier_register can run after\nmmu_notifier_invalidate_range_start and before\nmmu_notifier_invalidate_range_end).  Same problem for rmap paths.  And\nwe\u0027ve to remove page pinning to avoid replicating the tlb_gather logic\ninside KVM (and GRU doesn\u0027t work well with page pinning regardless of\nneeding tlb_gather), so without mm_take_all_locks when vmtruncate frees\nthe page, kvm would have no way to notice that it mapped into sptes a page\nthat is going into the freelist without a chance of any further\nmmu_notifier notification.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Kanoj Sarcar \u003ckanojsarcar@yahoo.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Chris Wright \u003cchrisw@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmarcelo@kvack.org\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Izik Eidus \u003cizike@qumranet.com\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6beeac76f5f96590fb751af5e138fbc3f62e8460",
      "tree": "530b768655b63893f019204fe4f9b8405db07ac2",
      "parents": [
        "93686ae8357c1b1e37e8dfc96547f807e7a93b4b"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Mon Jul 28 15:46:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:20 2008 -0700"
      },
      "message": "mmu-notifiers: add list_del_init_rcu()\n\nIntroduce list_del_init_rcu() and document it.\n\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Kanoj Sarcar \u003ckanojsarcar@yahoo.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Chris Wright \u003cchrisw@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmarcelo@kvack.org\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Izik Eidus \u003cizike@qumranet.com\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "56edb58be157a06dc147a988af3588059556d392",
      "tree": "3771389d15ef26bf40ac19f8abd0d39454dc6db6",
      "parents": [
        "7f71ac9374fec066e428892a68db158946cee1fb"
      ],
      "author": {
        "name": "Mike Rapoport",
        "email": "mike@compulab.co.il",
        "time": "Tue Jul 29 01:23:32 2008 +0200"
      },
      "committer": {
        "name": "Samuel Ortiz",
        "email": "sameo@openedhand.com",
        "time": "Tue Jul 29 01:23:32 2008 +0200"
      },
      "message": "mfd: add platform_data to mfd_cell\n\nAdding platform_data to mfd_cell allows passing of platform data directly\nto the platform_device created for each cell and thus reuse of existing\ndrivers.\nOn the other side it can be used as a hook to mfd_cell itself\nremoving the need in mfd_get_cell method.\n\nSigned-off-by: Mike Rapoport \u003cmike@compulab.co.il\u003e\nAcked-by: Dmitry Baryshkov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@openedhand.com\u003e\n"
    },
    {
      "commit": "979b1791e5b8f8b556faeec4c48339e7ed63af9f",
      "tree": "30990937096bb25aa8349dae7285e70f268a767a",
      "parents": [
        "362b7077a5546b42131af15ba4776f30c9a72d0c"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jul 24 17:18:38 2008 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jul 28 15:12:11 2008 -0700"
      },
      "message": "PCI: add D3 power state avoidance quirk\n\nLibata has some hacks to deal with certain controllers going silly in D3\nstate. The right way to handle this is to keep a PCI device flag for\nsuch devices. That can then be generalised for no ATA devices with power\nproblems.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "149e16372a2066c5474d8a8db9b252afd57eb427",
      "tree": "075a46f0672739fdab18d2f1e5f06080160de8b0",
      "parents": [
        "5fde244d39b88625ac578d83e6625138714de031"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Wed Jul 23 10:32:31 2008 +0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jul 28 14:56:57 2008 -0700"
      },
      "message": "PCI: disable ASPM on pre-1.1 PCIe devices\n\nDisable ASPM on pre-1.1 PCIe devices, as many of them don\u0027t implement it\ncorrectly.\n\nTested-by: Jack Howarth \u003chowarth@bromo.msbb.uc.edu\u003e\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5fde244d39b88625ac578d83e6625138714de031",
      "tree": "e50762b22a94f7f7990c9dbab699a857da0982eb",
      "parents": [
        "ce6fce4295ba727b36fdc73040e444bd1aae64cd"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Wed Jul 23 10:32:24 2008 +0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jul 28 14:56:09 2008 -0700"
      },
      "message": "PCI: disable ASPM per ACPI FADT setting\n\nThe ACPI FADT table includes an ASPM control bit. If the bit is set, do\nnot enable ASPM since it may indicate that the platform doesn\u0027t actually\nsupport the feature.\n\nTested-by: Jack Howarth \u003chowarth@bromo.msbb.uc.edu\u003e\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "9e3ee1c39c0cc71222f9980ccbf87fe072897eef",
      "tree": "99462000e6f0d4f907cb2fc690f19d4d441ba0f3",
      "parents": [
        "e56b3bc7942982ac2589c942fb345e38bc7a341a",
        "f934fb19ef34730263e6afc01e8ec27a8a71470f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 23:32:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 23:32:00 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into cpus4096\n\nConflicts:\n\n\tkernel/stop_machine.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "29111f579f4f3f2a07385f931854ab0527ae7ea5",
      "tree": "0271f20b0c954fa364be8627e0d6065544de0534",
      "parents": [
        "cc5499c3a607a392e8a7adb934aaf14b2c6a3519",
        "87e39ea5714dd59ba31e36c25833d2b20255a29d"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Mon Jul 28 14:31:10 2008 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jul 28 14:31:10 2008 -0700"
      },
      "message": "Merge branch \u0027x86/iommu\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip into for-linus\n"
    },
    {
      "commit": "e56b3bc7942982ac2589c942fb345e38bc7a341a",
      "tree": "8130492904f5bb9cff061f62ebb1c5d6eed3308b",
      "parents": [
        "414f746d232d41ed6ae8632c4495ae795373c44b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 11:32:33 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 22:20:41 2008 +0200"
      },
      "message": "cpu masks: optimize and clean up cpumask_of_cpu()\n\nClean up and optimize cpumask_of_cpu(), by sharing all the zero words.\n\nInstead of stupidly generating all possible i\u003d0...NR_CPUS 2^i patterns\ncreating a huge array of constant bitmasks, realize that the zero words\ncan be shared.\n\nIn other words, on a 64-bit architecture, we only ever need 64 of these\narrays - with a different bit set in one single world (with enough zero\nwords around it so that we can create any bitmask by just offsetting in\nthat big array). And then we just put enough zeroes around it that we\ncan point every single cpumask to be one of those things.\n\nSo when we have 4k CPU\u0027s, instead of having 4k arrays (of 4k bits each,\nwith one bit set in each array - 2MB memory total), we have exactly 64\narrays instead, each 8k bits in size (64kB total).\n\nAnd then we just point cpumask(n) to the right position (which we can\ncalculate dynamically). Once we have the right arrays, getting\n\"cpumask(n)\" ends up being:\n\n  static inline const cpumask_t *get_cpu_mask(unsigned int cpu)\n  {\n          const unsigned long *p \u003d cpu_bit_bitmap[1 + cpu % BITS_PER_LONG];\n          p -\u003d cpu / BITS_PER_LONG;\n          return (const cpumask_t *)p;\n  }\n\nThis brings other advantages and simplifications as well:\n\n - we are not wasting memory that is just filled with a single bit in\n   various different places\n\n - we don\u0027t need all those games to re-create the arrays in some dense\n   format, because they\u0027re already going to be dense enough.\n\nif we compile a kernel for up to 4k CPU\u0027s, \"wasting\" that 64kB of memory\nis a non-issue (especially since by doing this \"overlapping\" trick we\nprobably get better cache behaviour anyway).\n\n[ mingo@elte.hu:\n\n  Converted Linus\u0027s mails into a commit. See:\n\n     http://lkml.org/lkml/2008/7/27/156\n     http://lkml.org/lkml/2008/7/28/320\n\n  Also applied a family filter - which also has the side-effect of leaving\n  out the bits where Linus calls me an idio... Oh, never mind ;-)\n]\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "414f746d232d41ed6ae8632c4495ae795373c44b",
      "tree": "167f9bc8f139c6e82e6732b38c7a938b8a9d31cd",
      "parents": [
        "5a7a201c51c324876d00a54e7208af6af12d1ca4",
        "c9272c4f9fbe2087beb3392f526dc5b19efaa56b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 21:14:43 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 21:14:43 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into cpus4096\n"
    },
    {
      "commit": "f934fb19ef34730263e6afc01e8ec27a8a71470f",
      "tree": "6988fa3734adb98ab989657c56b7e31e94e723f8",
      "parents": [
        "3988ba0708e98b4bafc9034aa476775520bee708",
        "72d18a7b9e1a3a9511bae78fc7f0932ae01d5d73"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 09:59:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 09:59:26 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  Input: add driver for Atmel integrated touchscreen controller\n  Input: ads7846 - optimize order of calculating Rt in ads7846_rx()\n  Input: ads7846 - fix sparse endian warnings\n  Input: uinput - remove duplicate include\n  Input: serio - offload resume to kseriod\n  Input: serio - mark serio_register_driver() __must_check\n"
    },
    {
      "commit": "7f71ac9374fec066e428892a68db158946cee1fb",
      "tree": "56c0ef9140380cfa0ecaff155c6f670f12f7733e",
      "parents": [
        "96ee41993b5b25ee0fbde2d4dcaac1f8c5ef5cc4"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Mon Jul 28 18:29:09 2008 +0200"
      },
      "committer": {
        "name": "Samuel Ortiz",
        "email": "sameo@openedhand.com",
        "time": "Mon Jul 28 18:29:09 2008 +0200"
      },
      "message": "mfd: Coding style fixes\n\nFix some coding style fixes in the mfd core driver.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@openedhand.com\u003e\n"
    }
  ],
  "next": "d9089c296bdd82e6c1b7f82d04c11b5decde75e7"
}
