)]}'
{
  "log": [
    {
      "commit": "cbae48738f23d5409138700c5ccdfd6e4e0d6032",
      "tree": "67f3773989a9ed3787c18bc22cf80f503431ee9c",
      "parents": [
        "fb1c6348b22dde3ef75b53ec23982bf1bc617c32",
        "fd96d0d8d8079b1ea7a7e8943a4da9dfc9621124"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 01 08:07:40 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 01 08:07:40 2011 +1000"
      },
      "message": "Merge branch \u0027usb-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* \u0027usb-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (42 commits)\n  usb: gadget: composite: avoid access beyond array max length\n  USB: serial: handle Data Carrier Detect changes\n  USB: gadget: Fix endpoint representation in ci13xxx_udc\n  USB: gadget: Fix error path in ci13xxx_udc gadget probe function\n  usb: pch_udc: Fix the worning log issue at gadget driver remove\n  USB: serial: Updated support for ICOM devices\n  USB: ehci-mxc: add work-around for efika mx/sb bug\n  USB: unbreak ehci-mxc on otg port of i.MX27\n  drivers: update to pl2303 usb-serial to support Motorola cables\n  USB: adding USB support for Cinterion\u0027s HC2x, EU3 and PH8 products\n  USB serial: add missing .usb_driver field in serial drivers\n  USB: ehci-fsl: Fix \u0027have_sysif_regs\u0027 detection\n  USB: g_printer: fix bug in module parameter definitions\n  USB: g_printer: fix bug in unregistration\n  USB: uss720: remove duplicate USB device\n  MAINTAINERS: add ueagle-atm entry\n  USB: EHCI: fix DMA deallocation bug\n  USB: pch_udc: support new device ML7213 IOH\n  usb: pch_udc: Fixed issue which does not work with g_serial\n  usb: set ep_dev async suspend should be later than device_initialize\n  ...\n"
    },
    {
      "commit": "7205649778ca4a110d6098f8defd7312f0bb7289",
      "tree": "1e056fcdf578a62e5639e0a2b5cb8cd393115491",
      "parents": [
        "0b711cac8b9e604c93b32ca6e0b6b73261056d65",
        "4bb9ebc78097376b3734c6d3001a96aecac0f7bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 28 06:35:51 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 28 06:35:51 2011 +1000"
      },
      "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: (43 commits)\n  bnx2: Eliminate AER error messages on systems not supporting it\n  cnic: Fix big endian bug\n  xfrm6: Don\u0027t forget to propagate peer into ipsec route.\n  tg3: Use new VLAN code\n  bonding: update documentation - alternate configuration.\n  TCP: fix a bug that triggers large number of TCP RST by mistake\n  MAINTAINERS: remove Reinette Chatre as iwlwifi maintainer\n  rt2x00: add device id for windy31 usb device\n  mac80211: fix a crash in ieee80211_beacon_get_tim on change_interface\n  ipv6: Revert \u0027administrative down\u0027 address handling changes.\n  textsearch: doc - fix spelling in lib/textsearch.c.\n  USB NET KL5KUSB101: Fix mem leak in error path of kaweth_download_firmware()\n  pch_gbe: don\u0027t use flush_scheduled_work()\n  bnx2: Always set ETH_FLAG_TXVLAN\n  net: clear heap allocation for ethtool_get_regs()\n  ipv6: Always clone offlink routes.\n  dcbnl: make get_app handling symmetric for IEEE and CEE DCBx\n  tcp: fix bug in listening_get_next()\n  inetpeer: Use correct AVL tree base pointer in inet_getpeer().\n  GRO: fix merging a paged skb after non-paged skbs\n  ...\n"
    },
    {
      "commit": "9b6941d8b103fe95d1a90b7996046be9ee0e55e4",
      "tree": "03c4e26abb8d6212741c3821061f2f40f2b5c8ec",
      "parents": [
        "de221bd5eb5e754806fcc39c40bb12b96515d9c5",
        "acd9f9cc305ca2e5da2a39f6f6160cd4b476e38b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 26 11:49:49 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 26 11:49:49 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "6fb1b304255efc5c4c93874ac8c066272e257e28",
      "tree": "67b4193e20d3a5470f56b26d912ed791dba20f13",
      "parents": [
        "ac751efa6a0d70f2c9daef5c7e3a92270f5c2dff",
        "409550f2902470f0387fe40a7db441526e16b2c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 16:31:44 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 16:31:44 2011 +1000"
      },
      "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: wacom - pass touch resolution to clients through input_absinfo\n  Input: wacom - add 2 Bamboo Pen and touch models\n  Input: sysrq - ensure sysrq_enabled and __sysrq_enabled are consistent\n  Input: sparse-keymap - fix KEY_VSW handling in sparse_keymap_setup\n  Input: tegra-kbc - add tegra keyboard driver\n  Input: gpio_keys - switch to using request_any_context_irq\n  Input: serio - allow registered drivers to get status flag\n  Input: ct82710c - return proper error code for ct82c710_open\n  Input: bu21013_ts - added regulator support\n  Input: bu21013_ts - remove duplicate resolution parameters\n  Input: tnetv107x-ts - don\u0027t treat NULL clk as an error\n  Input: tnetv107x-keypad - don\u0027t treat NULL clk as an error\n\nFix up trivial conflicts in drivers/input/keyboard/Makefile due to\nadditions of tc3589x/Tegra drivers\n"
    },
    {
      "commit": "ac751efa6a0d70f2c9daef5c7e3a92270f5c2dff",
      "tree": "e2d3f799e20e2cbca80891ea17af7484f21d628f",
      "parents": [
        "3689456b4bd36027022b3215eb2acba51cd0e6b5"
      ],
      "author": {
        "name": "Torben Hohn",
        "email": "torbenh@gmx.de",
        "time": "Tue Jan 25 15:07:35 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 10:50:06 2011 +1000"
      },
      "message": "console: rename acquire/release_console_sem() to console_lock/unlock()\n\nThe -rt patches change the console_semaphore to console_mutex.  As a\nresult, a quite large chunk of the patches changes all\nacquire/release_console_sem() to acquire/release_console_mutex()\n\nThis commit makes things use more neutral function names which dont make\nimplications about the underlying lock.\n\nThe only real change is the return value of console_trylock which is\ninverted from try_acquire_console_sem()\n\nThis patch also paves the way to switching console_sem from a semaphore to\na mutex.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: make console_trylock return 1 on success, per Geert]\nSigned-off-by: Torben Hohn \u003ctorbenh@gmx.de\u003e\nCc: Thomas Gleixner \u003ctglx@tglx.de\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8348ad7c178627a302d579906096108b02052730",
      "tree": "253a309819de4cd9d913594950e7c1764f7ba5c7",
      "parents": [
        "9948d378b99b06f6f34164dd8ff827e228ae9251",
        "170c7ab58f41c526c54e9dd04044857d5d73f9e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 09:02:14 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 09:02:14 2011 +1000"
      },
      "message": "Merge branch \u0027rmobile-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* \u0027rmobile-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:\n  ARM: mach-shmobile: AG5EVM LCDC / MIPI-DSI platform data\n  ARM: mach-shmobile: sh73a0 CPGA fix for PLL CFG bit\n  ARM: mach-shmobile: mackerel: clarify shdi/mmcif switch settings\n  ARM: mach-shmobile: sh73a0 CPGA fix for IrDA MSTP\n  ARM: mach-shmobile: sh73a0 CPGA fix for FRQCRA M3\n  ARM: mach-shmobile: remove sh7367 on-chip set_irq_type()\n  ARM: mach-shmobile: sh7372 INTCS MFIS2 interrupt update\n  ARM: mach-shmobile: ag5evm: Add IrDA support\n  ARM: mach-shmobile: clock-sh7372: fixup pllc2 set_rate\n  mmc: sh_mmcif: Convert to __raw_xxx() I/O accessors.\n  ARM: mach-shmobile: ag5evm requires GPIOLIB\n  ARM: mach-shmobile: fix cpu_base of gic_init() on sh73a0\n"
    },
    {
      "commit": "5e82ea99827f6aa122fbb08f8659e76226ce107b",
      "tree": "84a433c80276663f8233af91b29aacfd04f42524",
      "parents": [
        "ec30f343d61391ab23705e50a525da1d55395780",
        "abb72c828878a2c69b2cfb33ac30007c8ecd735e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 25 10:46:14 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 25 10:46:14 2011 +1000"
      },
      "message": "Merge branch \u0027drm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:\n  drm/radeon/kms: add new radeon_info ioctl query for clock crystal freq\n  drm/i915: Prevent uninitialised reads during error state capture\n  drm/i915: Use consistent mappings for OpRegion between ACPI and i915\n  drm/i915: Handle the no-interrupts case for UMS by polling\n  drm/i915: Disable high-precision vblank timestamping for UMS\n  drm/i915: Increase the amount of defense before computing vblank timestamps\n  drm/i915,agp/intel: Do not clear stolen entries\n  drm/radeon/kms: simplify atom adjust pll setup\n  drm/radeon/kms: match r6xx/r7xx/evergreen asic_reset with previous asics\n  drm/radeon/kms: make the mac rv630 quirk generic\n  drm/radeon/kms: fix a spelling error in an error message\n  drm/radeon/kms: Initialize pageflip spinlocks.\n  drm/i915: Recognise non-VGA display devices\n  drm/i915: Fix use of invalid array size for ring-\u003esync_seqno\n  drm/i915/ringbuffer: Fix use of stale HEAD position whilst polling for space\n  drm/i915: Don\u0027t kick-off hangcheck after a DRI interrupt\n  drm/i915: Add dependency on CONFIG_TMPFS\n  drm/i915: Initialise ring vfuncs for old DRI paths\n  drm/i915: make the blitter report buffer modifications to the FBC unit\n  drm/i915: set more FBC chicken bits\n"
    },
    {
      "commit": "abb72c828878a2c69b2cfb33ac30007c8ecd735e",
      "tree": "a95ace4f34d86d55b3307bd53354d335e9f23563",
      "parents": [
        "58bbf018a70c562437eeae121a5d021ba7fe56a5",
        "8e934dbf264418afe4d1dff34ce074ecc14280db"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@gmail.com",
        "time": "Tue Jan 25 08:41:58 2011 +1000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@gmail.com",
        "time": "Tue Jan 25 08:41:58 2011 +1000"
      },
      "message": "Merge branch \u0027drm-intel-fixes-2\u0027 of ssh://master.kernel.org/pub/scm/linux/kernel/git/ickle/drm-intel into drm-fixes\n\n* \u0027drm-intel-fixes-2\u0027 of ssh://master.kernel.org/pub/scm/linux/kernel/git/ickle/drm-intel: (30 commits)\n  drm/i915: Prevent uninitialised reads during error state capture\n  drm/i915: Use consistent mappings for OpRegion between ACPI and i915\n  drm/i915: Handle the no-interrupts case for UMS by polling\n  drm/i915: Disable high-precision vblank timestamping for UMS\n  drm/i915: Increase the amount of defense before computing vblank timestamps\n  drm/i915,agp/intel: Do not clear stolen entries\n  Remove MAYBE_BUILD_BUG_ON\n  BUILD_BUG_ON: make it handle more cases\n  module: fix missing semicolons in MODULE macro usage\n  param: add null statement to compiled-in module params\n  module: fix linker error for MODULE_VERSION when !MODULE and CONFIG_SYSFS\u003dn\n  module: show version information for built-in modules in sysfs\n  selinux: return -ENOMEM when memory allocation fails\n  tpm: fix panic caused by \"tpm: Autodetect itpm devices\"\n  TPM: Long default timeout fix\n  trusted keys: Fix a memory leak in trusted_update().\n  keys: add trusted and encrypted maintainers\n  encrypted-keys: rename encrypted_defined files to encrypted\n  trusted-keys: rename trusted_defined files to trusted\n  drm/i915: Recognise non-VGA display devices\n  ...\n"
    },
    {
      "commit": "58bbf018a70c562437eeae121a5d021ba7fe56a5",
      "tree": "5a44a8c8f53710366e51208f63e86c3a441f256a",
      "parents": [
        "b526ce2264e93b64853478ae50725a30c1dc7abf"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexdeucher@gmail.com",
        "time": "Mon Jan 24 17:14:26 2011 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@gmail.com",
        "time": "Tue Jan 25 08:41:04 2011 +1000"
      },
      "message": "drm/radeon/kms: add new radeon_info ioctl query for clock crystal freq\n\nNeeded for timer queries in the 3D driver.\n\nSigned-off-by: Alex Deucher \u003calexdeucher@gmail.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@gmail.com\u003e\n"
    },
    {
      "commit": "e92427b289d252cfbd4cb5282d92f4ce1a5bb1fb",
      "tree": "6d30e5e7b7f8e9aaa51d43b7128ac56860fa03bb",
      "parents": [
        "c506653d35249bb4738bb139c24362e1ae724bc1",
        "ec30f343d61391ab23705e50a525da1d55395780"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 24 13:17:06 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 24 13:17:06 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "ce84d539ce47484ff3cbc9c67b3eb69ae88954f9",
      "tree": "cdba43e845e23a6793ca47857a16fae6032becfb",
      "parents": [
        "bc094757f4f3d7b8211a8a1ed7605ffd7c728f75",
        "b5cc8ca1c9c3a37eaddf709b2fd3e1699aee41ba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 25 05:25:55 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 25 05:25:55 2011 +1000"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  RTC: Remove Kconfig symbol for UIE emulation\n  RTC: Properly handle rtc_read_alarm error propagation and fix bug\n  RTC: Propagate error handling via rtc_timer_enqueue properly\n  acpi_pm: Clear pmtmr_ioport if acpi_pm initialization fails\n  rtc: Cleanup removed UIE emulation declaration\n  hrtimers: Notify hrtimer users of switches to NOHZ mode\n"
    },
    {
      "commit": "8c6a98b22b750c9eb52653ba643faa17db8d3881",
      "tree": "682d083e544bf4b420b6972941c9f3e7493e77ef",
      "parents": [
        "cb1b145929b5b7e1bdc5f76dd2905df9f89c038e"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Jan 24 09:31:38 2011 -0800"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Jan 24 09:33:36 2011 -0800"
      },
      "message": "Input: sysrq - ensure sysrq_enabled and __sysrq_enabled are consistent\n\nCurrently sysrq_enabled and __sysrq_enabled are initialised separately\nand inconsistently, leading to sysrq being actually enabled by reported\nas not enabled in sysfs.  The first change to the sysfs configurable\nsynchronises these two:\n\n    static int __read_mostly sysrq_enabled \u003d 1;\n    static int __sysrq_enabled;\n\nAdd a common define to carry the default for these preventing them becoming\nout of sync again.  Default this to 1 to mirror previous behaviour.\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "d315777b32a4696feb86f2a0c9e9f39c94683649",
      "tree": "f21c24d85cde6ad453c4d9485f5de49357336f81",
      "parents": [
        "5a05a6d7a51bcc47c5c6f0ed68e433f9a01afd89",
        "1765e3a4933ea0870fabd755feffc5473c4363ce"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 24 19:58:39 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 24 19:58:39 2011 +1000"
      },
      "message": "Merge branch \u0027BUG_ON\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027BUG_ON\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  Remove MAYBE_BUILD_BUG_ON\n  BUILD_BUG_ON: make it handle more cases\n"
    },
    {
      "commit": "1765e3a4933ea0870fabd755feffc5473c4363ce",
      "tree": "208364f2933f96773310a3a6c4dce6a21f66eec7",
      "parents": [
        "7ef88ad561457c0346355dfd1f53e503ddfde719"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 24 14:45:10 2011 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 24 14:45:11 2011 +1030"
      },
      "message": "Remove MAYBE_BUILD_BUG_ON\n\nNow BUILD_BUG_ON() can handle optimizable constants, we don\u0027t need\nMAYBE_BUILD_BUG_ON any more.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "7ef88ad561457c0346355dfd1f53e503ddfde719",
      "tree": "22f5e53aec61e0508f8d1aee130160fe24801144",
      "parents": [
        "1bae4ce27c9c90344f23c65ea6966c50ffeae2f5"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 24 14:45:10 2011 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 24 14:45:10 2011 +1030"
      },
      "message": "BUILD_BUG_ON: make it handle more cases\n\nBUILD_BUG_ON used to use the optimizer to do code elimination or fail\nat link time; it was changed to first the size of a negative array (a\nnicer compile time error), then (in\n8c87df457cb58fe75b9b893007917cf8095660a0) to a bitfield.\n\nThis forced us to change some non-constant cases to MAYBE_BUILD_BUG_ON();\nas Jan points out in that commit, it didn\u0027t work as intended anyway.\n\nbitfields: needs a literal constant at parse time, and can\u0027t be put under\n\t\"if (__builtin_constant_p(x))\" for example.\nnegative array: can handle anything, but if the compiler can\u0027t tell it\u0027s\n\ta constant, silently has no effect.\nlink time: breaks link if the compiler can\u0027t determine the value, but the\n\tlinker output is not usually as informative as a compiler error.\n\nIf we use the negative-array-size method *and* the link time trick,\nwe get the ability to use BUILD_BUG_ON() under __builtin_constant_p()\nbranches, and maximal ability for the compiler to detect errors at\nbuild time.\n\nWe also document it thoroughly.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jan Beulich \u003cJBeulich@novell.com\u003e\nAcked-by: Hollis Blanchard \u003chollisb@us.ibm.com\u003e\n"
    },
    {
      "commit": "b75be4204e7871869b2c268c00783703197aaa7d",
      "tree": "6667a6d0ca0380bf8f64a499bfcee0db39bdc5a6",
      "parents": [
        "3b90a5b292321b2acac3921f77046ae195aef53f"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@stericsson.com",
        "time": "Wed Jan 05 13:27:04 2011 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 24 14:32:52 2011 +1030"
      },
      "message": "param: add null statement to compiled-in module params\n\nAdd an unused struct declaration statement requiring a\nterminating semicolon to the compile-in case to provoke an\nerror if __MODULE_INFO() is used without the terminating\nsemicolon. Previously MODULE_ALIAS(\"foo\") (no semicolon)\ncompiled fine if MODULE was not selected.\n\nCc: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3b90a5b292321b2acac3921f77046ae195aef53f",
      "tree": "f084c812a3c55911b9a9a35e101346ffb33d8aae",
      "parents": [
        "e94965ed5beb23c6fabf7ed31f625e66d7ff28de"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 24 14:32:51 2011 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 24 14:32:52 2011 +1030"
      },
      "message": "module: fix linker error for MODULE_VERSION when !MODULE and CONFIG_SYSFS\u003dn\n\nlib/built-in.o:(__modver+0x8): undefined reference to `__modver_version_show\u0027\nlib/built-in.o:(__modver+0x2c): undefined reference to `__modver_version_show\u0027\n\nSimplest to just not emit anything: if they\u0027ve disabled SYSFS they probably\nwant the smallest kernel possible.\n\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "e94965ed5beb23c6fabf7ed31f625e66d7ff28de",
      "tree": "842e4cab961b568bcb98d8ab80d7d399110598a4",
      "parents": [
        "1bae4ce27c9c90344f23c65ea6966c50ffeae2f5"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@vmware.com",
        "time": "Wed Dec 15 14:00:19 2010 -0800"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 24 14:32:51 2011 +1030"
      },
      "message": "module: show version information for built-in modules in sysfs\n\nCurrently only drivers that are built as modules have their versions\nshown in /sys/module/\u003cmodule_name\u003e/version, but this information might\nalso be useful for built-in drivers as well. This especially important\nfor drivers that do not define any parameters - such drivers, if\nbuilt-in, are completely invisible from userspace.\n\nThis patch changes MODULE_VERSION() macro so that in case when we are\ncompiling built-in module, version information is stored in a separate\nsection. Kernel then uses this data to create \u0027version\u0027 sysfs attribute\nin the same fashion it creates attributes for module parameters.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@vmware.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "fd96d0d8d8079b1ea7a7e8943a4da9dfc9621124",
      "tree": "1d1314722847d56e3b703ec721f9534e93fa5580",
      "parents": [
        "3c47eb06f08eb970ea9d696bcdb57a175d37b470",
        "50d64676d132a8a72a1a1657d7b3e6efa53da1ac"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jan 24 08:11:18 2011 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jan 24 08:14:07 2011 +0900"
      },
      "message": "Merge branch \u0027for-usb-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/sarah/xhci into usb-linus\n\n* \u0027for-usb-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/sarah/xhci:\n  xhci: Remove more doorbell-related reads\n  xHCI: fix printk_ratelimit() usage\n  xHCI: replace dev_dbg() with xhci_dbg()\n  xHCI: fix cycle bit set in giveback_first_trb()\n  xHCI: remove redundant parameter in giveback_first_trb()\n  xHCI: fix queue_trb in isoc transfer\n  xhci: Use GFP_NOIO during device reset.\n  usb: Realloc xHCI structures after a hub is verified.\n  xhci: Do not run xhci_cleanup_msix with irq disabled\n  xHCI: synchronize irq in xhci_suspend()\n  xhci: Resume bus on any port status change.\n"
    },
    {
      "commit": "d14fc1a74e846d7851f24fc9519fe87dc12a1231",
      "tree": "9d014b0200d4f2ba94c6d5ed1002c46027147fae",
      "parents": [
        "ca9cfea09fc5802074f79d086547c6363ddc894b"
      ],
      "author": {
        "name": "Libor Pechacek",
        "email": "lpechacek@suse.cz",
        "time": "Fri Jan 14 14:30:21 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Jan 22 18:53:26 2011 -0800"
      },
      "message": "USB: serial: handle Data Carrier Detect changes\n\nAlan\u0027s commit 335f8514f200e63d689113d29cb7253a5c282967 introduced\n.carrier_raised function in several drivers.  That also means\ntty_port_block_til_ready can now suspend the process trying to open the serial\nport when Carrier Detect is low and put it into tty_port.open_wait queue.  We\nneed to wake up the process when Carrier Detect goes high and trigger TTY\nhangup when CD goes low.\n\nSome of the devices do not report modem status line changes, or at least we\ndon\u0027t understand the status message, so for those we remove .carrier_raised\nagain.\n\nSigned-off-by: Libor Pechacek \u003clpechacek@suse.cz\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "13a3cec8443290b082af2a5254562aca247fe591",
      "tree": "5c873a2c9333be348266234ac5d7101caa1b6d7d",
      "parents": [
        "973c9f4f49ca96a53bcf6384c4c59ccd26c33906",
        "88914bdf8c677ebd7e797adac05e47303fd6ac77"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 16:50:31 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 16:50:31 2011 -0800"
      },
      "message": "Merge branch \u0027media_fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027media_fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (101 commits)\n  [media] staging/lirc: fix mem leaks and ptr err usage\n  [media] hdpvr: reduce latency of i2c read/write w/recycled buffer\n  [media] hdpvr: enable IR part\n  [media] rc/mceusb: timeout should be in ns, not us\n  [media] v4l2-device: fix \u0027use-after-freed\u0027 oops\n  [media] v4l2-dev: don\u0027t memset video_device.dev\n  [media] zoran: use video_device_alloc instead of kmalloc\n  [media] w9966: zero device state after a detach\n  [media] v4l: Fix a use-before-set in the control framework\n  [media] v4l: Include linux/videodev2.h in media/v4l2-ctrls.h\n  [media] DocBook/v4l: update V4L2 revision and update copyright years\n  [media] DocBook/v4l: fix validation error in dev-rds.xml\n  [media] v4l2-ctrls: queryctrl shouldn\u0027t attempt to replace V4L2_CID_PRIVATE_BASE IDs\n  [media] v4l2-ctrls: fix missing \u0027read-only\u0027 check\n  [media] pvrusb2: Provide more information about IR units to lirc_zilog and ir-kbd-i2c\n  [media] ir-kbd-i2c: Add back defaults setting for Zilog Z8\u0027s at addr 0x71\n  [media] lirc_zilog: Update TODO.lirc_zilog\n  [media] lirc_zilog: Add Andy Walls to copyright notice and authors list\n  [media] lirc_zilog: Remove useless struct i2c_driver.command function\n  [media] lirc_zilog: Remove unneeded tests for existence of the IR Tx function\n  ...\n"
    },
    {
      "commit": "5bf7a6503ff416214b9a53569677dbf07657e6fd",
      "tree": "0dc8e8dbc30a23d466a327bef05e78c571f2b8a3",
      "parents": [
        "0f5c2ac58f22fd41deaeeb45ee752d4ae55f0d01",
        "42c025f3de9042d9c9abd9a6f6205d1a0f4bcadf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 13:38:57 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 13:38:57 2011 -0800"
      },
      "message": "Merge branch \u0027fixes-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027fixes-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: note the nested NOT_RUNNING test in worker_clr_flags() isn\u0027t a noop\n  workqueue: relax lockdep annotation on flush_work()\n"
    },
    {
      "commit": "0f5c2ac58f22fd41deaeeb45ee752d4ae55f0d01",
      "tree": "6e13ef4d7247e53d7a0f18e04549a8847cc80214",
      "parents": [
        "cfd74486eace27a0899b30529d01bc1a09a5b973",
        "dfff95c394b0dd977a6b65bd52b99703fae94d9b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 13:38:26 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 13:38:26 2011 -0800"
      },
      "message": "Merge branch \u0027irq-cleanup-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-cleanup-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (37 commits)\n  um: Use generic irq Kconfig\n  tile: Use generic irq Kconfig\n  sparc: Use generic irq Kconfig\n  score: Use generic irq Kconfig\n  powerpc: Use generic irq Kconfig\n  parisc: Use generic irq Kconfig\n  mn10300: Use generic irq Kconfig\n  microblaze: Use generic irq Kconfig\n  m68knommu: Use generic irq Kconfig\n  ia64: Use generic irq Kconfig\n  frv: Use generic irq Kconfig\n  blackfin: Use generic irq Kconfig\n  alpha: Use generic irq Kconfig\n  genirq: Remove __do_IRQ\n  m32r: Convert to generic irq Kconfig\n  m32r: Convert usrv platform irq handling\n  m32r: Convert opsput_lcdpld irq chip\n  m32r: Convert opsput lanpld irq chip\n  m32r: Convert opsput pld irq chip\n  m32r: Convert opsput irq chip\n  ...\n"
    },
    {
      "commit": "3dece370ecc7c6152b3fdd21c6de28179f6e643d",
      "tree": "e63f721412c1ef469108ae7e688cebcf39d83cad",
      "parents": [
        "db9fd8486bfe895b00b3603685c086a3c8210ffe"
      ],
      "author": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Fri Jan 21 08:49:56 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 08:40:30 2011 -0800"
      },
      "message": "mm: System without MMU do not need pte_mkwrite\n\nThe patch \"thp: export maybe_mkwrite\" (commit 14fd403f2146) breaks\nsystems without MMU.\n\nError log:\n\n    CC      arch/microblaze/mm/init.o\n  In file included from include/linux/mman.h:14,\n                   from arch/microblaze/mm/consistent.c:24:\n  include/linux/mm.h: In function \u0027maybe_mkwrite\u0027:\n  include/linux/mm.h:482: error: implicit declaration of function \u0027pte_mkwrite\u0027\n  include/linux/mm.h:482: error: incompatible types in assignment\n\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nCC: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCC: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCC: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aa0be0f4659f91f31e45adc422b1788cb36ffddc",
      "tree": "02eed33d672f36e41e735c5060acb9d2446c23af",
      "parents": [
        "db6b175fa6ad1408cbb2fb62949a6d55cfece03e"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 20 15:26:12 2011 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jan 21 17:38:19 2011 +0100"
      },
      "message": "RTC: Propagate error handling via rtc_timer_enqueue properly\n\nIn cases where RTC hardware does not support alarms, the virtualized\nRTC interfaces did not have a way to propagate the error up to userland.\n\nThis patch extends rtc_timer_enqueue so it catches errors from the hardware\nand returns them upwards to the virtualized interfaces. To simplify error\nhandling, it also internalizes the management of the timer-\u003eenabled bit\ninto rtc_timer_enqueue and rtc_timer_remove.\n\nAlso makes rtc_timer_enqueue and rtc_timer_remove static.\n\nReported-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nReported-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nDiagnosed-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nTested-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nLKML-Reference: \u003c1295565973-14358-1-git-send-email-john.stultz@linaro.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1daeddd5962acad1bea55e524fc0fadf32654a21",
      "tree": "29f20f9720c57228f74af205b263321d945f247e",
      "parents": [
        "2d0640b47da74cff7c11642c798d40de861ed524"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 13 09:30:49 2011 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jan 21 17:38:18 2011 +0100"
      },
      "message": "rtc: Cleanup removed UIE emulation declaration\n\nrtc_dev_update_irq_enable_emul was removed in commit\n042620a018afcfba1d678062b62e463b9e43a68d (UIE emulation is\nnow handled via hrtimer), but the declaration was missed.\nThis patch cleans it up.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nLKML-Reference: \u003c1294939849-20608-1-git-send-email-john.stultz@linaro.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4843456c5c341eb57f80f9224362a22665d14107",
      "tree": "5656b405a8b1d2596e8eb748b953ee677a261e3c",
      "parents": [
        "2b1caf6ed7b888c95a1909d343799672731651a5",
        "f00c9e44ad1a9660fe8cd3ca15b6cd9497172eab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 07:33:37 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 07:33:37 2011 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  quota: Fix deadlock during path resolution\n"
    },
    {
      "commit": "1c77ff22f539ceaa64ea43d6a26d867e84602cb7",
      "tree": "d1623ae6a2f8ed56acbaa03b514e393496c42802",
      "parents": [
        "0e155b2ce293382730b8473f6ceeb7ac9b939b7d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jan 19 19:41:35 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jan 21 11:55:31 2011 +0100"
      },
      "message": "genirq: Remove __do_IRQ\n\nAll architectures are finally converted. Remove the cruft.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\n"
    },
    {
      "commit": "9190b3b3208d052d98cb601fcc192f3f71a5658b",
      "tree": "b642a00320a1b35e33741fcd162072724f228fbf",
      "parents": [
        "b30532515f0a62bfe17207ab00883dd262497006"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jan 20 23:31:33 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 20 23:31:33 2011 -0800"
      },
      "message": "net_sched: accurate bytes/packets stats/rates\n\nIn commit 44b8288308ac9d (net_sched: pfifo_head_drop problem), we fixed\na problem with pfifo_head drops that incorrectly decreased\nsch-\u003ebstats.bytes and sch-\u003ebstats.packets\n\nSeveral qdiscs (CHOKe, SFQ, pfifo_head, ...) are able to drop a\npreviously enqueued packet, and bstats cannot be changed, so\nbstats/rates are not accurate (over estimated)\n\nThis patch changes the qdisc_bstats updates to be done at dequeue() time\ninstead of enqueue() time. bstats counters no longer account for dropped\nframes, and rates are more correct, since enqueue() bursts dont have\neffect on dequeue() rate.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2b1caf6ed7b888c95a1909d343799672731651a5",
      "tree": "7ab9a7ae13bc02376bce6267df67f6f2aa9091f1",
      "parents": [
        "d551d81d6a720542873f478def60baab6b5df403",
        "bd924e8cbd4b73ffb7d707a774c04f7e2cae88ed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 18:30:37 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 18:30:37 2011 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  smp: Allow on_each_cpu() to be called while early_boot_irqs_disabled status to init/main.c\n  lockdep: Move early boot local IRQ enable/disable status to init/main.c\n"
    },
    {
      "commit": "2d6d9fd3a54a28c6f67f26eb6c74803307a1b11e",
      "tree": "0d7c54159ca8e9c4d4e113597d3c7c08d9f98e84",
      "parents": [
        "8d99641f6c1af806cd5d9e6badce91910219a161"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jan 19 22:27:14 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 18:30:17 2011 -0800"
      },
      "message": "ACPI: Introduce acpi_os_ioremap()\n\nCommit ca9b600be38c (\"ACPI / PM: Make suspend_nvs_save() use\nacpi_os_map_memory()\") attempted to prevent the code in osl.c and nvs.c\nfrom using different ioremap() variants by making the latter use\nacpi_os_map_memory() for mapping the NVS pages.  However, that also\nrequires acpi_os_unmap_memory() to be used for unmapping them, which\ncauses synchronize_rcu() to be executed many times in a row\nunnecessarily and introduces substantial delays during resume on some\nsystems.\n\nInstead of using acpi_os_map_memory() for mapping the NVS pages in nvs.c\nintroduce acpi_os_ioremap() calling ioremap_cache() and make the code in\nboth osl.c and nvs.c use it.\n\nReported-by: Jeff Chua \u003cjeff.chua.linux@gmail.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d99641f6c1af806cd5d9e6badce91910219a161",
      "tree": "ee841f807005a4a6234f6f502a13185d13a34870",
      "parents": [
        "fc887b15d935ead2a00aef5779a18034e7c69ee1",
        "225c8e010f2d17a62aef131e24c6e7c111f36f9b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 17:02:14 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 17:02:14 2011 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027\n\n* akpm:\n  kernel/smp.c: consolidate writes in smp_call_function_interrupt()\n  kernel/smp.c: fix smp_call_function_many() SMP race\n  memcg: correctly order reading PCG_USED and pc-\u003emem_cgroup\n  backlight: fix 88pm860x_bl macro collision\n  drivers/leds/ledtrig-gpio.c: make output match input, tighten input checking\n  MAINTAINERS: update Atmel AT91 entry\n  mm: fix truncate_setsize() comment\n  memcg: fix rmdir, force_empty with THP\n  memcg: fix LRU accounting with THP\n  memcg: fix USED bit handling at uncharge in THP\n  memcg: modify accounting function for supporting THP better\n  fs/direct-io.c: don\u0027t try to allocate more than BIO_MAX_PAGES in a bio\n  mm: compaction: prevent division-by-zero during user-requested compaction\n  mm/vmscan.c: remove duplicate include of compaction.h\n  memblock: fix memblock_is_region_memory()\n  thp: keep highpte mapped until it is no longer needed\n  kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT\n"
    },
    {
      "commit": "ca3e021417eed30ec2b64ce88eb0acf64aa9bc29",
      "tree": "710590e51764d56c12d00744c402ab15c0d14a6b",
      "parents": [
        "e401f1761c0b01966e36e41e2c385d455a7b44ee"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Thu Jan 20 14:44:24 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 17:02:06 2011 -0800"
      },
      "message": "memcg: fix USED bit handling at uncharge in THP\n\nNow, under THP:\n\nat charge:\n  - PageCgroupUsed bit is set to all page_cgroup on a hugepage.\n    ....set to 512 pages.\nat uncharge\n  - PageCgroupUsed bit is unset on the head page.\n\nSo, some pages will remain with \"Used\" bit.\n\nThis patch fixes that Used bit is set only to the head page.\nUsed bits for tail pages will be set at splitting if necessary.\n\nThis patch adds this lock order:\n   compound_lock() -\u003e page_cgroup_move_lock().\n\n[akpm@linux-foundation.org: fix warning]\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e589501cb928b482c3c399444f788e1af35deee2",
      "tree": "38737ccf5cadb99478f821ed3ba619993fc60425",
      "parents": [
        "28e58ee8ce1f0e69c207f747b7b9054b071e328d",
        "8d5f0a647395c1323787df675d2805cad54fc89f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 16:28:34 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 16:28:34 2011 -0800"
      },
      "message": "Merge branch \u0027acpica\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027acpica\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:\n  ACPICA: Update version to 20110112\n  ACPICA: Update all ACPICA copyrights and signons to 2011\n  ACPICA: Fix issues/fault with automatic \"serialized\" method support\n  ACPICA: Debugger: Lock namespace for duration of a namespace dump\n  ACPICA: Fix namespace race condition\n  ACPICA: Fix memory leak in acpi_ev_asynch_execute_gpe_method().\n"
    },
    {
      "commit": "2ce802f62ba32a7d95748ac92bf351f76affb6ff",
      "tree": "54dd0d6063ca61619e6b8ca84dd95b8e5a3c1402",
      "parents": [
        "12fcdba1b7ae8b25696433f420b775aeb556d89b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jan 20 12:06:35 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 20 13:32:33 2011 +0100"
      },
      "message": "lockdep: Move early boot local IRQ enable/disable status to init/main.c\n\nDuring early boot, local IRQ is disabled until IRQ subsystem is\nproperly initialized.  During this time, no one should enable\nlocal IRQ and some operations which usually are not allowed with\nIRQ disabled, e.g. operations which might sleep or require\ncommunications with other processors, are allowed.\n\nlockdep tracked this with early_boot_irqs_off/on() callbacks.\nAs other subsystems need this information too, move it to\ninit/main.c and make it generally available.  While at it,\ntoggle the boolean to early_boot_irqs_disabled instead of\nenabled so that it can be initialized with %false and %true\nindicates the exceptional condition.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c20110120110635.GB6036@htj.dyndns.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1268afe676ee9431a229fc68a2efb0dad4d5852f",
      "tree": "c252b969a51bd97317415cfc3b6465441f1b8aec",
      "parents": [
        "c56eb8fb6dccb83d9fe62fd4dc00c834de9bc470",
        "4580ccc04ddd8c17a470573a7fdb8def2e036dfa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 19 20:25:45 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 19 20:25:45 2011 -0800"
      },
      "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: (41 commits)\n  sctp: user perfect name for Delayed SACK Timer option\n  net: fix can_checksum_protocol() arguments swap\n  Revert \"netlink: test for all flags of the NLM_F_DUMP composite\"\n  gianfar: Fix misleading indentation in startup_gfar()\n  net/irda/sh_irda: return to RX mode when TX error\n  net offloading: Do not mask out NETIF_F_HW_VLAN_TX for vlan.\n  USB CDC NCM: tx_fixup() race condition fix\n  ns83820: Avoid bad pointer deref in ns83820_init_one().\n  ipv6: Silence privacy extensions initialization\n  bnx2x: Update bnx2x version to 1.62.00-4\n  bnx2x: Fix AER setting for BCM57712\n  bnx2x: Fix BCM84823 LED behavior\n  bnx2x: Mark full duplex on some external PHYs\n  bnx2x: Fix BCM8073/BCM8727 microcode loading\n  bnx2x: LED fix for BCM8727 over BCM57712\n  bnx2x: Common init will be executed only once after POR\n  bnx2x: Swap BCM8073 PHY polarity if required\n  iwlwifi: fix valid chain reading from EEPROM\n  ath5k: fix locking in tx_complete_poll_work\n  ath9k_hw: do PA offset calibration only on longcal interval\n  ...\n"
    },
    {
      "commit": "4580ccc04ddd8c17a470573a7fdb8def2e036dfa",
      "tree": "09c0d4c275c95b70b7e859b0449019fb791fc09c",
      "parents": [
        "d402786ea4f8433774a812d6b8635e737425cddd"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Tue Jan 18 22:39:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 19 16:51:29 2011 -0800"
      },
      "message": "sctp: user perfect name for Delayed SACK Timer option\n\nThe option name of Delayed SACK Timer should be SCTP_DELAYED_SACK,\nnot SCTP_DELAYED_ACK.\n\nLeft SCTP_DELAYED_ACK be concomitant with SCTP_DELAYED_SACK,\nfor making compatibility with existing applications.\n\nReference:\n8.1.19.  Get or Set Delayed SACK Timer (SCTP_DELAYED_SACK)\n（http://tools.ietf.org/html/draft-ietf-tsvwg-sctpsocket-25)\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nAcked-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "765c2a964b49bd06b61a52991519281c85d82b67",
      "tree": "e646cb50bd43f9a74583391805529d3397934f42",
      "parents": [
        "d00ef24fc2923b65fdd440dc6445903e965841ac"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@nokia.com",
        "time": "Wed Jan 19 12:06:52 2011 +0530"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Wed Jan 19 14:43:11 2011 -0200"
      },
      "message": "Bluetooth: Fix race condition with conn-\u003esec_level\n\nThe conn-\u003esec_level value is supposed to represent the current level of\nsecurity that the connection has. However, by assigning to it before\nrequesting authentication it will have the wrong value during the\nauthentication procedure. To fix this a pending_sec_level variable is\nadded which is used to track the desired security level while making\nsure that sec_level always represents the current level of security.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@nokia.com\u003e\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "01c40c048b0f3f377e6d27b35fd99f04efcc21dd",
      "tree": "664b3b188965b32887277f950c628bfc1433456d",
      "parents": [
        "bda50bcd0cc21d9d6dd8c82628f763ab108260a6"
      ],
      "author": {
        "name": "Laurent Pinchart",
        "email": "laurent.pinchart@ideasonboard.com",
        "time": "Fri Nov 19 11:20:06 2010 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Wed Jan 19 11:52:09 2011 -0200"
      },
      "message": "[media] v4l: Include linux/videodev2.h in media/v4l2-ctrls.h\n\nThe later makes extensive use of structures defined in the former.\n\nSigned-off-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "5aad724280b9f8ffff3a55311ef0ba35ebb4099a",
      "tree": "0f076e7baaf5d91cbcc6557d4c88208f83402145",
      "parents": [
        "9ad77eb57b45f81ac3e12077d19e5f121c4cff6d"
      ],
      "author": {
        "name": "Jarod Wilson",
        "email": "jarod@redhat.com",
        "time": "Thu Jan 06 16:59:36 2011 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Wed Jan 19 11:45:52 2011 -0200"
      },
      "message": "[media] rc: fix up and genericize some time unit conversions\n\nThe ene_ir driver was using a private define of MS_TO_NS, which is meant\nto be microseconds to nanoseconds. The mceusb driver copied it,\nintending to use is a milliseconds to microseconds. Lets move the\ndefines to a common location, expand and standardize them a touch, so\nthat we now have:\n\n  MS_TO_NS - milliseconds to nanoseconds\n  MS_TO_US - milliseconds to microseconds\n  US_TO_NS - microseconds to nanoseconds\n\nReported-by: David Härdeman \u003cdavid@hardeman.nu\u003e\nCC: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Jarod Wilson \u003cjarod@redhat.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "2a863793beaa0fc9ee7aeb87efe85544a6b129c0",
      "tree": "9316b12b95a707eb5541db2e24d6033d9b0e2805",
      "parents": [
        "45f6f84af3ae9db19f39bc5d0976d626b0ef626e"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Tue Jan 11 14:45:03 2011 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Wed Jan 19 11:45:32 2011 -0200"
      },
      "message": "[media] v4l2-ctrls: v4l2_ctrl_handler_setup must set is_new to 1\n\nRenamed has_new to is_new.\n\nDrivers can use the is_new field to determine if a new value was specified\nfor a control. The v4l2_ctrl_handler_setup() must always set this to 1 since\nthe setup has to force a full update of all controls.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nAcked-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "45f6f84af3ae9db19f39bc5d0976d626b0ef626e",
      "tree": "f3ef2f5bb782f5d7180c5cc2a8ab58fd855a4ccf",
      "parents": [
        "3c7c9370fb645f4713e0fbbe69425d8db9b47a13"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Sat Jan 08 07:15:53 2011 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Wed Jan 19 11:45:31 2011 -0200"
      },
      "message": "[media] v4l2-subdev: add (un)register internal ops\n\nSome subdevs need to call into the board code after they are registered\nand have a valid struct v4l2_device pointer. The s_config op was abused\nfor this, but now that it is removed we need a cleaner way of solving this.\n\nSo this patch adds a struct with internal ops that the v4l2 core can call.\n\nCurrently only two ops exist: register and unregister. Subdevs can implement\nthese to call the board code and pass it the v4l2_device pointer, which the\nboard code can then use to get access to the struct that embeds the\nv4l2_device.\n\nIt is expected that in the future open and close ops will also be added.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nAcked-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "3c7c9370fb645f4713e0fbbe69425d8db9b47a13",
      "tree": "f7a0580c92bd37826f82aa87052b180addb25e4e",
      "parents": [
        "ecb71d262b0323981e07ce415da9b7adc917990a"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Sat Jan 08 07:08:02 2011 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Wed Jan 19 11:45:30 2011 -0200"
      },
      "message": "[media] v4l2-subdev: remove core.s_config and v4l2_i2c_new_subdev_cfg()\n\nThe core.s_config op was meant for legacy drivers that needed to work with old\npre-2.6.26 kernels. This is no longer relevant. Unfortunately, this op was\nincorrectly called from several drivers.\n\nReplace those occurences with proper i2c_board_info structs and call\nv4l2_i2c_new_subdev_board.\n\nAfter these changes v4l2_i2c_new_subdev_cfg() was no longer used, so remove\nthat function as well.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nAcked-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "9af39713feb53da96ba23fa94a73ffd0de50a815",
      "tree": "264b278d0e741e031f0c9ed940fd78e5502de6e8",
      "parents": [
        "b219ab9cfb2057de6e779169197f83265c310c83"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Sat Dec 18 09:20:59 2010 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Wed Jan 19 11:28:10 2011 -0200"
      },
      "message": "[media] saa7146: Convert from .ioctl to .unlocked_ioctl\n\nConvert saa7146 to use core-assisted locking.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "8d5f0a647395c1323787df675d2805cad54fc89f",
      "tree": "4afdd3c6b162d75e117f94bf99a6111282740e52",
      "parents": [
        "b4e104eaeb8cd4329a23e0e4ebf166681b1d182d"
      ],
      "author": {
        "name": "Bob Moore",
        "email": "robert.moore@intel.com",
        "time": "Mon Jan 17 10:31:08 2011 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jan 18 23:48:04 2011 -0500"
      },
      "message": "ACPICA: Update version to 20110112\n\nVersion 20110112.\n\nSigned-off-by: Bob Moore \u003crobert.moore@intel.com\u003e\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "b4e104eaeb8cd4329a23e0e4ebf166681b1d182d",
      "tree": "99aa8168253da4ba41397116e38769d8c9f270d1",
      "parents": [
        "262948428878fb340127faca1791acb17146122e"
      ],
      "author": {
        "name": "Bob Moore",
        "email": "robert.moore@intel.com",
        "time": "Mon Jan 17 11:05:40 2011 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jan 18 23:48:03 2011 -0500"
      },
      "message": "ACPICA: Update all ACPICA copyrights and signons to 2011\n\nSigned-off-by: Bob Moore \u003crobert.moore@intel.com\u003e\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "f966a13f92913ce8cbd35bc7f066553c9f3d41b0",
      "tree": "5039770cf62f69317c974775190cc4f5919f8398",
      "parents": [
        "7e96fbf2320782fb8f0970928026105cd34b41bd",
        "38d59392b29437af3a702209b6a5196ef01f79a8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 18 12:50:19 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 18 12:50:19 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "b7c15e4a1cbf19be3d3063819b472806902fb525",
      "tree": "802103cb642b9e7fb76677de544289a754cf4c57",
      "parents": [
        "6a7f6ec9512970874fa9fc883ea44d77d0f287c2",
        "27de094f54a4d96bae2cd3121eb157bb8a34f729"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 18 08:05:50 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 18 08:05:50 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:\n  ALSA: hda - Fix initialization for HP 2011 notebooks\n  ALSA: hda - Add support for VMware controller\n  ALSA: hda - consitify string arrays\n  ALSA: hda - Add add multi-streaming playback for AD1988\n  ASoC: EP93xx: fixed LRCLK rate and DMA oper. in I2S code\n  ASoC: WM8990: msleep() takes milliseconds not jiffies\n  ALSA : au88x0 - Limit number of channels to fix Oops via OSS emu\n  ALSA: constify functions in ac97\n  ASoC: WL1273 FM radio: Fix breakage with MFD API changes\n  ALSA: hda - More coverage for odd-number channels elimination for HDMI\n  ALSA: hda - Store PCM parameters properly in HDMI open callback\n  ALSA: hda - Rearrange fixup struct in patch_realtek.c\n  ALSA: oxygen: Xonar DG: fix CS4245 register writes\n  ALSA: hda - Suppress the odd number of channels for HDMI\n  ALSA: hda - Add fixup-call in init callback\n  ALSA: hda - Reorganize fixup structure for Realtek\n  ALSA: hda - Apply Sony VAIO hweq fixup only once\n  ALSA: hda - Apply mario fixup only once\n  ALSA: hda - Remove unused fixup entry for ALC262\n"
    },
    {
      "commit": "d2763b4f44e16f44cc4156c9591e74df9dcd88be",
      "tree": "ce030e235f8283a6c8ffa689995ce3847ea8135d",
      "parents": [
        "ba555461833aa1b5083004492ba97c92d5fccf46"
      ],
      "author": {
        "name": "Naveen Kumar Gaddipati",
        "email": "naveen.gaddipati@stericsson.com",
        "time": "Mon Jan 17 20:40:58 2011 -0800"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Jan 17 20:49:12 2011 -0800"
      },
      "message": "Input: bu21013_ts - remove duplicate resolution parameters\n\nRemove duplicate display resolution parameters from platform data as\none pair is quite enough.\n\nSigned-off-by: Naveen Kumar Gaddipati \u003cnaveen.gaddipati@stericsson.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "6845a44a314c0c626549de373131bf108f9cc1f1",
      "tree": "9152a5c557434515dd7306d288e8f55ecc64652e",
      "parents": [
        "eee2a817df7c5a6e569f353f8be78cc1b3604bb6",
        "4790f4dc5f4326dab5d81ed8fb8c9473e620bdbb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 14:45:48 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 14:45:48 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:\n  RDMA: Update workqueue usage\n  RDMA/nes: Fix incorrect SFP+ link status detection on driver init\n  RDMA/nes: Fix SFP+ link down detection issue with switch port disable\n  RDMA/nes: Generate IB_EVENT_PORT_ERR/PORT_ACTIVE events\n  RDMA/nes: Fix bonding on iw_nes\n  IB/srp: Test only once whether iu allocation succeeded\n  IB/mlx4: Handle protocol field in multicast table\n  RDMA: Use vzalloc() to replace vmalloc()+memset(0)\n  mlx4_{core, ib, en}: Fix driver when sizeof (phys_addr_t) \u003e sizeof (long)\n  IB/mthca: Fix driver when sizeof (phys_addr_t) \u003e sizeof (long)\n"
    },
    {
      "commit": "9e8a462a0141b12e22c4a2f0c12e0542770401f0",
      "tree": "c0e32e5877f099b43e75afc5faecc944207dd51c",
      "parents": [
        "cf78859f520f8275318f47d7864f4459d940cb6b",
        "24562486be76cf223b8d911f45e1d26eb3364b13"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 12:39:57 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 12:39:57 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6:\n  ecryptfs: remove unnecessary decrypt when extending a file\n  ecryptfs: Fix ecryptfs_printk() size_t warnings\n  fs/ecryptfs: Add printf format/argument verification and fix fallout\n  ecryptfs: fixed testing of file descriptor flags\n  ecryptfs: test lower_file pointer when lower_file_mutex is locked\n  ecryptfs: missing initialization of the superblock \u0027magic\u0027 field\n  ecryptfs: moved ECRYPTFS_SUPER_MAGIC definition to linux/magic.h\n  ecryptfs: fix truncation error in ecryptfs_read_update_atime\n"
    },
    {
      "commit": "8c34482c17d8fd07966328c7b1cfc35ee290bd1c",
      "tree": "324f7535ae561dcc430764fd2c7531ff67d9780b",
      "parents": [
        "1a47f7a84ef386c1f7f55f669598bd9894ceb73a",
        "d95defaca7994ffff1ceb52f3011eb644dfe3274"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:18:40 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:18:40 2011 -0800"
      },
      "message": "Merge branch \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  spi/spi_sh_msiof: fix a wrong free_irq() parameter\n  dt/flattree: Return virtual address from early_init_dt_alloc_memory_arch()\n"
    },
    {
      "commit": "ab2020f2f11fc7fb81e6c71298b0830d85412011",
      "tree": "c9a6342063461dcf31278d65585bca73bdda4a84",
      "parents": [
        "235646a486d10891bd86af28d8eac75d9f22bd2d",
        "154bf89f5e3e3dc59666926f27ca4a0866f39157"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:15:30 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:15:30 2011 -0800"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (59 commits)\n  mtd: mtdpart: disallow reading OOB past the end of the partition\n  mtd: pxa3xx_nand: NULL dereference in pxa3xx_nand_probe\n  UBI: use mtd-\u003ewritebufsize to set minimal I/O unit size\n  mtd: initialize writebufsize in the MTD object of a partition\n  mtd: onenand: add mtd-\u003ewritebufsize initialization\n  mtd: nand: add mtd-\u003ewritebufsize initialization\n  mtd: cfi: add writebufsize initialization\n  mtd: add writebufsize field to mtd_info struct\n  mtd: OneNAND: OMAP2/3: prevent regulator sleeping while OneNAND is in use\n  mtd: OneNAND: add enable / disable methods to onenand_chip\n  mtd: m25p80: Fix JEDEC ID for AT26DF321\n  mtd: txx9ndfmc: limit transfer bytes to 512 (ECC provides 6 bytes max)\n  mtd: cfi_cmdset_0002: add support for Samsung K8D3x16UxC NOR chips\n  mtd: cfi_cmdset_0002: add support for Samsung K8D6x16UxM NOR chips\n  mtd: nand: ams-delta: drop omap_read/write, use ioremap\n  mtd: m25p80: add debugging trace in sst_write\n  mtd: nand: ams-delta: select for built-in by default\n  mtd: OneNAND: lighten scary initial bad block messages\n  mtd: OneNAND: OMAP2/3: add support for command line partitioning\n  mtd: nand: rearrange ONFI revision checking, add ONFI 2.3\n  ...\n\nFix up trivial conflict in drivers/mtd/Kconfig as per DavidW.\n"
    },
    {
      "commit": "235646a486d10891bd86af28d8eac75d9f22bd2d",
      "tree": "72308e6d2d7c936d00907689a2749715873d5f1b",
      "parents": [
        "af575e2d2e09517a8190f1b425453cc3e0102f6c",
        "ecf5632dd189ab4c366cef853d6e5fe7adfe52e5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:00:09 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 11:00:09 2011 -0800"
      },
      "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  fs: fix address space warnings in ioctl_fiemap()\n  aio: check return value of create_workqueue()\n  hpfs_setattr error case avoids unlock_kernel\n  compat: copy missing fields in compat_statfs64 to user\n  compat: update comment of compat statfs syscalls\n  compat: remove unnecessary assignment in compat_rw_copy_check_uvector()\n  fs: FS_POSIX_ACL does not depend on BLOCK\n  fs: Remove unlikely() from fget_light()\n  fs: Remove unlikely() from fput_light()\n  fallocate should be a file operation\n  make the feature checks in -\u003efallocate future proof\n  staging: smbfs building fix\n  tidy up around finish_automount()\n  don\u0027t drop newmnt on error in do_add_mount()\n  Take the completion of automount into new helper\n"
    },
    {
      "commit": "e1288cd72f54e7fc16ae9ebb4d0647537ef848d4",
      "tree": "b4fd87b9307d8041fb680cb9b8fbf787ec968df7",
      "parents": [
        "e78bf5e6cbe837daa6ab628a5f679548742994d3",
        "94ae85220a07d357d4937086c490854f63344de4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 10:54:41 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 10:54:41 2011 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: (63 commits)\n  ARM: PL08x: cleanup comments\n  Update CONFIG_MD_RAID6_PQ to CONFIG_RAID6_PQ in drivers/dma/iop-adma.c\n  ARM: PL08x: fix a warning\n  Fix dmaengine_submit() return type\n  dmaengine: at_hdmac: fix race while monitoring channel status\n  dmaengine: at_hdmac: flags located in first descriptor\n  dmaengine: at_hdmac: use subsys_initcall instead of module_init\n  dmaengine: at_hdmac: no need set ACK in new descriptor\n  dmaengine: at_hdmac: trivial add precision to unmapping comment\n  dmaengine: at_hdmac: use dma_address to program DMA hardware\n  pch_dma: support new device ML7213 IOH\n  ARM: PL08x: prevent dma_set_runtime_config() reconfiguring memcpy channels\n  ARM: PL08x: allow dma_set_runtime_config() to return errors\n  ARM: PL08x: fix locking between prepare function and submit function\n  ARM: PL08x: introduce \u0027phychan_hold\u0027 to hold on to physical channels\n  ARM: PL08x: put txd\u0027s on the pending list in pl08x_tx_submit()\n  ARM: PL08x: rename \u0027desc_list\u0027 as \u0027pend_list\u0027\n  ARM: PL08x: implement unmapping of memcpy buffers\n  ARM: PL08x: store prep_* flags in async_tx structure\n  ARM: PL08x: shrink srcbus/dstbus in txd structure\n  ...\n"
    },
    {
      "commit": "2a8652f4e0d11ee27b1d2870c600fd1300661a6e",
      "tree": "f7ee0d8614b60a8733bcf0cfba8ac94776925ed5",
      "parents": [
        "38a708d7759476318d0eec64af174513032ec67a"
      ],
      "author": {
        "name": "Roberto Sassu",
        "email": "roberto.sassu@polito.it",
        "time": "Wed Nov 03 11:11:15 2010 +0100"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Jan 17 10:44:31 2011 -0600"
      },
      "message": "ecryptfs: moved ECRYPTFS_SUPER_MAGIC definition to linux/magic.h\n\nThe definition of ECRYPTFS_SUPER_MAGIC has been moved to the include\nfile \u0027linux/magic.h\u0027 to become available to other kernel subsystems.\n\nSigned-off-by: Roberto Sassu \u003croberto.sassu@polito.it\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "ecf5632dd189ab4c366cef853d6e5fe7adfe52e5",
      "tree": "947ae7edf45415753e960d53957ae3a4121fb3b8",
      "parents": [
        "27eaa1c90c608aa907336c2743d5ecf35c469440"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Sun Jan 16 23:28:17 2011 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 08:21:42 2011 -0500"
      },
      "message": "fs: fix address space warnings in ioctl_fiemap()\n\nThe fi_extents_start field of struct fiemap_extent_info is a\nuser pointer but was not marked as __user. This makes sparse\nemit following warnings:\n\n  CHECK   fs/ioctl.c\nfs/ioctl.c:114:26: warning: incorrect type in argument 1 (different address spaces)\nfs/ioctl.c:114:26:    expected void [noderef] \u003casn:1\u003e*dst\nfs/ioctl.c:114:26:    got struct fiemap_extent *[assigned] dest\nfs/ioctl.c:202:14: warning: incorrect type in argument 1 (different address spaces)\nfs/ioctl.c:202:14:    expected void const volatile [noderef] \u003casn:1\u003e*\u003cnoident\u003e\nfs/ioctl.c:202:14:    got struct fiemap_extent *[assigned] fi_extents_start\nfs/ioctl.c:212:27: warning: incorrect type in argument 1 (different address spaces)\nfs/ioctl.c:212:27:    expected void [noderef] \u003casn:1\u003e*dst\nfs/ioctl.c:212:27:    got char *\u003cnoident\u003e\n\nAlso add \u0027ufiemap\u0027 variable to eliminate unnecessary casts.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c2b3e74b78b24cb367289a75a2bd30e569e56e0e",
      "tree": "1ae2e53e0aa3831486afd2ec8c71a8cd32535b1b",
      "parents": [
        "2fe17c1075836b66678ed2a305fd09b6773883aa"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 13 19:38:08 2010 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 03:26:26 2011 -0500"
      },
      "message": "fs: Remove unlikely() from fput_light()\n\nIn fput_light(), there\u0027s an unlikely(fput_needed), which running on\nmy normal desktop doing firefox, xchat, evolution and part of my distcc farm,\nand running the annotate branch profiler shows that the unlikely is not\nvery unlikely.\n\n correct incorrect  %        Function             File              Line\n ------- ---------  -        --------             ----              ----\n       0       48 100 fput_light                file.h               26\n115828710 897415279  88 fput_light              file.h               26\n865271179 5286128445  85 fput_light             file.h               26\n19568539  8923664  31 fput_light                file.h               26\n12353677  3562279  22 fput_light                file.h               26\n  267691    67062  20 fput_light                file.h               26\n15014853   348172   2 fput_light                file.h               26\n  209258      205   0 fput_light                file.h               26\n 1364164        0   0 fput_light                file.h               26\n\nWhich gives 1032903812 times it was correct and 6203351846 times it was\nincorrect, or 85% incorrect.\n\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2fe17c1075836b66678ed2a305fd09b6773883aa",
      "tree": "eb5287be8138686682eef9622872cfc7657e0664",
      "parents": [
        "64c23e86873ee410554d6d1c76b60da47025e96f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jan 14 13:07:43 2011 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 17 02:25:31 2011 -0500"
      },
      "message": "fallocate should be a file operation\n\nCurrently all filesystems except XFS implement fallocate asynchronously,\nwhile XFS forced a commit.  Both of these are suboptimal - in case of O_SYNC\nI/O we really want our allocation on disk, especially for the !KEEP_SIZE\ncase where we actually grow the file with user-visible zeroes.  On the\nother hand always commiting the transaction is a bad idea for fast-path\nuses of fallocate like for example in recent Samba versions.   Given\nthat block allocation is a data plane operation anyway change it from\nan inode operation to a file operation so that we have the file structure\navailable that lets us check for O_SYNC.\n\nThis also includes moving the code around for a few of the filesystems,\nand remove the already unnedded S_ISDIR checks given that we only wire\nup fallocate for regular files.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4790f4dc5f4326dab5d81ed8fb8c9473e620bdbb",
      "tree": "72d5bbcdc8aa72c4e48a81ce33be5ed797093224",
      "parents": [
        "f06267104dd9112f11586830d22501d0e26245ea",
        "da995a8aee044bc5d0847e19e351cd48a2cb8bcc",
        "eb4a7cbf27082bea34764bab3bc85595683f967b",
        "843276ad985cb59212ceb70d989474521ff516f6",
        "695b83495e2fba9d3a883193cfc9d5eefa96a911"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Jan 16 21:22:41 2011 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Jan 16 21:22:41 2011 -0800"
      },
      "message": "Merge branches \u0027misc\u0027, \u0027mlx4\u0027, \u0027mthca\u0027, \u0027nes\u0027 and \u0027srp\u0027 into for-next\n"
    },
    {
      "commit": "f06267104dd9112f11586830d22501d0e26245ea",
      "tree": "8f7c364abc84a5f69269974eaa2b955b24d8f421",
      "parents": [
        "948579cd8c6ea7c8c98c52b79f4470952e182ebd"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Oct 19 15:24:36 2010 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Jan 16 21:16:31 2011 -0800"
      },
      "message": "RDMA: Update workqueue usage\n\n* ib_wq is added, which is used as the common workqueue for infiniband\n  instead of the system workqueue.  All system workqueue usages\n  including flush_scheduled_work() callers are converted to use and\n  flush ib_wq.\n\n* cancel_delayed_work() + flush_scheduled_work() converted to\n  cancel_delayed_work_sync().\n\n* qib_wq is removed and ib_wq is used instead.\n\nThis is to prepare for deprecation of flush_scheduled_work().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "94ae85220a07d357d4937086c490854f63344de4",
      "tree": "8dda364dc7cbae73a30bbe5ef47ac8d674d998c6",
      "parents": [
        "0261f7416362f6affc2d4fe7fea9320a6bdaaee6"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Sun Jan 16 20:18:05 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jan 16 16:55:43 2011 -0800"
      },
      "message": "ARM: PL08x: cleanup comments\n\nCleanup the formatting of comments, remove some which don\u0027t make sense\nanymore.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n[fix conflict with 96a608a4]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "b3697c0255d9d73eaaa4deb4512e3f0ff97b3b71",
      "tree": "59f7c5aa4c6ac509381071997f0888e2687cebd5",
      "parents": [
        "7e3d0eb0b028ed9e9384e6afcae2f22993bbdf25"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Sun Jan 16 13:10:39 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 15:05:44 2011 -0800"
      },
      "message": "fix non-x86 build failure in pmdp_get_and_clear\n\npmdp_get_and_clear/pmdp_clear_flush/pmdp_splitting_flush were trapped as\nBUG() and they were defined only to diminish the risk of build issues on\nnot-x86 archs and to be consistent with the generic pte methods previously\ndefined in include/asm-generic/pgtable.h.\n\nBut they are causing more trouble than they were supposed to solve, so\nit\u0027s simpler not to define them when THP is off.\n\nThis is also correcting the export of pmdp_splitting_flush which is\ncurrently unused (x86 isn\u0027t using the generic implementation in\nmm/pgtable-generic.c and no other arch needs that [yet]).\n\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc8fe1e992ae0326a88edbe4d6793e840bbdd4ff",
      "tree": "40eb3f1660898b9261219c0c256f569f0258a953",
      "parents": [
        "f8206b925fb0eba3a11839419be118b09105d7b1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 16 20:42:43 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 11:56:26 2011 -0800"
      },
      "message": "PCI / ACPI: Fix build of the AER driver for CONFIG_ACPI unset\n\nAfter commit 415e12b23792 (\"PCI/ACPI: Request _OSC control once for each\nroot bridge (v3)\") include/linux/pci-acpi.h is included by\ndrivers/pci/pcie/aer/aerdrv.c and if CONFIG_ACPI is unset, the bogus and\nunnecessary alternative definition of acpi_find_root_bridge_handle()\ncauses a build error to occur.\n\nRemove the offending piece of garbage.\n\nReported-and-tested-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f8206b925fb0eba3a11839419be118b09105d7b1",
      "tree": "5d41b356a043da09c816ed80bd79d1ea8b2b47e5",
      "parents": [
        "1b59be2a6cdcb5a12e18d8315c07c94a624de48f",
        "f03c65993b98eeb909a4012ce7833c5857d74755"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 11:31:50 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 16 11:31:50 2011 -0800"
      },
      "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: (23 commits)\n  sanitize vfsmount refcounting changes\n  fix old umount_tree() breakage\n  autofs4: Merge the remaining dentry ops tables\n  Unexport do_add_mount() and add in follow_automount(), not -\u003ed_automount()\n  Allow d_manage() to be used in RCU-walk mode\n  Remove a further kludge from __do_follow_link()\n  autofs4: Bump version\n  autofs4: Add v4 pseudo direct mount support\n  autofs4: Fix wait validation\n  autofs4: Clean up autofs4_free_ino()\n  autofs4: Clean up dentry operations\n  autofs4: Clean up inode operations\n  autofs4: Remove unused code\n  autofs4: Add d_manage() dentry operation\n  autofs4: Add d_automount() dentry operation\n  Remove the automount through follow_link() kludge code from pathwalk\n  CIFS: Use d_automount() rather than abusing follow_link()\n  NFS: Use d_automount() rather than abusing follow_link()\n  AFS: Use d_automount() rather than abusing follow_link()\n  Add an AT_NO_AUTOMOUNT flag to suppress terminal automount\n  ...\n"
    },
    {
      "commit": "f03c65993b98eeb909a4012ce7833c5857d74755",
      "tree": "a6dd5e353889b7fe4ab87c54170d09443d788fec",
      "parents": [
        "7b8a53fd815deb39542085897743fa0063f9fe06"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 14 22:30:21 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 16 13:47:07 2011 -0500"
      },
      "message": "sanitize vfsmount refcounting changes\n\nInstead of splitting refcount between (per-cpu) mnt_count\nand (SMP-only) mnt_longrefs, make all references contribute\nto mnt_count again and keep track of how many are longterm\nones.\n\nAccounting rules for longterm count:\n\t* 1 for each fs_struct.root.mnt\n\t* 1 for each fs_struct.pwd.mnt\n\t* 1 for having non-NULL -\u003emnt_ns\n\t* decrement to 0 happens only under vfsmount lock exclusive\n\nThat allows nice common case for mntput() - since we can\u0027t drop the\nfinal reference until after mnt_longterm has reached 0 due to the rules\nabove, mntput() can grab vfsmount lock shared and check mnt_longterm.\nIf it turns out to be non-zero (which is the common case), we know\nthat this is not the final mntput() and can just blindly decrement\npercpu mnt_count.  Otherwise we grab vfsmount lock exclusive and\ndo usual decrement-and-check of percpu mnt_count.\n\nFor fs_struct.c we have mnt_make_longterm() and mnt_make_shortterm();\nnamespace.c uses the latter in places where we don\u0027t already hold\nvfsmount lock exclusive and opencodes a few remaining spots where\nwe need to manipulate mnt_longterm.\n\nNote that we mostly revert the code outside of fs/namespace.c back\nto what we used to have; in particular, normal code doesn\u0027t need\nto care about two kinds of references, etc.  And we get to keep\nthe optimization Nick\u0027s variant had bought us...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "672c54466d24994eb9633f993862c89539504a42",
      "tree": "e08f17e5fa260676912eb9b7d2263d47d667fdec",
      "parents": [
        "1b59be2a6cdcb5a12e18d8315c07c94a624de48f"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Jan 13 15:36:09 2011 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat Jan 15 22:01:58 2011 -0700"
      },
      "message": "dt/flattree: Return virtual address from early_init_dt_alloc_memory_arch()\n\nThe physical address is never used by the device tree code when\nallocating memory for unflattening.  Change the architecture\u0027s alloc\nhook to return the virutal address instead.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "ea5b778a8b98c85a87d66bf844904f9c3802b869",
      "tree": "baa56cbe1a907d76341f2cad53e16569cc1d3288",
      "parents": [
        "ab90911ff90cdab59b31c045c3f0ae480d14f29d"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 14 19:10:03 2011 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 15 20:07:48 2011 -0500"
      },
      "message": "Unexport do_add_mount() and add in follow_automount(), not -\u003ed_automount()\n\nUnexport do_add_mount() and make -\u003ed_automount() return the vfsmount to be\nadded rather than calling do_add_mount() itself.  follow_automount() will then\ndo the addition.\n\nThis slightly complicates things as -\u003ed_automount() normally wants to add the\nnew vfsmount to an expiration list and start an expiration timer.  The problem\nwith that is that the vfsmount will be deleted if it has a refcount of 1 and\nthe timer will not repeat if the expiration list is empty.\n\nTo this end, we require the vfsmount to be returned from d_automount() with a\nrefcount of (at least) 2.  One of these refs will be dropped unconditionally.\nIn addition, follow_automount() must get a 3rd ref around the call to\ndo_add_mount() lest it eat a ref and return an error, leaving the mount we\nhave open to being expired as we would otherwise have only 1 ref on it.\n\nd_automount() should also add the the vfsmount to the expiration list (by\ncalling mnt_set_expiry()) and start the expiration timer before returning, if\nthis mechanism is to be used.  The vfsmount will be unlinked from the\nexpiration list by follow_automount() if do_add_mount() fails.\n\nThis patch also fixes the call to do_add_mount() for AFS to propagate the mount\nflags from the parent vfsmount.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ab90911ff90cdab59b31c045c3f0ae480d14f29d",
      "tree": "683450a66eb9dc6bf053e38d63f4740bb53a7b6e",
      "parents": [
        "87556ef19926e97464e0163a7840140527ae6615"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 14 18:46:51 2011 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 15 20:07:47 2011 -0500"
      },
      "message": "Allow d_manage() to be used in RCU-walk mode\n\nAllow d_manage() to be called from pathwalk when it is in RCU-walk mode as well\nas when it is in Ref-walk mode.  This permits __follow_mount_rcu() to call\nd_manage() directly.  d_manage() needs a parameter to indicate that it is in\nRCU-walk mode as it isn\u0027t allowed to sleep if in that mode (but should return\n-ECHILD instead).\n\nautofs4_d_manage() can then be set to retain RCU-walk mode if the daemon\naccesses it and otherwise request dropping back to ref-walk mode.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1972580bb4edea3ed6fe273b2ca72f44f10f8c86",
      "tree": "9c8e34448ed30e040dcdb18b5b92ec663baa0750",
      "parents": [
        "dd89f90d2deb9aa5bc8e1b15d726ff5c0bb2b623"
      ],
      "author": {
        "name": "Ian Kent",
        "email": "raven@themaw.net",
        "time": "Fri Jan 14 18:46:40 2011 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 15 20:07:45 2011 -0500"
      },
      "message": "autofs4: Bump version\n\nIncrease the autofs module sub-version so we can tell what kernel\nimplementation is being used from user space debug logging.\n\nSigned-off-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "36d43a43761b004ad1879ac21471d8fc5f3157ec",
      "tree": "6cb6c6d978f4e58de7f9bf901707d6929f098345",
      "parents": [
        "d18610b0ce9eb48c60649d8fcbf68374c84349d3"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 14 18:45:42 2011 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 15 20:07:34 2011 -0500"
      },
      "message": "NFS: Use d_automount() rather than abusing follow_link()\n\nMake NFS use the new d_automount() dentry operation rather than abusing\nfollow_link() on directories.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6f45b65672c8017d5e210e338bb5858a938ef445",
      "tree": "b62877c489fb682033c37d30d91c53e4d0c3833a",
      "parents": [
        "cc53ce53c86924bfe98a12ea20b7465038a08792"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 14 18:45:31 2011 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 15 20:07:33 2011 -0500"
      },
      "message": "Add an AT_NO_AUTOMOUNT flag to suppress terminal automount\n\nAdd an AT_NO_AUTOMOUNT flag to suppress terminal automounting of automount\npoint directories.  This can be used by fstatat() users to permit the\ngathering of attributes on an automount point and also prevent\nmass-automounting of a directory of automount points by ls.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "cc53ce53c86924bfe98a12ea20b7465038a08792",
      "tree": "3c9a4923dd9f413c46bfa83a20cb579446df6deb",
      "parents": [
        "9875cf806403fae66b2410a3c2cc820d97731e04"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 14 18:45:26 2011 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 15 20:07:31 2011 -0500"
      },
      "message": "Add a dentry op to allow processes to be held during pathwalk transit\n\nAdd a dentry op (d_manage) to permit a filesystem to hold a process and make it\nsleep when it tries to transit away from one of that filesystem\u0027s directories\nduring a pathwalk.  The operation is keyed off a new dentry flag\n(DCACHE_MANAGE_TRANSIT).\n\nThe filesystem is allowed to be selective about which processes it holds and\nwhich it permits to continue on or prohibits from transiting from each flagged\ndirectory.  This will allow autofs to hold up client processes whilst letting\nits userspace daemon through to maintain the directory or the stuff behind it\nor mounted upon it.\n\nThe -\u003ed_manage() dentry operation:\n\n\tint (*d_manage)(struct path *path, bool mounting_here);\n\ntakes a pointer to the directory about to be transited away from and a flag\nindicating whether the transit is undertaken by do_add_mount() or\ndo_move_mount() skipping through a pile of filesystems mounted on a mountpoint.\n\nIt should return 0 if successful and to let the process continue on its way;\n-EISDIR to prohibit the caller from skipping to overmounted filesystems or\nautomounting, and to use this directory; or some other error code to return to\nthe user.\n\n-\u003ed_manage() is called with namespace_sem writelocked if mounting_here is true\nand no other locks held, so it may sleep.  However, if mounting_here is true,\nit may not initiate or wait for a mount or unmount upon the parameter\ndirectory, even if the act is actually performed by userspace.\n\nWithin fs/namei.c, follow_managed() is extended to check with d_manage() first\non each managed directory, before transiting away from it or attempting to\nautomount upon it.\n\nfollow_down() is renamed follow_down_one() and should only be used where the\nfilesystem deliberately intends to avoid management steps (e.g. autofs).\n\nA new follow_down() is added that incorporates the loop done by all other\ncallers of follow_down() (do_add/move_mount(), autofs and NFSD; whilst AFS, NFS\nand CIFS do use it, their use is removed by converting them to use\nd_automount()).  The new follow_down() calls d_manage() as appropriate.  It\nalso takes an extra parameter to indicate if it is being called from mount code\n(with namespace_sem writelocked) which it passes to d_manage().  follow_down()\nignores automount points so that it can be used to mount on them.\n\n__follow_mount_rcu() is made to abort rcu-walk mode if it hits a directory with\nDCACHE_MANAGE_TRANSIT set on the basis that we\u0027re probably going to have to\nsleep.  It would be possible to enter d_manage() in rcu-walk mode too, and have\nthat determine whether to abort or not itself.  That would allow the autofs\ndaemon to continue on in rcu-walk mode.\n\nNote that DCACHE_MANAGE_TRANSIT on a directory should be cleared when it isn\u0027t\nrequired as every tranist from that directory will cause d_manage() to be\ninvoked.  It can always be set again when necessary.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nWHAT THIS MEANS FOR AUTOFS\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nAutofs currently uses the lookup() inode op and the d_revalidate() dentry op to\ntrigger the automounting of indirect mounts, and both of these can be called\nwith i_mutex held.\n\nautofs knows that the i_mutex will be held by the caller in lookup(), and so\ncan drop it before invoking the daemon - but this isn\u0027t so for d_revalidate(),\nsince the lock is only held on _some_ of the code paths that call it.  This\nmeans that autofs can\u0027t risk dropping i_mutex from its d_revalidate() function\nbefore it calls the daemon.\n\nThe bug could manifest itself as, for example, a process that\u0027s trying to\nvalidate an automount dentry that gets made to wait because that dentry is\nexpired and needs cleaning up:\n\n\tmkdir         S ffffffff8014e05a     0 32580  24956\n\tCall Trace:\n\t [\u003cffffffff885371fd\u003e] :autofs4:autofs4_wait+0x674/0x897\n\t [\u003cffffffff80127f7d\u003e] avc_has_perm+0x46/0x58\n\t [\u003cffffffff8009fdcf\u003e] autoremove_wake_function+0x0/0x2e\n\t [\u003cffffffff88537be6\u003e] :autofs4:autofs4_expire_wait+0x41/0x6b\n\t [\u003cffffffff88535cfc\u003e] :autofs4:autofs4_revalidate+0x91/0x149\n\t [\u003cffffffff80036d96\u003e] __lookup_hash+0xa0/0x12f\n\t [\u003cffffffff80057a2f\u003e] lookup_create+0x46/0x80\n\t [\u003cffffffff800e6e31\u003e] sys_mkdirat+0x56/0xe4\n\nversus the automount daemon which wants to remove that dentry, but can\u0027t\nbecause the normal process is holding the i_mutex lock:\n\n\tautomount     D ffffffff8014e05a     0 32581      1              32561\n\tCall Trace:\n\t [\u003cffffffff80063c3f\u003e] __mutex_lock_slowpath+0x60/0x9b\n\t [\u003cffffffff8000ccf1\u003e] do_path_lookup+0x2ca/0x2f1\n\t [\u003cffffffff80063c89\u003e] .text.lock.mutex+0xf/0x14\n\t [\u003cffffffff800e6d55\u003e] do_rmdir+0x77/0xde\n\t [\u003cffffffff8005d229\u003e] tracesys+0x71/0xe0\n\t [\u003cffffffff8005d28d\u003e] tracesys+0xd5/0xe0\n\nwhich means that the system is deadlocked.\n\nThis patch allows autofs to hold up normal processes whilst the daemon goes\nahead and does things to the dentry tree behind the automouter point without\nrisking a deadlock as almost no locks are held in d_manage() and none in\nd_automount().\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nWas-Acked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9875cf806403fae66b2410a3c2cc820d97731e04",
      "tree": "6f9546b400716766af95e0f78e3d600e765b2b51",
      "parents": [
        "1a8edf40e7c3eee955e0dd0316a7c9d85e36f597"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 14 18:45:21 2011 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 15 20:05:03 2011 -0500"
      },
      "message": "Add a dentry op to handle automounting rather than abusing follow_link()\n\nAdd a dentry op (d_automount) to handle automounting directories rather than\nabusing the follow_link() inode operation.  The operation is keyed off a new\ndentry flag (DCACHE_NEED_AUTOMOUNT).\n\nThis also makes it easier to add an AT_ flag to suppress terminal segment\nautomount during pathwalk and removes the need for the kludge code in the\npathwalk algorithm to handle directories with follow_link() semantics.\n\nThe -\u003ed_automount() dentry operation:\n\n\tstruct vfsmount *(*d_automount)(struct path *mountpoint);\n\ntakes a pointer to the directory to be mounted upon, which is expected to\nprovide sufficient data to determine what should be mounted.  If successful, it\nshould return the vfsmount struct it creates (which it should also have added\nto the namespace using do_add_mount() or similar).  If there\u0027s a collision with\nanother automount attempt, NULL should be returned.  If the directory specified\nby the parameter should be used directly rather than being mounted upon,\n-EISDIR should be returned.  In any other case, an error code should be\nreturned.\n\nThe -\u003ed_automount() operation is called with no locks held and may sleep.  At\nthis point the pathwalk algorithm will be in ref-walk mode.\n\nWithin fs/namei.c itself, a new pathwalk subroutine (follow_automount()) is\nadded to handle mountpoints.  It will return -EREMOTE if the automount flag was\nset, but no d_automount() op was supplied, -ELOOP if we\u0027ve encountered too many\nsymlinks or mountpoints, -EISDIR if the walk point should be used without\nmounting and 0 if successful.  The path will be updated to point to the mounted\nfilesystem if a successful automount took place.\n\n__follow_mount() is replaced by follow_managed() which is more generic\n(especially with the patch that adds -\u003ed_manage()).  This handles transits from\ndirectories during pathwalk, including automounting and skipping over\nmountpoints (and holding processes with the next patch).\n\n__follow_mount_rcu() will jump out of RCU-walk mode if it encounters an\nautomount point with nothing mounted on it.\n\nfollow_dotdot*() does not handle automounts as you don\u0027t want to trigger them\nwhilst following \"..\".\n\nI\u0027ve also extracted the mount/don\u0027t-mount logic from autofs4 and included it\nhere.  It makes the mount go ahead anyway if someone calls open() or creat(),\ntries to traverse the directory, tries to chdir/chroot/etc. into the directory,\nor sticks a \u0027/\u0027 on the end of the pathname.  If they do a stat(), however,\nthey\u0027ll only trigger the automount if they didn\u0027t also say O_NOFOLLOW.\n\nI\u0027ve also added an inode flag (S_AUTOMOUNT) so that filesystems can mark their\ninodes as automount points.  This flag is automatically propagated to the\ndentry as DCACHE_NEED_AUTOMOUNT by __d_instantiate().  This saves NFS and could\nsave AFS a private flag bit apiece, but is not strictly necessary.  It would be\npreferable to do the propagation in d_set_d_op(), but that doesn\u0027t normally\nhave access to the inode.\n\n[AV: fixed breakage in case if __follow_mount_rcu() fails and nameidata_drop_rcu()\nsucceeds in RCU case of do_lookup(); we need to fall through to non-RCU case after\nthat, rather than just returning with ungrabbed *path]\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nWas-Acked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1b59be2a6cdcb5a12e18d8315c07c94a624de48f",
      "tree": "5cf48d9f94d85e9b1f984610b6868ad100ca1916",
      "parents": [
        "f9ee7f60d6f37ae0184812b4c59b3869f875768b",
        "2ed1c5257b5d669df2a64bd53e61dc19c7d936cd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 15 13:01:14 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 15 13:01:14 2011 -0800"
      },
      "message": "Merge branch \u0027slab/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6\n\n* \u0027slab/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:\n  Update Pekka\u0027s email address in MAINTAINERS\n  mm/slab.c: make local symbols static\n  slub: Avoid use of slub_lock in show_slab_objects()\n  memory hotplug: one more lock on memory hotplug\n"
    },
    {
      "commit": "f9ee7f60d6f37ae0184812b4c59b3869f875768b",
      "tree": "6c30a7e94b90cfa3a43cda45f4bdb2f254f3ba10",
      "parents": [
        "16c1020362083b320868c0deef492249089c3cd3",
        "1161ec944916069ceec21c487e30247d9ff22857",
        "76d1f7bfcd5872056902c5a88b5fcd5d4d00a7a9",
        "afa14e7c553ebe45844d76208f66017a43abd0e2",
        "7c46d8da09df22361d1d43465c4f1b06cecaf25f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 15 12:45:00 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 15 12:45:00 2011 -0800"
      },
      "message": "Merge branches \u0027core-fixes-for-linus\u0027, \u0027x86-fixes-for-linus\u0027, \u0027timers-fixes-for-linus\u0027 and \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: avoid pointless blocked-task warnings\n  rcu: demote SRCU_SYNCHRONIZE_DELAY from kernel-parameter status\n  rtmutex: Fix comment about why new_owner can be NULL in wake_futex_pi()\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, olpc: Add missing Kconfig dependencies\n  x86, mrst: Set correct APB timer IRQ affinity for secondary cpu\n  x86: tsc: Fix calibration refinement conditionals to avoid divide by zero\n  x86, ia64, acpi: Clean up x86-ism in drivers/acpi/numa.c\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  timekeeping: Make local variables static\n  time: Rename misnamed minsec argument of clocks_calc_mult_shift()\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Remove syscall_exit_fields\n  tracing: Only process module tracepoints once\n  perf record: Add \"nodelay\" mode, disabled by default\n  perf sched: Fix list of events, dropping unsupported \u0027:r\u0027 modifier\n  Revert \"perf tools: Emit clearer message for sys_perf_event_open ENOENT return\"\n  perf top: Fix annotate segv\n  perf evsel: Fix order of event list deletion\n"
    },
    {
      "commit": "597fb188cbee2d371246e1669bbc6051bb666aa9",
      "tree": "fd9cb605050ca15274cf391dc6bd4073d04808df",
      "parents": [
        "38567333a6dabd0f2b4150e9fb6dd8e3ba2985e5",
        "04d94879c8a4973b5499dc26b9d38acee8928791"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Sat Jan 15 13:28:17 2011 +0200"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Sat Jan 15 13:28:17 2011 +0200"
      },
      "message": "Merge branch \u0027slub/hotplug\u0027 into slab/urgent\n"
    },
    {
      "commit": "96a608a4bfd8468c21881b3f92024923886eb015",
      "tree": "5c1cac2a320f8ba019ccd3d45730ac8d0ecbaa5d",
      "parents": [
        "98d530fe246b65fbd3cdeeeca319a80c46cb4793"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jan 14 17:51:11 2011 -0800"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jan 14 17:51:11 2011 -0800"
      },
      "message": "ARM: PL08x: fix a warning\n\ndrivers/dma/amba-pl08x.c: In function \u0027pl08x_start_txd\u0027:\ndrivers/dma/amba-pl08x.c:205: warning: dereferencing \u0027void *\u0027 pointer\n\nWe never dereference llis_va aside from assigning it to a struct\npl08x_lli pointer or calculating the address of array element 0.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "98d530fe246b65fbd3cdeeeca319a80c46cb4793",
      "tree": "f5b6d711fd6d24ae6a042e91c4bc9108914fb382",
      "parents": [
        "dda36f9821321edf65d69da5c0807df7e73d26fc"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Sat Jan 01 23:00:23 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jan 14 17:07:49 2011 -0800"
      },
      "message": "Fix dmaengine_submit() return type\n\ndesc-\u003etx_submit\u0027s return type is dma_cookie_t, not int.  Therefore,\ndmaengine_submit() should match this return type as it\u0027s just\nwrapping this detail.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "38567333a6dabd0f2b4150e9fb6dd8e3ba2985e5",
      "tree": "1101e3df845ce804035335f80ef3467397bd5373",
      "parents": [
        "de23be5f3580f7b9b52cad6633bb3a3cd13abafe",
        "c66ac9db8d4ad9994a02b3e933ea2ccc643e1fe5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 16:29:49 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 16:29:49 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-post-merge-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-post-merge-2.6:\n  [SCSI] target: Add LIO target core v4.0.0-rc6\n  [SCSI] sd,sr: kill compat SDEV_MEDIA_CHANGE event\n  [SCSI] sd: implement sd_check_events()\n"
    },
    {
      "commit": "3632ef8909118db9584e1bed9538dc180adb32f8",
      "tree": "033925e11aef3c700492b4da0a1332f710de1299",
      "parents": [
        "8473dbb43db92fa8de7c24d1973aaf1e0276a89f"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Sat Jan 15 09:27:00 2011 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 16:10:28 2011 -0800"
      },
      "message": "Revert \"drm: Update fbdev fb_fix_screeninfo\"\n\nThis reverts commit dfe63bb0ad9810db13aab0058caba97866e0a681.\n\nThis commit was causing nouveau not to work properly, for -rc1 I\u0027d\nprefer it worked and we can look if this is useful for 2.6.39.\n\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0029227f1bc30b6c809ae751f9e7af6cef900997",
      "tree": "4962aacd3349c149c1d1567aaa09cd9ac8efec0f",
      "parents": [
        "7111ebc97ed53a32314011c85a6f235f0dab8ae8"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Mon Dec 27 17:39:02 2010 +0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:28:52 2011 -0800"
      },
      "message": "xHCI: synchronize irq in xhci_suspend()\n\nSynchronize the interrupts instead of free them in xhci_suspend(). This will\nprevent a double free when the host is suspended and then the card removed.\n\nSet the flag hcd-\u003emsix_enabled when using MSI-X, and check the flag in\nsuspend_common(). MSI-X synchronization will be handled by xhci_suspend(),\nand MSI/INTx will be synchronized in suspend_common().\n\nThis patch should be queued for the 2.6.37 stable tree.\n\nReported-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "ab0724ffee24409a7f81afb539b2ac29090bff3e",
      "tree": "8d0611d921494af2477d517f4f8a331150bf328d",
      "parents": [
        "9a1fe2f27f71dd275caf2be5be2fa59bd2a3f8d4"
      ],
      "author": {
        "name": "Markus Trippelsdorf",
        "email": "markus@trippelsdorf.de",
        "time": "Sat Jan 15 00:07:22 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 15:23:25 2011 -0800"
      },
      "message": "PCI / ACPI: Fix build issue in pci_root.c for !CONFIG_PCIEPORTBUS\n\nThe compilation of drivers/acpi/pci_root.c fails if\nCONFIG_PCIEPORTBUS is unset.  Fix the problem.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6ab82196492a0b6968a654a06aae923b28afef0d",
      "tree": "8affe1097bba194fe677d5399f47693dc0363dd8",
      "parents": [
        "6f7f7caab259026234277b659485d22c1dcb1ab4",
        "49731baa41df404c2c3f44555869ab387363af43"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 13:32:07 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 13:32:07 2011 -0800"
      },
      "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  block: restore multiple bd_link_disk_holder() support\n  block cfq: compensate preempted queue even if it has no slice assigned\n  block cfq: make queue preempt work for queues from different workload\n"
    },
    {
      "commit": "d018b6f4f1539f3679fbdc2d02d58d09e76be84a",
      "tree": "317b9e04d8e7a73a4d07c69a5cb5455ec34f47e5",
      "parents": [
        "18bce371ae09af6c20ee62c1092a4d1d0e84dd49",
        "0f73f2c5a3ebb957ee66718c903c17ed71a4fc2e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 13:25:30 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 13:25:30 2011 -0800"
      },
      "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  GRETH: resolve SMP issues and other problems\n  GRETH: handle frame error interrupts\n  GRETH: avoid writing bad speed/duplex when setting transfer mode\n  GRETH: fixed skb buffer memory leak on frame errors\n  GRETH: GBit transmit descriptor handling optimization\n  GRETH: fix opening/closing\n  GRETH: added raw AMBA vendor/device number to match against.\n  cassini: Fix build bustage on x86.\n  e1000e: consistent use of Rx/Tx vs. RX/TX/rx/tx in comments/logs\n  e1000e: update Copyright for 2011\n  e1000: Avoid unhandled IRQ\n  r8169: keep firmware in memory.\n  netdev: tilepro: Use is_unicast_ether_addr helper\n  etherdevice.h: Add is_unicast_ether_addr function\n  ks8695net: Use default implementation of ethtool_ops::get_link\n  ks8695net: Disable non-working ethtool operations\n  USB CDC NCM: Don\u0027t deref NULL in cdc_ncm_rx_fixup() and don\u0027t use uninitialized variable.\n  vxge: Remember to release firmware after upgrading firmware\n  netdev: bfin_mac: Remove is_multicast_ether_addr use in netdev_for_each_mc_addr\n  ipsec: update MAX_AH_AUTH_LEN to support sha512\n  ...\n"
    },
    {
      "commit": "18bce371ae09af6c20ee62c1092a4d1d0e84dd49",
      "tree": "f3467fafd8e49392e3f6efef7b88a7b4dd3b7b06",
      "parents": [
        "ec08bdb148767f1193f5f3028749ed865ac27181",
        "a8f2800b4f7b76cecb7209cb6a7d2b14904fc711"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 13:17:26 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 13:17:26 2011 -0800"
      },
      "message": "Merge branch \u0027for-2.6.38\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.38\u0027 of git://linux-nfs.org/~bfields/linux: (62 commits)\n  nfsd4: fix callback restarting\n  nfsd: break lease on unlink, link, and rename\n  nfsd4: break lease on nfsd setattr\n  nfsd: don\u0027t support msnfs export option\n  nfsd4: initialize cb_per_client\n  nfsd4: allow restarting callbacks\n  nfsd4: simplify nfsd4_cb_prepare\n  nfsd4: give out delegations more quickly in 4.1 case\n  nfsd4: add helper function to run callbacks\n  nfsd4: make sure sequence flags are set after destroy_session\n  nfsd4: re-probe callback on connection loss\n  nfsd4: set sequence flag when backchannel is down\n  nfsd4: keep finer-grained callback status\n  rpc: allow xprt_class-\u003esetup to return a preexisting xprt\n  rpc: keep backchannel xprt as long as server connection\n  rpc: move sk_bc_xprt to svc_xprt\n  nfsd4: allow backchannel recovery\n  nfsd4: support BIND_CONN_TO_SESSION\n  nfsd4: modify session list under cl_lock\n  Documentation: fl_mylease no longer exists\n  ...\n\nFix up conflicts in fs/nfsd/vfs.c with the vfs-scale work.  The\nvfs-scale work touched some msnfs cases, and this merge removes support\nfor that entirely, so the conflict was trivial to resolve.\n"
    },
    {
      "commit": "3e8b3b90fecedcf20d895c4e6ad01a379fe252bf",
      "tree": "44c94a9fc098303fbd47e0d10b40ec258e9f816f",
      "parents": [
        "f8fe80e4383bf5f542beb80bf2abe9fc1505c366"
      ],
      "author": {
        "name": "Hanno Boeck",
        "email": "hanno@hboeck.de",
        "time": "Fri Jan 14 19:14:47 2011 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jan 14 19:14:47 2011 +0100"
      },
      "message": "ALSA: constify functions in ac97\n\nSigned-off-by: Hanno Boeck \u003channo@hboeck.de\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "49731baa41df404c2c3f44555869ab387363af43",
      "tree": "5d3476368fa546aebb1c223e9cf1bab5ad80f698",
      "parents": [
        "c553f8e335c00a7cff3ab3f13e793b13d3f2207f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 14 18:43:57 2011 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Jan 14 18:44:22 2011 +0100"
      },
      "message": "block: restore multiple bd_link_disk_holder() support\n\nCommit e09b457b (block: simplify holder symlink handling) incorrectly\nassumed that there is only one link at maximum.  dm may use multiple\nlinks and expects block layer to track reference count for each link,\nwhich is different from and unrelated to the exclusive device holder\nidentified by @holder when the device is opened.\n\nRemove the single holder assumption and automatic removal of the link\nand revive the per-link reference count tracking.  The code\nessentially behaves the same as before commit e09b457b sans the\nunnecessary kobject reference count dancing.\n\nWhile at it, note that this facility should not be used by anyone else\nthan the current ones.  Sysfs symlinks shouldn\u0027t be abused like this\nand the whole thing doesn\u0027t belong in the block layer at all.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Milan Broz \u003cmbroz@redhat.com\u003e\nCc: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: linux-raid@vger.kernel.org\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "d73b388459b1ee2e80f8ff9c1916d75640d7d920",
      "tree": "3e4061226f817c5728009f0bcc1d810d0c4a7b37",
      "parents": [
        "5957e33d6aec266659a71cfabcf7cf2c593ad0d2",
        "0f953bf6b4efa0daddb7c418130a9bd3ee97f7ed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:29:05 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:29:05 2011 -0800"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI/PM: Report wakeup events before resuming devices\n  PCI/PM: Use pm_wakeup_event() directly for reporting wakeup events\n  PCI: sysfs: Update ROM to include default owner write access\n  x86/PCI: make Broadcom CNB20LE driver EMBEDDED and EXPERIMENTAL\n  x86/PCI: don\u0027t use native Broadcom CNB20LE driver when ACPI is available\n  PCI/ACPI: Request _OSC control once for each root bridge (v3)\n  PCI: enable pci\u003dbfsort by default on future Dell systems\n  PCI/PCIe: Clear Root PME Status bits early during system resume\n  PCI: pci-stub: ignore zero-length id parameters\n  x86/PCI: irq and pci_ids patch for Intel Patsburg\n  PCI: Skip id checking if no id is passed\n  PCI: fix __pci_device_probe kernel-doc warning\n  PCI: make pci_restore_state return void\n  PCI: Disable ASPM if BIOS asks us to\n  PCI: Add mask bit definition for MSI-X table\n  PCI: MSI: Move MSI-X entry definition to pci_regs.h\n\nFix up trivial conflicts in drivers/net/{skge.c,sky2.c} that had in the\nmeantime been converted to not use legacy PCI power management, and thus\nno longer use pci_restore_state() at all (and that caused trivial\nconflicts with the \"make pci_restore_state return void\" patch)\n"
    },
    {
      "commit": "5957e33d6aec266659a71cfabcf7cf2c593ad0d2",
      "tree": "6397dec8d71e4ed4f5982792c57d7c0ddb525d1e",
      "parents": [
        "0ad53eeefcbb2620b6a71ffdaad4add20b450b8b",
        "359ab9f5b154cbd807a11e22792235f0f36b0cd5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:25:59 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:25:59 2011 -0800"
      },
      "message": "Merge git://git.infradead.org/battery-2.6\n\n* git://git.infradead.org/battery-2.6: (21 commits)\n  power_supply: Add MAX17042 Fuel Gauge Driver\n  olpc_battery: Fix up XO-1.5 properties list\n  olpc_battery: Add support for CURRENT_NOW and VOLTAGE_NOW\n  olpc_battery: Add support for CHARGE_NOW\n  olpc_battery: Add support for CHARGE_FULL_DESIGN\n  olpc_battery: Ambient temperature is not available on XO-1.5\n  jz4740-battery: Should include linux/io.h\n  s3c_adc_battery: Add gpio_inverted field to pdata\n  power_supply: Don\u0027t use flush_scheduled_work()\n  power_supply: Fix use after free and memory leak\n  gpio-charger: Fix potential race between irq handler and probe/remove\n  gpio-charger: Provide default name for the power_supply\n  gpio-charger: Check result of kzalloc\n  jz4740-battery: Check if platform_data is supplied\n  isp1704_charger: Detect charger after probe\n  isp1704_charger: Set isp-\u003edev before anything needs it\n  isp1704_charger: Detect HUB/Host chargers\n  isp1704_charger: Correct length for storing model\n  power_supply: Add gpio charger driver\n  jz4740-battery: Protect against concurrent battery readings\n  ...\n"
    },
    {
      "commit": "acda4721ae876dedab3fef04bbd8020bfa67ff0a",
      "tree": "ec48d554fe48b3915912e2ae62bc962ade0553bd",
      "parents": [
        "822e5215f9eef86c1dd56d5696bf55a212b0e3f0",
        "32385c7cf60a78375b63afc4f02001df84dfd1a0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:08:29 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:08:29 2011 -0800"
      },
      "message": "Merge branch \u0027vfs-scale-working\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/npiggin/linux-npiggin\n\n* \u0027vfs-scale-working\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/npiggin/linux-npiggin:\n  kernel: fix hlist_bl again\n  cgroups: Fix a lockdep warning at cgroup removal\n  fs: namei fix -\u003eput_link on wrong inode in do_filp_open\n"
    },
    {
      "commit": "822e5215f9eef86c1dd56d5696bf55a212b0e3f0",
      "tree": "661de9888a0edef872e7366df09831bf7a5bc067",
      "parents": [
        "c1e0d97d3d63d5173baf8c39a13dc5c25b031bd4",
        "92d50a4132977b932ed830fa58c05deeb5c524f0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:08:00 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 09:08:00 2011 -0800"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (59 commits)\n  mfd: ab8500-core chip version cut 2.0 support\n  mfd: Flag WM831x /IRQ as a wake source\n  mfd: Convert WM831x away from legacy I2C PM operations\n  regulator: Support MAX8998/LP3974 DVS-GPIO\n  mfd: Support LP3974 RTC\n  i2c: Convert SCx200 driver from using raw PCI to platform device\n  x86: OLPC: convert olpc-xo1 driver from pci device to platform device\n  mfd: MAX8998/LP3974 hibernation support\n  mfd/ab8500: remove spi support\n  mfd: Remove ARCH_U8500 dependency from AB8500\n  misc: Make AB8500_PWM driver depend on U8500 due to PWM breakage\n  mfd: Add __devexit annotation for vx855_remove\n  mfd: twl6030 irq_data conversion.\n  gpio: Fix cs5535 printk warnings\n  misc: Fix cs5535 printk warnings\n  mfd: Convert Wolfson MFD drivers to use irq_data accessor function\n  mfd: Convert TWL4030 to new irq_ APIs\n  mfd: Convert tps6586x driver to new irq_ API\n  mfd: Convert tc6393xb driver to new irq_ APIs\n  mfd: Convert t7166xb driver to new irq_ API\n  ...\n"
    },
    {
      "commit": "b6e335aeeb114dccb07eaa09e8b62ff9510cf745",
      "tree": "f4292a579e594b6c0312e9c34467649cb978aea5",
      "parents": [
        "ff29530e651a3449aea6b0ef4c7048db9e22ef27"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 29 13:21:23 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jan 14 08:55:43 2011 -0800"
      },
      "message": "PCI/PM: Use pm_wakeup_event() directly for reporting wakeup events\n\nAfter recent changes related to wakeup events pm_wakeup_event()\nautomatically checks if the given device is configured to signal wakeup,\nso pci_wakeup_event() may be a static inline function calling\npm_wakeup_event() directly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "415e12b2379239973feab91850b0dce985c6058a",
      "tree": "aa79c7a87fd30ac13ae3fd146aad5a44e854c4bc",
      "parents": [
        "6e8af08dfa40b747002207d3ce8e8b43a050d99f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jan 07 00:55:09 2011 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jan 14 08:55:41 2011 -0800"
      },
      "message": "PCI/ACPI: Request _OSC control once for each root bridge (v3)\n\nMove the evaluation of acpi_pci_osc_control_set() (to request control of\nPCI Express native features) into acpi_pci_root_add() to avoid calling\nit many times for the same root complex with the same arguments.\nAdditionally, check if all of the requisite _OSC support bits are set\nbefore calling acpi_pci_osc_control_set() for a given root complex.\n\nReferences: https://bugzilla.kernel.org/show_bug.cgi?id\u003d20232\nReported-by: Ozan Caglayan \u003cozan@pardus.org.tr\u003e\nTested-by: Ozan Caglayan \u003cozan@pardus.org.tr\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "c94fbe1d9e1e9b1a1f82eb0b53b1cf53bcf9712b",
      "tree": "0191c752be8ea739136106f6cca95df61cffc676",
      "parents": [
        "4ad9f594d7199c99f6b1b3ef88c64bd5920a4592"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Jan 14 11:25:58 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Jan 14 11:25:58 2011 -0500"
      },
      "message": "tracing: Only process module tracepoints once\n\nThe commit:\n\n 9f987b3141f086de27832514aad9f50a53f754\n tracing: Include module.h in define_trace.h\n\nonly solved half the problem. If the trace/events/module.h header is\nincluded at the time of define_trace.h (or in ftrace.h within it),\nthe module.h TRACE_SYSTEM will override the current TRACE_SYSTEM\nmacro.\n\nSince define_trace.h is included when CREATE_TRACE_POINTS is set,\nand the first thing it does is to #undef CREATE_TRACE_POINTS,\nby placing the module.h TRACE_SYSTEM inside a\n #ifdef CREATE_TRACE_POINTS\nwe can prevent it from overriding the TRACE_SYSTEM that is\nbeing processed, and still process the module.h tracepoints\nwhen the module code defines CREATE_TRACE_POINTS and includes\nthe trace/events/module.h header.\n\nAs with commit 9f987b3141, this is only an issue if module.h\nis not included before the trace/events/\u003cevent\u003e.h file is\nincluded, which (luckily) has not happened yet.\n\nReported-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c66ac9db8d4ad9994a02b3e933ea2ccc643e1fe5",
      "tree": "71c6344688bf56ea6aaf18c586ab69ff4f077ade",
      "parents": [
        "f4013c3879d1bbd9f3ab8351185decd049502368"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Fri Dec 17 11:11:26 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Jan 14 10:12:29 2011 -0600"
      },
      "message": "[SCSI] target: Add LIO target core v4.0.0-rc6\n\nLIO target is a full featured in-kernel target framework with the\nfollowing feature set:\n\nHigh-performance, non-blocking, multithreaded architecture with SIMD\nsupport.\n\nAdvanced SCSI feature set:\n\n    * Persistent Reservations (PRs)\n    * Asymmetric Logical Unit Assignment (ALUA)\n    * Protocol and intra-nexus multiplexing, load-balancing and failover (MC/S)\n    * Full Error Recovery (ERL\u003d0,1,2)\n    * Active/active task migration and session continuation (ERL\u003d2)\n    * Thin LUN provisioning (UNMAP and WRITE_SAMExx)\n\nMultiprotocol target plugins\n\nStorage media independence:\n\n    * Virtualization of all storage media; transparent mapping of IO to LUNs\n    * No hard limits on number of LUNs per Target; maximum LUN size ~750 TB\n    * Backstores: SATA, SAS, SCSI, BluRay, DVD, FLASH, USB, ramdisk, etc.\n\nStandards compliance:\n\n    * Full compliance with IETF (RFC 3720)\n    * Full implementation of SPC-4 PRs and ALUA\n\nSignificant code cleanups done by Christoph Hellwig.\n\n[jejb: fix up for new block bdev exclusive interface. Minor fixes from\n Randy Dunlap and Dan Carpenter.]\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "323b7fe8f8f6d5ac6214382cf30e8b3a80b265c9",
      "tree": "537e4b8a2c528f8bd2a71f954e01b71e26ff231c",
      "parents": [
        "836cb711ad7960e52625b24195d6e70b79ab0816"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Fri Jan 14 09:34:29 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 08:06:39 2011 -0800"
      },
      "message": "include/gpio.h: remove remaining __must_check-annotiations\n\nCommit 5f829e405ec4e96f711165a4a7b55c271d4363e2 (gpiolib: add missing functions\nto generic fallback) also introduced two.\n\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "836cb711ad7960e52625b24195d6e70b79ab0816",
      "tree": "b2e9d2060c24f7c68bc82c8e6add25180fe8eaca",
      "parents": [
        "11ff26c884ec957bed87b49e3a38908f37d0d3e4"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa@bluextal.(none)",
        "time": "Fri Jan 14 14:56:53 2011 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 14 07:52:02 2011 -0800"
      },
      "message": "Revert update for dirty_ratio for memcg.\n\nThe flags added by commit db16d5ec1f87f17511599bc77857dd1662b5a22f\nhas no user now. We believe we\u0027ll use it soon but considering\npatch reviewing, the change itself should be folded into incoming\nset of \"dirty ratio for memcg\" patches.\n\nSo, it\u0027s better to drop this change from current mainline tree.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Greg Thelen \u003cgthelen@google.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "359ab9f5b154cbd807a11e22792235f0f36b0cd5",
      "tree": "3500652809c242b75deb5139ded7052c389e0bb4",
      "parents": [
        "bf542a4e7b634c2adcba4241a29082f69b0f45dc"
      ],
      "author": {
        "name": "MyungJoo Ham",
        "email": "myungjoo.ham@samsung.com",
        "time": "Fri Jan 14 14:46:11 2011 +0900"
      },
      "committer": {
        "name": "Anton Vorontsov",
        "email": "cbouatmailru@gmail.com",
        "time": "Fri Jan 14 18:11:59 2011 +0300"
      },
      "message": "power_supply: Add MAX17042 Fuel Gauge Driver\n\nThe MAX17042 is a fuel gauge with an I2C interface for lithium-ion\nbetteries. Unlike its predecessor MAX17040, MAX17042 uses 16bit\nregisters. Besides, MAX17042 has much more features than MAX17040; e.g.,\na thermistor, current and current accumulation measurement, battery\ninternal resistance estimate, average values of measurement, and others.\n\nThis patch implements a driver for MAX17042.\nIn this initial release, we have implemented the most basic features of\na fuel gauge: measure the battery capacity and voltage.\n\nSigned-off-by: MyungJoo Ham \u003cmyungjoo.ham@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nSigned-off-by: Anton Vorontsov \u003ccbouatmailru@gmail.com\u003e\n"
    },
    {
      "commit": "32385c7cf60a78375b63afc4f02001df84dfd1a0",
      "tree": "6419ac3c77cb38bac389e5efc59928e01780a2ae",
      "parents": [
        "3ec762ad8be364c2fadfe0d6b2cc6d4d3b5e1b54"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Fri Jan 14 13:12:45 2011 +0000"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 14 13:12:45 2011 +0000"
      },
      "message": "kernel: fix hlist_bl again\n\n__d_rehash is dereferencing an almost-NULL pointer on my ARM926.\nCONFIG_SMP\u003dn and CONFIG_DEBUG_SPINLOCK\u003dy.\n\nThe faulting instruction is:    strne   r3, [r2, #4]\nand as can be seen from the register dump below, r2 is 0x00000001, hence\nthe faulting 0x00000005 address.\n\n__d_rehash is essentially:\n\n       spin_lock_bucket(b);\n       entry-\u003ed_flags \u0026\u003d ~DCACHE_UNHASHED;\n       hlist_bl_add_head_rcu(\u0026entry-\u003ed_hash, \u0026b-\u003ehead);\n       spin_unlock_bucket(b);\n\nwhich is:\n\n       bit_spin_lock(0, (unsigned long *)\u0026b-\u003ehead.first);\n       entry-\u003ed_flags \u0026\u003d ~DCACHE_UNHASHED;\n       hlist_bl_add_head_rcu(\u0026entry-\u003ed_hash, \u0026b-\u003ehead);\n       __bit_spin_unlock(0, (unsigned long *)\u0026b-\u003ehead.first);\n\nbit_spin_lock(0, ptr) sets bit 0 of *ptr, in this case b-\u003ehead.first if\nCONFIG_SMP or CONFIG_DEBUG_SPINLOCK is set:\n\n#if defined(CONFIG_SMP) || defined(CONFIG_DEBUG_SPINLOCK)\n       while (unlikely(test_and_set_bit_lock(bitnum, addr))) {\n               while (test_bit(bitnum, addr)) {\n                       preempt_enable();\n                       cpu_relax();\n                       preempt_disable();\n               }\n       }\n#endif\n\nSo, b-\u003ehead.first starts off NULL, and becomes a non-NULL (address 1).\nhlist_bl_add_head_rcu() does this:\n\nstatic inline void hlist_bl_add_head_rcu(struct hlist_bl_node *n,\n                                       struct hlist_bl_head *h)\n{\n       first \u003d hlist_bl_first(h);\n       n-\u003enext \u003d first;\n       if (first)\n               first-\u003epprev \u003d \u0026n-\u003enext;\n\nIt is the store to first-\u003epprev which is faulting.\n\nhlist_bl_first():\n\nstatic inline struct hlist_bl_node *hlist_bl_first(struct hlist_bl_head *h)\n{\n       return (struct hlist_bl_node *)\n               ((unsigned long)h-\u003efirst \u0026 ~LIST_BL_LOCKMASK);\n}\n\nbut:\n#if defined(CONFIG_SMP)\n#define LIST_BL_LOCKMASK        1UL\n#else\n#define LIST_BL_LOCKMASK        0UL\n#endif\n\nSo, we have one piece of code which sets bit 0 of addresses, and another\nbit of code which doesn\u0027t clear it before dereferencing the pointer if\n!CONFIG_SMP \u0026\u0026 CONFIG_DEBUG_SPINLOCK.  With the patch below, I can again\nsucessfully boot the kernel on my Versatile PB/926 platform.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    }
  ],
  "next": "92d50a4132977b932ed830fa58c05deeb5c524f0"
}
