)]}'
{
  "log": [
    {
      "commit": "4db96cf077aa938b11fe7ac79ecc9b29ec00fbab",
      "tree": "ec196e85769159f29952e34305795b47513639a0",
      "parents": [
        "6746aff74da293b5fd24e5c68b870b721e86cd5f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:14 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:14 2009 +0200"
      },
      "message": "HWPOISON: Add PR_MCE_KILL prctl to control early kill behaviour per process\n\nThis allows processes to override their early/late kill\nbehaviour on hardware memory errors.\n\nTypically applications which are memory error aware is\nbetter of with early kill (see the error as soon\nas possible), all others with late kill (only\nsee the error when the error is really impacting execution)\n\nThere\u0027s a global sysctl, but this way an application\ncan set its specific policy.\n\nWe\u0027re using two bits, one to signify that the process\nstated its intention and that\n\nI also made the prctl future proof by enforcing\nthe unused arguments are 0.\n\nThe state is inherited to children.\n\nNote this makes us officially run out of process flags\non 32bit, but the next patch can easily add another field.\n\nManpage patch will be supplied separately.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "6746aff74da293b5fd24e5c68b870b721e86cd5f",
      "tree": "6d2b9e99d247e788c13665ce5e8a0753538ef641",
      "parents": [
        "257187362123f15d9d1e09918cf87cebbea4e786"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Sep 16 11:50:14 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:14 2009 +0200"
      },
      "message": "HWPOISON: shmem: call set_page_dirty() with locked page\n\nThe dirtying of page and set_page_dirty() can be moved into the page lock.\n\n- In shmem_write_end(), the page was dirtied while the page lock was held,\n  but it\u0027s being marked dirty just after dropping the page lock.\n- In shmem_symlink(), both dirtying and marking can be moved into page lock.\n\nIt\u0027s valuable for the hwpoison code to know whether one bad page can be dropped\nwithout losing data. It mainly judges by testing the PG_dirty bit after taking\nthe page lock. So it becomes important that the dirtying of page and the\nmarking of dirtiness are both done inside the page lock. Which is a common\npractice, but sadly not a rule.\n\nThe noticeable exceptions are\n- mapped pages\n- pages with buffer_heads\nThe above pages could go dirty at any time. Fortunately the hwpoison will\nunmap the page and release the buffer_heads beforehand anyway.\n\nMany other types of pages (eg. metadata pages) can also be dirtied at will by\ntheir owners, the hwpoison code cannot do meaningful things to them anyway.\nOnly the dirtiness of pagecache pages owned by regular files are interested.\n\nv2: AK: Add comment about set_page_dirty rules (suggested by Peter Zijlstra)\n\nAcked-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "257187362123f15d9d1e09918cf87cebbea4e786",
      "tree": "92b768ad3f2afeda13a2acadc6d5766090ebcc60",
      "parents": [
        "83f786680aec8d030184f7ced1a0a3dd8ac81764"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:13 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:13 2009 +0200"
      },
      "message": "HWPOISON: Define a new error_remove_page address space op for async truncation\n\nTruncating metadata pages is not safe right now before\nwe haven\u0027t audited all file systems.\n\nTo enable truncation only for data address space define\na new address_space callback error_remove_page.\n\nThis is used for memory_failure.c memory error handling.\n\nThis can be then set to truncate_inode_page()\n\nThis patch just defines the new operation and adds documentation.\n\nCallers and users come in followon patches.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "83f786680aec8d030184f7ced1a0a3dd8ac81764",
      "tree": "c519509ce47883936bc4759343b1b3a01749153f",
      "parents": [
        "750b4987b0cd4d408e54cb83a80a067cbe690feb"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Sep 16 11:50:13 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:13 2009 +0200"
      },
      "message": "HWPOISON: Add invalidate_inode_page\n\nAdd a simple way to invalidate a single page\nThis is just a refactoring of the truncate.c code.\nOriginally from Fengguang, modified by Andi Kleen.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "750b4987b0cd4d408e54cb83a80a067cbe690feb",
      "tree": "1372d0f64da3575eb93bac284c73e548e23b9ea6",
      "parents": [
        "2a7684a23e9c263c2a1e8b2c0027ad1836a0f9df"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Sep 16 11:50:12 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:12 2009 +0200"
      },
      "message": "HWPOISON: Refactor truncate to allow direct truncating of page v2\n\nExtract out truncate_inode_page() out of the truncate path so that\nit can be used by memory-failure.c\n\n[AK: description, headers, fix typos]\nv2: Some white space changes from Fengguang Wu\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "2a7684a23e9c263c2a1e8b2c0027ad1836a0f9df",
      "tree": "b9769d2f391d76d9c84c687aa771d36cc539025e",
      "parents": [
        "888b9f7c58ebe8303bad817cd554df887a683957"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Sep 16 11:50:12 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:12 2009 +0200"
      },
      "message": "HWPOISON: check and isolate corrupted free pages v2\n\nIf memory corruption hits the free buddy pages, we can safely ignore them.\nNo one will access them until page allocation time, then prep_new_page()\nwill automatically check and isolate PG_hwpoison page for us (for 0-order\nallocation).\n\nThis patch expands prep_new_page() to check every component page in a high\norder page allocation, in order to completely stop PG_hwpoison pages from\nbeing recirculated.\n\nNote that the common case -- only allocating a single page, doesn\u0027t\ndo any more work than before. Allocating \u003e order 0 does a bit more work,\nbut that\u0027s relatively uncommon.\n\nThis simple implementation may drop some innocent neighbor pages, hopefully\nit is not a big problem because the event should be rare enough.\n\nThis patch adds some runtime costs to high order page users.\n\n[AK: Improved description]\n\nv2: Andi Kleen:\nPort to -mm code\nMove check into separate function.\nDon\u0027t dump stack in bad_pages for hwpoisoned pages.\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "888b9f7c58ebe8303bad817cd554df887a683957",
      "tree": "ebd01e55f5a6631a463fbb863adfbe9dcf49ad7d",
      "parents": [
        "14fa31b89c5ae79e4131da41761378a6df674352"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:11 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:11 2009 +0200"
      },
      "message": "HWPOISON: Handle hardware poisoned pages in try_to_unmap\n\nWhen a page has the poison bit set replace the PTE with a poison entry.\nThis causes the right error handling to be done later when a process runs\ninto it.\n\nv2: add a new flag to not do that (needed for the memory-failure handler\nlater) (Fengguang)\nv3: remove unnecessary is_migration_entry() test (Fengguang, Minchan)\n\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nReviewed-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "14fa31b89c5ae79e4131da41761378a6df674352",
      "tree": "c6c79e89e0aa0b2efeaf657d4715250a406ab699",
      "parents": [
        "a6e04aa92965565968573a220a35b4e907385697"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:10 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:10 2009 +0200"
      },
      "message": "HWPOISON: Use bitmask/action code for try_to_unmap behaviour\n\ntry_to_unmap currently has multiple modi (migration, munlock, normal unmap)\nwhich are selected by magic flag variables. The logic is not very straight\nforward, because each of these flag change multiple behaviours (e.g.\nmigration turns off aging, not only sets up migration ptes etc.)\nAlso the different flags interact in magic ways.\n\nA later patch in this series adds another mode to try_to_unmap, so\nthis becomes quickly unmanageable.\n\nReplace the different flags with a action code (migration, munlock, munmap)\nand some additional flags as modifiers (ignore mlock, ignore aging).\nThis makes the logic more straight forward and allows easier extension\nto new behaviours. Change all the caller to declare what they want to\ndo.\n\nThis patch is supposed to be a nop in behaviour. If anyone can prove\nit is not that would be a bug.\n\nCc: Lee.Schermerhorn@hp.com\nCc: npiggin@suse.de\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "a6e04aa92965565968573a220a35b4e907385697",
      "tree": "a8f49a97247a0ee14a1442ea2ee4719001785fc7",
      "parents": [
        "a3b947eacfe783df4ca0fe53ef8a764eebc2d0d6"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:09 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:09 2009 +0200"
      },
      "message": "HWPOISON: x86: Add VM_FAULT_HWPOISON handling to x86 page fault handler v2\n\nAdd VM_FAULT_HWPOISON handling to the x86 page fault handler. This is\nvery similar to VM_FAULT_OOM, the only difference is that a different\nsi_code is passed to user space and the new addr_lsb field is initialized.\n\nv2: Make the printk more verbose/unique\n\nCc: x86@kernel.org\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "a3b947eacfe783df4ca0fe53ef8a764eebc2d0d6",
      "tree": "abd4d972730838708cc9e81ccd8a24b99c0db2f3",
      "parents": [
        "d1737fdbec7f90edc52dd0c5c3767457f28e78d8"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:08 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:08 2009 +0200"
      },
      "message": "HWPOISON: Add poison check to page fault handling\n\nBail out early when hardware poisoned pages are found in page fault handling.\nSince they are poisoned they should not be mapped freshly into processes,\nbecause that would cause another (potentially deadly) machine check\n\nThis is generally handled in the same way as OOM, just a different\nerror code is returned to the architecture code.\n\nv2: Do a page unlock if needed (Fengguang Wu)\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "d1737fdbec7f90edc52dd0c5c3767457f28e78d8",
      "tree": "8699aabdff713a70665a9f60106ce21012376733",
      "parents": [
        "ad5fa913991e9e0f122b021e882b0d50051fbdbc"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:06 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:06 2009 +0200"
      },
      "message": "HWPOISON: Add basic support for poisoned pages in fault handler v3\n\n- Add a new VM_FAULT_HWPOISON error code to handle_mm_fault. Right now\narchitectures have to explicitely enable poison page support, so\nthis is forward compatible to all architectures. They only need\nto add it when they enable poison page support.\n- Add poison page handling in swap in fault code\n\nv2: Add missing delayacct_clear_flag (Hidehiro Kawai)\nv3: Really use delayacct_clear_flag (Hidehiro Kawai)\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "ad5fa913991e9e0f122b021e882b0d50051fbdbc",
      "tree": "2739314fec4f2f03d8badbc9d95442d1f9c39427",
      "parents": [
        "a7420aa54dbf699a5a05feba3c859b6baaa3938c"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:06 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:06 2009 +0200"
      },
      "message": "HWPOISON: Add new SIGBUS error codes for hardware poison signals\n\nAdd new SIGBUS codes for reporting machine checks as signals. When\nthe hardware detects an uncorrected ECC error it can trigger these\nsignals.\n\nThis is needed for telling KVM\u0027s qemu about machine checks that happen to\nguests, so that it can inject them, but might be also useful for other programs.\nI find it useful in my test programs.\n\nThis patch merely defines the new types.\n\n- Define two new si_codes for SIGBUS.  BUS_MCEERR_AO and BUS_MCEERR_AR\n* BUS_MCEERR_AO is for \"Action Optional\" machine checks, which means that some\ncorruption has been detected in the background, but nothing has been consumed\nso far. The program can ignore those if it wants (but most programs would\nalready get killed)\n* BUS_MCEERR_AR is for \"Action Required\" machine checks. This happens\nwhen corrupted data is consumed or the application ran into an area\nwhich has been known to be corrupted earlier. These require immediate\naction and cannot just returned to. Most programs would kill themselves.\n- They report the address of the corruption in the user address space\nin si_addr.\n- Define a new si_addr_lsb field that reports the extent of the corruption\nto user space. That\u0027s currently always a (small) page. The user application\ncannot tell where in this page the corruption happened.\n\nAK: I plan to write a man page update before anyone asks.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "a7420aa54dbf699a5a05feba3c859b6baaa3938c",
      "tree": "97119d311149c902b3bd3a6157e70fb79c876462",
      "parents": [
        "10be22dfe1e6ad978269dc275147e0ed049187bb"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:05 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:05 2009 +0200"
      },
      "message": "HWPOISON: Add support for poison swap entries v2\n\nMemory migration uses special swap entry types to trigger special actions on\npage faults. Extend this mechanism to also support poisoned swap entries, to\ntrigger poison handling on page faults. This allows follow-on patches to\nprevent processes from faulting in poisoned pages again.\n\nv2: Fix overflow in MAX_SWAPFILES (Fengguang Wu)\nv3: Better overflow fix (Hidehiro Kawai)\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "10be22dfe1e6ad978269dc275147e0ed049187bb",
      "tree": "d00418a59d9de0aadd092559d92f0d348d87a4b1",
      "parents": [
        "d466f2fcb32cd97fd586bfa33f5dba3ac78aadb0"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:04 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:04 2009 +0200"
      },
      "message": "HWPOISON: Export some rmap vma locking to outside world\n\nNeeded for later patch that walks rmap entries on its own.\n\nThis used to be very frowned upon, but memory-failure.c does\nsome rather specialized rmap walking and rmap has been stable\nfor quite some time, so I think it\u0027s ok now to export it.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "d466f2fcb32cd97fd586bfa33f5dba3ac78aadb0",
      "tree": "3e8d7f89f08e6b2340adebb4ebdbfb7329902607",
      "parents": [
        "0cb583fd2862f19ea88b02eb307d11c09e51e2f8"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Sep 16 11:50:03 2009 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 16 11:50:03 2009 +0200"
      },
      "message": "HWPOISON: Add page flag for poisoned pages\n\nHardware poisoned pages need special handling in the VM and shouldn\u0027t be\ntouched again. This requires a new page flag. Define it here.\n\nThe page flags wars seem to be over, so it shouldn\u0027t be a problem\nto get a new one.\n\nv2: Add TestSetHWPoison (suggested by Johannes Weiner)\n\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "0cb583fd2862f19ea88b02eb307d11c09e51e2f8",
      "tree": "740769ab145ed72af4d00ea8e4d55ebcef337fce",
      "parents": [
        "723e9db7a46e328527cc3da2b478b831184fe828",
        "a2d10568fd3965fffeb29a3a6f29966dd3801727"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 10:01:16 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 10:01:16 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-next-2.6:\n  ide: fixup for fujitsu disk\n  ide: convert to -\u003eproc_fops\n  at91_ide: remove headers specific for at91sam9263\n  IDE: palm_bk3710: convert clock usage after clkdev conversion\n  ide: fix races in handling of user-space SET XFER commands\n  ide: allow ide_dev_read_id() to be called from the IRQ context\n  ide: ide-taskfile.c fix style problems\n  drivers/ide/ide-cd.c: Use DIV_ROUND_CLOSEST\n  ide-tape: fix handling of postponed rqs\n  ide-tape: convert to ide_debug_log macro\n  ide-tape: fix debug call\n  ide: Fix annoying warning in ide_pio_bytes().\n  IDE: Save a call to PageHighMem()\n"
    },
    {
      "commit": "723e9db7a46e328527cc3da2b478b831184fe828",
      "tree": "cdeda255633057dcb4c84097bed27b2bbf76970f",
      "parents": [
        "ada3fa15057205b7d3f727bba5cd26b5912e350f",
        "d331d8305cba713605854aab63a000fb892353a7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:51:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:51:09 2009 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (134 commits)\n  powerpc/nvram: Enable use Generic NVRAM driver for different size chips\n  powerpc/iseries: Fix oops reading from /proc/iSeries/mf/*/cmdline\n  powerpc/ps3: Workaround for flash memory I/O error\n  powerpc/booke: Don\u0027t set DABR on 64-bit BookE, use DAC1 instead\n  powerpc/perf_counters: Reduce stack usage of power_check_constraints\n  powerpc: Fix bug where perf_counters breaks oprofile\n  powerpc/85xx: Fix SMP compile error and allow NULL for smp_ops\n  powerpc/irq: Improve nanodoc\n  powerpc: Fix some late PowerMac G5 with PCIe ATI graphics\n  powerpc/fsl-booke: Use HW PTE format if CONFIG_PTE_64BIT\n  powerpc/book3e: Add missing page sizes\n  powerpc/pseries: Fix to handle slb resize across migration\n  powerpc/powermac: Thermal control turns system off too eagerly\n  powerpc/pci: Merge ppc32 and ppc64 versions of phb_scan()\n  powerpc/405ex: support cuImage via included dtb\n  powerpc/405ex: provide necessary fixup function to support cuImage\n  powerpc/40x: Add support for the ESTeem 195E (PPC405EP) SBC\n  powerpc/44x: Add Eiger AMCC (AppliedMicro) PPC460SX evaluation board support.\n  powerpc/44x: Update Arches defconfig\n  powerpc/44x: Update Arches dts\n  ...\n\nFix up conflicts in drivers/char/agp/uninorth-agp.c\n"
    },
    {
      "commit": "ada3fa15057205b7d3f727bba5cd26b5912e350f",
      "tree": "60962fc9e4021b92f484d1a58e72cd3906d4f3db",
      "parents": [
        "2f82af08fcc7dc01a7e98a49a5995a77e32a2925",
        "5579fd7e6aed8860ea0c8e3f11897493153b10ad"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:39:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:39:44 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (46 commits)\n  powerpc64: convert to dynamic percpu allocator\n  sparc64: use embedding percpu first chunk allocator\n  percpu: kill lpage first chunk allocator\n  x86,percpu: use embedding for 64bit NUMA and page for 32bit NUMA\n  percpu: update embedding first chunk allocator to handle sparse units\n  percpu: use group information to allocate vmap areas sparsely\n  vmalloc: implement pcpu_get_vm_areas()\n  vmalloc: separate out insert_vmalloc_vm()\n  percpu: add chunk-\u003ebase_addr\n  percpu: add pcpu_unit_offsets[]\n  percpu: introduce pcpu_alloc_info and pcpu_group_info\n  percpu: move pcpu_lpage_build_unit_map() and pcpul_lpage_dump_cfg() upward\n  percpu: add @align to pcpu_fc_alloc_fn_t\n  percpu: make @dyn_size mandatory for pcpu_setup_first_chunk()\n  percpu: drop @static_size from first chunk allocators\n  percpu: generalize first chunk allocator selection\n  percpu: build first chunk allocators selectively\n  percpu: rename 4k first chunk allocator to page\n  percpu: improve boot messages\n  percpu: fix pcpu_reclaim() locking\n  ...\n\nFix trivial conflict as by Tejun Heo in kernel/sched.c\n"
    },
    {
      "commit": "2f82af08fcc7dc01a7e98a49a5995a77e32a2925",
      "tree": "d505fe5936881b137b82b59360646a6988e506ba",
      "parents": [
        "f199fd990639f93d07d8e104b0a66aabaf01d67d"
      ],
      "author": {
        "name": "Nicolas Pitre",
        "email": "nico@fluxnic.net",
        "time": "Mon Sep 14 03:25:28 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:37:12 2009 -0700"
      },
      "message": "Nicolas Pitre has a new email address\n\nDue to problems at cam.org, my nico@cam.org email address is no longer\nvalid.  FRom now on, nico@fluxnic.net should be used instead.\n\nSigned-off-by: Nicolas Pitre \u003cnico@fluxnic.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f199fd990639f93d07d8e104b0a66aabaf01d67d",
      "tree": "268fe35b46db1e1c28443c567e445e2ffdc61e39",
      "parents": [
        "043fe50f8085c12651c96f04576eae4d8a22f3d8",
        "b3e62e35058fc744ac794611f4e79bcd1c5a4b83"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:34:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:34:27 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf_counter: Fix buffer overflow in perf_copy_attr()\n"
    },
    {
      "commit": "043fe50f8085c12651c96f04576eae4d8a22f3d8",
      "tree": "214b4f985ce7d3b1a4961620e2c2f4f5f06e1c35",
      "parents": [
        "227423904c709a8e60245c97081bbeb4fb500655",
        "ea47689e74a1637fac4f5fc44890f3662c976849"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:22:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:22:18 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (213 commits)\n  V4L/DVB (12720): em28xx-cards: Add vendor/product id for Kworld DVD Maker 2\n  V4L/DVB (12713): em28xx: Cleanups at ir_i2c handler\n  V4L/DVB (12712): em28xx: properly load ir-kbd-i2c when needed\n  V4L/DVB (12701): saa7134: ir-kbd-i2c init data needs a persistent object\n  V4L/DVB (12699): cx18: ir-kbd-i2c initialization data should point to a persistent object\n  V4L/DVB (12698): em28xx: ir-kbd-i2c init data needs a persistent object\n  V4L/DVB (12707): gspca - sn9c20x: Add SXGA support to MT9M111\n  V4L/DVB (12706): gspca - sn9c20x: disable exposure/gain controls for MT9M111 sensors.\n  V4L/DVB (12705): gspca - sn9c20x: Add SXGA support to SOI968\n  V4L/DVB (12703): gspca - sn9c20x: Reduces size of object\n  V4L/DVB (12704): gspca - sn9c20x: Fix exposure on SOI968 sensors\n  V4L/DVB (12696): gspca - sonixj / sn9c102: Two drivers for 0c45:60fc and 0c45:613e.\n  V4L/DVB (12695): gspca - vc032x: Do the LED work with the sensor hv7131r.\n  V4L/DVB (12694): gspca - vc032x: Change the start exchanges of the sensor hv7131r.\n  V4L/DVB (12693): gspca - sunplus: The brightness is signed.\n  V4L/DVB (12692): gspca - sunplus: Optimize code.\n  V4L/DVB (12691): gspca - sonixj: Don\u0027t use mdelay().\n  V4L/DVB (12690): gspca - pac7311: Webcam 06f8:3009 added.\n  V4L/DVB (12686): dvb-core: check supported QAM modulations\n  V4L/DVB (12685): dvb-core: check fe-\u003eops.set_frontend return value\n  ...\n"
    },
    {
      "commit": "227423904c709a8e60245c97081bbeb4fb500655",
      "tree": "97db1b8df1e4518334aea2fdf60363e0a691eb1e",
      "parents": [
        "1aaf2e59135fd67321f47c11c64a54aac27014e9",
        "fa526d0d641b5365676a1fb821ce359e217c9b85"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:19:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:19:38 2009 -0700"
      },
      "message": "Merge branch \u0027x86-pat-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-pat-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, pat: Fix cacheflush address in change_page_attr_set_clr()\n  mm: remove !NUMA condition from PAGEFLAGS_EXTENDED condition set\n  x86: Fix earlyprintk\u003ddbgp for machines without NX\n  x86, pat: Sanity check remap_pfn_range for RAM region\n  x86, pat: Lookup the protection from memtype list on vm_insert_pfn()\n  x86, pat: Add lookup_memtype to get the current memtype of a paddr\n  x86, pat: Use page flags to track memtypes of RAM pages\n  x86, pat: Generalize the use of page flag PG_uncached\n  x86, pat: Add rbtree to do quick lookup in memtype tracking\n  x86, pat: Add PAT reserve free to io_mapping* APIs\n  x86, pat: New i/f for driver to request memtype for IO regions\n  x86, pat: ioremap to follow same PAT restrictions as other PAT users\n  x86, pat: Keep identity maps consistent with mmaps even when pat_disabled\n  x86, mtrr: make mtrr_aps_delayed_init static bool\n  x86, pat/mtrr: Rendezvous all the cpus for MTRR/PAT init\n  generic-ipi: Allow cpus not yet online to call smp_call_function with irqs disabled\n  x86: Fix an incorrect argument of reserve_bootmem()\n  x86: Fix system crash when loading with \"reservetop\" parameter\n"
    },
    {
      "commit": "1aaf2e59135fd67321f47c11c64a54aac27014e9",
      "tree": "633ffa4db3ac6e8d566cba549510561ffd61d8f4",
      "parents": [
        "66a4fe0cb80a9fde8cb173289afb863fd279466a",
        "936e894a976dd3b0f07f1f6f43c17b77b7e6146d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:19:20 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:19:20 2009 -0700"
      },
      "message": "Merge branch \u0027x86-txt-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-txt-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, intel_txt: clean up the impact on generic code, unbreak non-x86\n  x86, intel_txt: Handle ACPI_SLEEP without X86_TRAMPOLINE\n  x86, intel_txt: Fix typos in Kconfig help\n  x86, intel_txt: Factor out the code for S3 setup\n  x86, intel_txt: tboot.c needs \u003casm/fixmap.h\u003e\n  intel_txt: Force IOMMU on for Intel TXT launch\n  x86, intel_txt: Intel TXT Sx shutdown support\n  x86, intel_txt: Intel TXT reboot/halt shutdown support\n  x86, intel_txt: Intel TXT boot support\n"
    },
    {
      "commit": "66a4fe0cb80a9fde8cb173289afb863fd279466a",
      "tree": "e1180ba7cbd123fb2f0bf510a955704725465776",
      "parents": [
        "18240904960a39e582ced8ba8ececb10b8c22dd3",
        "121264827656f5f06328b17983c796af17dc5949"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:18:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:18:07 2009 -0700"
      },
      "message": "Merge branch \u0027agp-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6\n\n* \u0027agp-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6:\n  agp/intel: remove restore in resume\n  agp: fix uninorth build\n  intel-agp: Set dma mask for i915\n  agp: kill phys_to_gart() and gart_to_phys()\n  intel-agp: fix sglist allocation to avoid vmalloc()\n  intel-agp: Move repeated sglist free into separate function\n  agp: Switch agp_{un,}map_page() to take struct page * argument\n  agp: tidy up handling of scratch pages w.r.t. DMA API\n  intel_agp: Use PCI DMA API correctly on chipsets new enough to have IOMMU\n  agp: Add generic support for graphics dma remapping\n  agp: Switch mask_memory() method to take address argument again, not page\n"
    },
    {
      "commit": "a2d10568fd3965fffeb29a3a6f29966dd3801727",
      "tree": "5f3d4d22f2892f069b5d8ee99fb4d62616d51689",
      "parents": [
        "6d703a81ad5fdd102334751ddacb053ecc6ff046"
      ],
      "author": {
        "name": "Wu Zhangjin",
        "email": "wuzhangjin@gmail.com",
        "time": "Tue Sep 15 01:36:25 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 15 01:36:25 2009 -0700"
      },
      "message": "ide: fixup for fujitsu disk\n\nThis patch will fix the following problem on Yeeloong netbook with\nfujitsu disk.\n\nirq 14: nobody cared (try booting with the \"irqpoll\" option)\nCall Trace:\n[\u003cffffffff8020d438\u003e] dump_stack+0x8/0x40\n[\u003cffffffff8027ec64\u003e] __report_bad_irq+0x58/0xe4\n[\u003cffffffff8027ee6c\u003e] note_interrupt+0x17c/0x23c\n[\u003cffffffff8027f9b8\u003e] handle_level_irq+0xcc/0x134\n[\u003cffffffff802125b0\u003e] mach_irq_dispatch+0xb8/0x1e0\n[\u003cffffffff8020041c\u003e] ret_from_irq+0x0/0x4\n[\u003cffffffff8029e678\u003e] free_hot_cold_page+0x224/0x2a0\n[\u003cffffffff8026f794\u003e] swsusp_free+0xb0/0x14c\n[\u003cffffffff8026ec08\u003e] hibernate+0x198/0x218\n[\u003cffffffff8026cfa8\u003e] state_store+0x90/0x138\n[\u003cffffffff8032b5a4\u003e] sysfs_write_file+0x130/0x194\n[\u003cffffffff802c94fc\u003e] vfs_write+0xb8/0x180\n[\u003cffffffff802c96b8\u003e] SyS_write+0x50/0x98\n[\u003cffffffff80203fd8\u003e] handle_sys+0x158/0x174\n\nhandlers:\n[\u003cffffffff80429670\u003e] (ide_intr+0x0/0x300)\nDisabling IRQ #14\n\nReferences:\n\n1. commit 1fde02e7146d4a1bab80fd1506f9018fe71e8521 of\ngit://dev.lemote.com/linux_loongson.git\n2. 8bc1e5aa06a2a9a425c4a6795fc564cba1521487 (ide: respect quirk_drives[]\nlist on all controllers)\n\nSigned-off-by: Yan Hua \u003cyanh@lemote.com\u003e\nSigned-off-by: Wu Zhangjin \u003cwuzhangjin@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b3e62e35058fc744ac794611f4e79bcd1c5a4b83",
      "tree": "797092fc19f9af8b6e5242c1987137dd362f51bc",
      "parents": [
        "74fca6a42863ffacaf7ba6f1936a9f228950f657"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Tue Sep 15 14:44:36 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 15 09:53:31 2009 +0200"
      },
      "message": "perf_counter: Fix buffer overflow in perf_copy_attr()\n\nIf we pass a big size data over perf_counter_open() syscall,\nthe kernel will copy this data to a small buffer, it will\ncause kernel crash.\n\nThis bug makes the kernel unsafe and non-root local user can\ntrigger it.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \u003cstable@kernel.org\u003e\nLKML-Reference: \u003c4AAF37D4.5010706@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "18240904960a39e582ced8ba8ececb10b8c22dd3",
      "tree": "90cbad5533c17657969acb97a0371e41923f7f93",
      "parents": [
        "f86054c24565d09d1997f03192761dabf6b8a9c9",
        "8a478905adbb2e09a59644e76f7fe7e0ab644204"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 20:07:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 20:07:31 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  SELinux: inline selinux_is_enabled in !CONFIG_SECURITY_SELINUX\n  KEYS: Fix garbage collector\n  KEYS: Unlock tasklist when exiting early from keyctl_session_to_parent\n  CRED: Allow put_cred() to cope with a NULL groups list\n  SELinux: flush the avc before disabling SELinux\n  SELinux: seperate avc_cache flushing\n  Creds: creds-\u003esecurity can be NULL is selinux is disabled\n"
    },
    {
      "commit": "f86054c24565d09d1997f03192761dabf6b8a9c9",
      "tree": "64a48fd9d03b39932c768ea28eb8edf6cecbeaf1",
      "parents": [
        "c91d7d54ea9e75ec18c733969ba16dd7ab94fc99",
        "33f82d141c897f39cd8bce592d88cb3c5af58342"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 20:03:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 20:03:54 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (23 commits)\n  at_hdmac: Rework suspend_late()/resume_early()\n  PM: Reset transition_started at dpm_resume_noirq\n  PM: Update kerneldoc comments in drivers/base/power/main.c\n  PM: Add convenience macro to make switching to dev_pm_ops less error-prone\n  hp-wmi: Switch driver to dev_pm_ops\n  floppy: Switch driver to dev_pm_ops\n  PM: Trivial fixes\n  PM / Hibernate / Memory hotplug: Always use for_each_populated_zone()\n  PM/Hibernate: Do not try to allocate too much memory too hard (rev. 2)\n  PM/Hibernate: Do not release preallocated memory unnecessarily (rev. 2)\n  PM/Hibernate: Rework shrinking of memory\n  PM: Fix typo in label name s/Platofrm_finish/Platform_finish/\n  PM: Run-time PM platform device bus support\n  PM: Introduce core framework for run-time PM of I/O devices (rev. 17)\n  Driver Core: Make PM operations a const pointer\n  PM: Remove platform device suspend_late()/resume_early() V2\n  USB: Rework musb suspend()/resume_early()\n  I2C: Rework i2c-s3c2410 suspend_late()/resume() V2\n  I2C: Rework i2c-pxa suspend_late()/resume_early()\n  DMA: Rework txx9dmac suspend_late()/resume_early()\n  ...\n\nFix trivial conflict in drivers/base/platform.c (due to same\nconstification patch being merged in both sides, along with some other\nPM work in the PM branch)\n"
    },
    {
      "commit": "c91d7d54ea9e75ec18c733969ba16dd7ab94fc99",
      "tree": "5b93c6931adf9908f9f207eaa7a0f91d8207ad08",
      "parents": [
        "133309a89e7430f907ebe85e78906ee12c311727",
        "48586218b6515b9bd70694e3cd8c901a6a6ee69c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 19:59:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 19:59:37 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-kconfig\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-kconfig:\n  kconfig: add missing dependency of conf to localyesconfig\n  kconfig: test if a .config already exists\n  kconfig: make local .config default for streamline_config\n  kconfig: test for /boot/config-uname after /proc/config.gz in localconfig\n  kconfig: unset IKCONFIG_PROC and clean up nesting\n  kconfig: search for a config to base the local(mod|yes)config on\n  kconfig: keep config.gz around even if CONFIG_IKCONFIG_PROC is not set\n  kconfig: have extract-ikconfig read ELF files\n  kconfig: add check if end exists in extract-ikconfig\n  kconfig: enable CONFIG_IKCONFIG from streamline_config.pl\n  kconfig: do not warn about modules built in\n  kconfig: streamline_config.pl do not stop with no depends\n  kconfig: add make localyesconfig option\n  kconfig: make localmodconfig to run streamline_config.pl\n  kconfig: add streamline_config.pl to scripts\n"
    },
    {
      "commit": "ea47689e74a1637fac4f5fc44890f3662c976849",
      "tree": "98d6a93c2da0bb5f9ae06f53eab22ce73e74d5da",
      "parents": [
        "7e8e16ca39801279697c6cb6195710ba7653bfc2"
      ],
      "author": {
        "name": "Douglas Schilling Landgraf",
        "email": "dougsland@redhat.com",
        "time": "Sun Sep 06 18:41:59 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Mon Sep 14 22:39:19 2009 -0300"
      },
      "message": "V4L/DVB (12720): em28xx-cards: Add vendor/product id for Kworld DVD Maker 2\n\nAdded Kworld DVD Maker 2\nThanks to C Western \u003cl@c-m-w.me.uk\u003e for reporting this board.\n\nSigned-off-by: Douglas Schilling Landgraf \u003cdougsland@redhat.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "8a478905adbb2e09a59644e76f7fe7e0ab644204",
      "tree": "876eef3ca926a6b7d56d7fd2065039cc45a796bc",
      "parents": [
        "c08ef808ef24df32e25fbd949fe5310172f3c408"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Sep 14 20:59:48 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Sep 15 11:37:33 2009 +1000"
      },
      "message": "SELinux: inline selinux_is_enabled in !CONFIG_SECURITY_SELINUX\n\nWithout this patch building a kernel emits millions of warning like:\n\ninclude/linux/selinux.h:92: warning: ?selinux_is_enabled? defined but not used\n\nWhen it is build without CONFIG_SECURITY_SELINUX.  This is harmless, but\nthe function should be inlined, so it gets compiled out.\n\nReported-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "5579fd7e6aed8860ea0c8e3f11897493153b10ad",
      "tree": "8f797ccd0f1a2c88f1605ae9e90b3ac17485de27",
      "parents": [
        "04a13c7c632e1fe04a5f6e6c83565d2559e37598",
        "c2a7e818019f20a5cf7fb26a6eb59e212e6c0cd8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Sep 15 09:57:19 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Sep 15 09:57:19 2009 +0900"
      },
      "message": "Merge branch \u0027for-next\u0027 into for-linus\n\n* pcpu_chunk_page_occupied() doesn\u0027t exist in for-next.\n* pcpu_chunk_addr_search() updated to use raw_smp_processor_id().\n\nConflicts:\n\tmm/percpu.c\n"
    },
    {
      "commit": "133309a89e7430f907ebe85e78906ee12c311727",
      "tree": "daa96e6e82b63c0ef1538dcbb455d13595a1c83d",
      "parents": [
        "5489375d481c8456c8259b48e107d03b05309d1d",
        "fc8e1ead9314cf0e0f1922e661428b93d3a50d88"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:56:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:56:51 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (52 commits)\n  Input: bcm5974 - silence uninitialized variables warnings\n  Input: wistron_btns - add keymap for AOpen 1557\n  Input: psmouse - use boolean type\n  Input: i8042 - use platform_driver_probe\n  Input: i8042 - use boolean type where it makes sense\n  Input: i8042 - try disabling and re-enabling AUX port at close\n  Input: pxa27x_keypad - allow modifying keymap from userspace\n  Input: sunkbd - fix formatting\n  Input: i8042 - bypass AUX IRQ delivery test on laptops\n  Input: wacom_w8001 - simplify querying logic\n  Input: atkbd - allow setting force-release bitmap via sysfs\n  Input: w90p910_keypad - move a dereference below a NULL test\n  Input: add twl4030_keypad driver\n  Input: matrix-keypad - add function to build device keymap\n  Input: tosakbd - fix cleaning up KEY_STROBEs after error\n  Input: joydev - validate axis/button maps before clobbering current ones\n  Input: xpad - add USB ID for the drumkit controller from Rock Band\n  Input: w90p910_keypad - rename driver name to match platform\n  Input: add new driver for Sentelic Finger Sensing Pad\n  Input: psmouse - allow defining read-only attributes\n  ...\n"
    },
    {
      "commit": "5489375d481c8456c8259b48e107d03b05309d1d",
      "tree": "2bb3c9fe3b68e135444d1e5a47fdf3a1b7adf284",
      "parents": [
        "355bbd8cb82e60a592f6cd86ce6dbe5677615cf4",
        "8123e8f7c89a07cb22279b15bf47cdee0205d4a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:55:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:55:53 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:\n  HID: completely remove apple mightymouse from blacklist\n  HID: support larger reports than 64 bytes in hiddev\n  HID: local function should be static\n  HID: ignore Philips IEEE802.15.4 RF Dongle\n  HID: ignore all recent SoundGraph iMON devices\n  HID: fix memory leak on error patch in debug code\n  HID: fix overrun in quirks initialization\n  HID: Drop NULL test on list_entry result\n  HID: driver for Twinhan USB 6253:0100 remote control\n  HID: adding __init/__exit macros to module init/exit functions\n  HID: add rumble support for Thrustmaster Dual Trigger 3-in-1\n  HID: ntrig tool separation and pen usages\n  HID: Avoid double spin_lock_init on usbhid-\u003elock\n  HID: add force feedback support for Logitech WingMan Formula Force GP\n  HID: Support new variants of Samsung USB IR receiver (0419:0001)\n  HID: fix memory leak on error path in debug code\n  HID: fix debugfs build with !CONFIG_DEBUG_FS\n  HID: use debugfs for events/reports dumping\n  HID: use debugfs for report dumping descriptor\n"
    },
    {
      "commit": "355bbd8cb82e60a592f6cd86ce6dbe5677615cf4",
      "tree": "23678e50ad4687f1656edc972388ee8014e7b89d",
      "parents": [
        "39695224bd84dc4be29abad93a0ec232a16fc519",
        "746cd1e7e4a555ddaee53b19a46e05c9c61eaf09"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:55:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:55:15 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.32\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.32\u0027 of git://git.kernel.dk/linux-2.6-block: (29 commits)\n  block: use blkdev_issue_discard in blk_ioctl_discard\n  Make DISCARD_BARRIER and DISCARD_NOBARRIER writes instead of reads\n  block: don\u0027t assume device has a request list backing in nr_requests store\n  block: Optimal I/O limit wrapper\n  cfq: choose a new next_req when a request is dispatched\n  Seperate read and write statistics of in_flight requests\n  aoe: end barrier bios with EOPNOTSUPP\n  block: trace bio queueing trial only when it occurs\n  block: enable rq CPU completion affinity by default\n  cfq: fix the log message after dispatched a request\n  block: use printk_once\n  cciss: memory leak in cciss_init_one()\n  splice: update mtime and atime on files\n  block: make blk_iopoll_prep_sched() follow normal 0/1 return convention\n  cfq-iosched: get rid of must_alloc flag\n  block: use interrupts disabled version of raise_softirq_irqoff()\n  block: fix comment in blk-iopoll.c\n  block: adjust default budget for blk-iopoll\n  block: fix long lines in block/blk-iopoll.c\n  block: add blk-iopoll, a NAPI like approach for block devices\n  ...\n"
    },
    {
      "commit": "39695224bd84dc4be29abad93a0ec232a16fc519",
      "tree": "2bfa5cb50788a4c8be9f2e9f4412e47a565f4508",
      "parents": [
        "a9bbd210a44102cc50b30a5f3d111dbf5f2f9cd4",
        "ea038f63ac52439e7816295fa6064fe95e6c1f51"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:53:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:53:36 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (209 commits)\n  [SCSI] fix oops during scsi scanning\n  [SCSI] libsrp: fix memory leak in srp_ring_free()\n  [SCSI] libiscsi, bnx2i: make bound ep check common\n  [SCSI] libiscsi: add completion function for drivers that do not need pdu processing\n  [SCSI] scsi_dh_rdac: changes for rdac debug logging\n  [SCSI] scsi_dh_rdac: changes to collect the rdac debug information during the initialization\n  [SCSI] scsi_dh_rdac: move the init code from rdac_activate to rdac_bus_attach\n  [SCSI] sg: fix oops in the error path in sg_build_indirect()\n  [SCSI] mptsas : Bump version to 3.04.12\n  [SCSI] mptsas : FW event thread and scsi mid layer deadlock in SYNCHRONIZE CACHE command\n  [SCSI] mptsas : Send DID_NO_CONNECT for pending IOs of removed device\n  [SCSI] mptsas : PAE Kernel more than 4 GB kernel panic\n  [SCSI] mptsas : NULL pointer on big endian systems causing Expander not to tear off\n  [SCSI] mptsas : Sanity check for phyinfo is added\n  [SCSI] scsi_dh_rdac: Add support for Sun StorageTek ST2500, ST2510 and ST2530\n  [SCSI] pmcraid: PMC-Sierra MaxRAID driver to support 6Gb/s SAS RAID controller\n  [SCSI] qla2xxx: Update version number to 8.03.01-k6.\n  [SCSI] qla2xxx: Properly delete rports attached to a vport.\n  [SCSI] qla2xxx: Correct various NPIV issues.\n  [SCSI] qla2xxx: Correct qla2x00_eh_wait_on_command() to wait correctly.\n  ...\n"
    },
    {
      "commit": "a9bbd210a44102cc50b30a5f3d111dbf5f2f9cd4",
      "tree": "27bf5c64fbda8ed7796de52d495982fc30a56c8b",
      "parents": [
        "2ca7d674d7ab2220707b2ada0b690c0e7c95e7ac",
        "6c19efb46aacf2c5043ad210b888ee58ffb848c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:52:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:52:32 2009 -0700"
      },
      "message": "Merge branch \u0027docs-next\u0027 of git://git.lwn.net/linux-2.6\n\n* \u0027docs-next\u0027 of git://git.lwn.net/linux-2.6:\n  Document the flex_array library.\n  Doc: seq_file.txt fix wrong dd command example.\n"
    },
    {
      "commit": "2ca7d674d7ab2220707b2ada0b690c0e7c95e7ac",
      "tree": "9c0927ed1d540e5fd704c1f82689870786514655",
      "parents": [
        "2195d2818c37bdf263865f1e9effccdd9fc5f9d4",
        "87d721ad7a37b7650dd710c88dd5c6a5bf9fe996"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:48:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:48:14 2009 -0700"
      },
      "message": "Merge branch \u0027devel\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm\n\n* \u0027devel\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm: (257 commits)\n  [ARM] Update mach-types\n  ARM: 5636/1: Move vendor enum to AMBA include\n  ARM: Fix pfn_valid() for sparse memory\n  [ARM] orion5x: Add LaCie NAS 2Big Network support\n  [ARM] pxa/sharpsl_pm: zaurus c3000 aka spitz: fix resume\n  ARM: 5686/1: at91: Correct AC97 reset line in at91sam9263ek board\n  ARM: 5640/1: This patch modifies the support of AC97 on the at91sam9263 ek board\n  ARM: 5689/1: Update default config of HP Jornada 700-series machines\n  ARM: 5691/1: fix cache aliasing issues between kmap() and kmap_atomic() with highmem\n  ARM: 5688/1: ks8695_serial: disable_irq() lockup\n  ARM: 5687/1: fix an oops with highmem\n  ARM: 5684/1: Add nuc960 platform to w90x900\n  ARM: 5683/1: Add nuc950 platform to w90x900\n  ARM: 5682/1: Add cpu.c and dev.c and modify some files of w90p910 platform\n  ARM: 5626/1: add suspend/resume functions to amba-pl011 serial driver\n  ARM: 5625/1: fix hard coded 4K resource size in amba bus detection\n  MMC: MMCI: convert realview MMC to use gpiolib\n  ARM: 5685/1: Make MMCI driver compile without gpiolib\n  ARM: implement highpte\n  ARM: Show FIQ in /proc/interrupts on CONFIG_FIQ\n  ...\n\nFix up trivial conflict in arch/arm/kernel/signal.c.\n\nIt was due to the TIF_NOTIFY_RESUME addition in commit d0420c83f (\"KEYS:\nExtend TIF_NOTIFY_RESUME to (almost) all architectures\") and follow-ups.\n"
    },
    {
      "commit": "2195d2818c37bdf263865f1e9effccdd9fc5f9d4",
      "tree": "3b74a195c2b69d8390c67c7cd46139df0bdd69ec",
      "parents": [
        "69def9f05dfce3281bb06599057e6b8097385d39"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Sat Sep 12 12:21:27 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:45:31 2009 -0700"
      },
      "message": "fix undefined reference to user_shm_unlock\n\nMy 353d5c30c666580347515da609dd74a2b8e9b828 \"mm: fix hugetlb bug due to\nuser_shm_unlock call\" broke the CONFIG_SYSVIPC !CONFIG_MMU build of both\n2.6.31 and 2.6.30.6: \"undefined reference to `user_shm_unlock\u0027\".\n\ngcc didn\u0027t understand my comment! so couldn\u0027t figure out to optimize\naway user_shm_unlock() from the error path in the hugetlb-less case, as\nit does elsewhere.  Help it to do so, in a language it understands.\n\nReported-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69def9f05dfce3281bb06599057e6b8097385d39",
      "tree": "7d826b22924268ddbfad101993b248996d40e2ec",
      "parents": [
        "353f6dd2dec992ddd34620a94b051b0f76227379",
        "8e616fc8d343bd7f0f0a0c22407fdcb77f6d22b1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:43:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:43:43 2009 -0700"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.32\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.32\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (202 commits)\n  MAINTAINERS: update KVM entry\n  KVM: correct error-handling code\n  KVM: fix compile warnings on s390\n  KVM: VMX: Check cpl before emulating debug register access\n  KVM: fix misreporting of coalesced interrupts by kvm tracer\n  KVM: x86: drop duplicate kvm_flush_remote_tlb calls\n  KVM: VMX: call vmx_load_host_state() only if msr is cached\n  KVM: VMX: Conditionally reload debug register 6\n  KVM: Use thread debug register storage instead of kvm specific data\n  KVM guest: do not batch pte updates from interrupt context\n  KVM: Fix coalesced interrupt reporting in IOAPIC\n  KVM guest: fix bogus wallclock physical address calculation\n  KVM: VMX: Fix cr8 exiting control clobbering by EPT\n  KVM: Optimize kvm_mmu_unprotect_page_virt() for tdp\n  KVM: Document KVM_CAP_IRQCHIP\n  KVM: Protect update_cr8_intercept() when running without an apic\n  KVM: VMX: Fix EPT with WP bit change during paging\n  KVM: Use kvm_{read,write}_guest_virt() to read and write segment descriptors\n  KVM: x86 emulator: Add adc and sbb missing decoder flags\n  KVM: Add missing #include\n  ...\n"
    },
    {
      "commit": "353f6dd2dec992ddd34620a94b051b0f76227379",
      "tree": "38f48b57f8f0f1bb05983ec32205fac9b8bab14c",
      "parents": [
        "bb193c986a7104f718c1b92709e1e6e22ac3f864"
      ],
      "author": {
        "name": "Anirban Sinha",
        "email": "asinha@zeugmasystems.com",
        "time": "Mon Sep 14 11:13:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:41:42 2009 -0700"
      },
      "message": "cleanup console_print()\n\nconsole_print() is an old legacy interface mostly unused in the entire\nkernel tree. It\u0027s best to clean up its existing use and let developers\nuse their own implementation of it as they feel fit.\n\nSigned-off-by: Anirban Sinha \u003casinha@zeugmasystems.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bb193c986a7104f718c1b92709e1e6e22ac3f864",
      "tree": "1d5a1b08e31a8e39ec4688afd24695c0c6a113ae",
      "parents": [
        "f65ac45e20b03081ed64f41ce91bb982f8ac258d",
        "aceda773606f2506a25b91aaafae87b2e4315834"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:38:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:38:52 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:\n  slub: fix slab_pad_check()\n  slub: release kobject if sysfs_create_group failed in sysfs_slab_add\n  SLUB: fix ARCH_KMALLOC_MINALIGN cases 64 and 256\n  SLUB: Fix some coding style issues\n  SLUB: Drop write permission to /proc/slabinfo\n  slab: remove duplicate kmem_cache_init_late() declarations\n  slub: change kmem_cache-\u003ealign to record the real alignment\n  slub: use size and objsize orders to disable debug flags\n  slub: add option to disable higher order debugging slabs\n"
    },
    {
      "commit": "f65ac45e20b03081ed64f41ce91bb982f8ac258d",
      "tree": "615e966b6c792ccd840f994f38591ff5d3d85f72",
      "parents": [
        "4142e0d1def2c0176c27fd2e810243045a62eb6d",
        "22223c9b417be5fd0ab2cf9ad17eb7bd1e19f7b9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:38:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:38:38 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:\n  x86, mce: do not compile mcelog message on AMD\n  EDAC, AMD: decode FR MCEs\n  EDAC, AMD: decode load store MCEs\n  EDAC, AMD: decode bus unit MCEs\n  EDAC, AMD: decode instruction cache MCEs\n  EDAC, AMD: decode data cache MCEs\n  EDAC, AMD: carve out decoding of MCi_STATUS ErrorCode\n  EDAC, AMD: carve out MCi_STATUS decoding\n  x86, mce: pass mce info to EDAC for decoding\n  amd64_edac: cleanup amd64_decode_bus_error\n  amd64_edac: remove memory and GART TLB error decoders\n  amd64_edac: cleanup/complete NB MCE decoding\n  amd64_edac: cleanup amd64_process_error_info\n  EDAC: beef up ErrorCodeExt error signatures\n  EDAC: move MCE error descriptions to EDAC core\n"
    },
    {
      "commit": "c08ef808ef24df32e25fbd949fe5310172f3c408",
      "tree": "12bae6fd48e1cdcc1b792c221376c727d9472cc6",
      "parents": [
        "5c84342a3e147a23752276650340801c237d0e56"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Sep 14 17:26:13 2009 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Sep 15 09:11:02 2009 +1000"
      },
      "message": "KEYS: Fix garbage collector\n\nFix a number of problems with the new key garbage collector:\n\n (1) A rogue semicolon in keyring_gc() was causing the initial count of dead\n     keys to be miscalculated.\n\n (2) A missing return in keyring_gc() meant that under certain circumstances,\n     the keyring semaphore would be unlocked twice.\n\n (3) The key serial tree iterator (key_garbage_collector()) part of the garbage\n     collector has been modified to:\n\n     (a) Complete each scan of the keyrings before setting the new timer.\n\n     (b) Only set the new timer for keys that have yet to expire.  This means\n         that the new timer is now calculated correctly, and the gc doesn\u0027t\n         get into a loop continually scanning for keys that have expired, and\n         preventing other things from happening, like RCU cleaning up the old\n         keyring contents.\n\n     (c) Perform an extra scan if any keys were garbage collected in this one\n     \t as a key might become garbage during a scan, and (b) could mean we\n     \t don\u0027t set the timer again.\n\n (4) Made key_schedule_gc() take the time at which to do a collection run,\n     rather than the time at which the key expires.  This means the collection\n     of dead keys (key type unregistered) can happen immediately.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "5c84342a3e147a23752276650340801c237d0e56",
      "tree": "a57a81dd9b48f8bd837ab13e319375c248cc7b89",
      "parents": [
        "4a5d6ba1914d1bf1fcfb5e15834c29d84a879219"
      ],
      "author": {
        "name": "Marc Dionne",
        "email": "marc.c.dionne@gmail.com",
        "time": "Mon Sep 14 12:46:23 2009 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Sep 15 09:10:59 2009 +1000"
      },
      "message": "KEYS: Unlock tasklist when exiting early from keyctl_session_to_parent\n\nWhen we exit early from keyctl_session_to_parent because of permissions or\nbecause the session keyring is the same as the parent, we need to unlock the\ntasklist.\n\nThe missing unlock causes the system to hang completely when using\nkeyctl(KEYCTL_SESSION_TO_PARENT) with a keyring shared with the parent.\n\nSigned-off-by: Marc Dionne \u003cmarc.c.dionne@gmail.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "4a5d6ba1914d1bf1fcfb5e15834c29d84a879219",
      "tree": "2e9e7895b1b9d2ac4a88e1fc9127ba644a7d0679",
      "parents": [
        "4e6d0bffd3d72a32b620525c9007d2482c731775"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Sep 14 12:45:39 2009 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Sep 15 09:10:57 2009 +1000"
      },
      "message": "CRED: Allow put_cred() to cope with a NULL groups list\n\nput_cred() will oops if given a NULL groups list, but that is now possible with\nthe existence of cred_alloc_blank(), as used in keyctl_session_to_parent().\n\nAdded in commit:\n\n\tcommit ee18d64c1f632043a02e6f5ba5e045bb26a5465f\n\tAuthor: David Howells \u003cdhowells@redhat.com\u003e\n\tDate:   Wed Sep 2 09:14:21 2009 +0100\n\tKEYS: Add a keyctl to install a process\u0027s session keyring on its parent [try #6]\n\nReported-by: Marc Dionne \u003cmarc.c.dionne@gmail.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "4142e0d1def2c0176c27fd2e810243045a62eb6d",
      "tree": "a21f76fafcd7609419a3ce610d8b9360748ccd76",
      "parents": [
        "33f1de69312432baecb997a570b7d77c4d02d1ed",
        "2daea67e966dc0c42067ebea015ddac6834cef88"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:36:47 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:36:47 2009 -0700"
      },
      "message": "Merge branch \u0027osync_cleanup\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027osync_cleanup\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  fsync: wait for data writeout completion before calling -\u003efsync\n  vfs: Remove generic_osync_inode() and sync_page_range{_nolock}()\n  fat: Opencode sync_page_range_nolock()\n  pohmelfs: Use new syncing helper\n  xfs: Convert sync_page_range() to simple filemap_write_and_wait_range()\n  ocfs2: Update syncing after splicing to match generic version\n  ntfs: Use new syncing helpers and update comments\n  ext4: Remove syncing logic from ext4_file_write\n  ext3: Remove syncing logic from ext3_file_write\n  ext2: Update comment about generic_osync_inode\n  vfs: Introduce new helpers for syncing after writing to O_SYNC file or IS_SYNC inode\n  vfs: Rename generic_file_aio_write_nolock\n  ocfs2: Use __generic_file_aio_write instead of generic_file_aio_write_nolock\n  pohmelfs: Use __generic_file_aio_write instead of generic_file_aio_write_nolock\n  vfs: Remove syncing from generic_file_direct_write() and generic_file_buffered_write()\n  vfs: Export __generic_file_aio_write() and add some comments\n  vfs: Introduce filemap_fdatawait_range\n"
    },
    {
      "commit": "33f1de69312432baecb997a570b7d77c4d02d1ed",
      "tree": "24e9e7487ec3b892e120409aa2ac1b1263794373",
      "parents": [
        "041d6d0be82bed7e0b87181dba5d10b8ab14afd9",
        "86d006365610fe6cda243d89b67d5047dca44656"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:35:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:35:56 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw:\n  GFS2: Whitespace fixes\n  GFS2: Remove unused sysfs file\n  GFS2: Be extra careful about deallocating inodes\n  GFS2: Remove no_formal_ino generating code\n  GFS2: Rename eattr.[ch] as xattr.[ch]\n  GFS2: Clean up of extended attribute support\n  GFS2: Add explanation of extended attr on-disk format\n  GFS2: Add \"-o errors\u003dpanic|withdraw\" mount options\n  GFS2: jumping to wrong label?\n  GFS2: free disk inode which is deleted by remote node -V2\n  GFS2: Add a document explaining GFS2\u0027s uevents\n  GFS2: Add sysfs link to device\n  GFS2: Replace assertion with proper error handling\n  GFS2: Improve error handling in inode allocation\n  GFS2: Add some more info to uevents\n  GFS2: Add online uevent to GFS2\n"
    },
    {
      "commit": "041d6d0be82bed7e0b87181dba5d10b8ab14afd9",
      "tree": "b7af53fa7ca104d30b9759c1f951439af7df3734",
      "parents": [
        "af8cb8aa38296ecc43aca7fae9e574db7b8ae0c4",
        "cbc8cc33529b0e0e55ae0ff077b8cb0b71d54c7a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:35:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:35:07 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6:\n  udf: Fix possible corruption when close races with write\n  udf: Perform preallocation only for regular files\n  udf: Remove wrong assignment in udf_symlink\n  udf: Remove dead code\n"
    },
    {
      "commit": "af8cb8aa38296ecc43aca7fae9e574db7b8ae0c4",
      "tree": "636090652a055bff0930ad713e315ff185282330",
      "parents": [
        "6cdb5930a6fa0e35b236f4aa0e056001fe1384b4",
        "41f4db0f48c72db3a93cc1a0b18368d9a9aca700"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:34:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:34:33 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: (21 commits)\n  fs/Kconfig: move nilfs2 outside misc filesystems\n  nilfs2: convert nilfs_bmap_lookup to an inline function\n  nilfs2: allow btree code to directly call dat operations\n  nilfs2: add update functions of virtual block address to dat\n  nilfs2: remove individual gfp constants for each metadata file\n  nilfs2: stop zero-fill of btree path just before free it\n  nilfs2: remove unused btree argument from btree functions\n  nilfs2: remove nilfs_dat_abort_start and nilfs_dat_abort_free\n  nilfs2: shorten freeze period due to GC in write operation v3\n  nilfs2: add more check routines in mount process\n  nilfs2: An unassigned variable is assigned to a never used structure member\n  nilfs2: use GFP_NOIO for bio_alloc instead of GFP_NOWAIT\n  nilfs2: stop using periodic write_super callback\n  nilfs2: clean up nilfs_write_super\n  nilfs2: fix disorder of nilfs_write_super in nilfs_sync_fs\n  nilfs2: remove redundant super block commit\n  nilfs2: implement nilfs_show_options to display mount options in /proc/mounts\n  nilfs2: always lookup disk block address before reading metadata block\n  nilfs2: use semaphore to protect pointer to a writable FS-instance\n  nilfs2: fix format string compile warning (ino_t)\n  ...\n"
    },
    {
      "commit": "6cdb5930a6fa0e35b236f4aa0e056001fe1384b4",
      "tree": "f7627d65c283ab122d69c20605355cb2c397f112",
      "parents": [
        "99bc47067910f7070e65ee318a6dd79a2371f1e5",
        "9162ab2000e08be076883b5a295a771223264ce8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:33:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:33:13 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  cifs: consolidate reconnect logic in smb_init routines\n  cifs: Replace wrtPending with a real reference count\n  cifs: protect GlobalOplock_Q with its own spinlock\n  cifs: use tcon pointer in cifs_show_options\n  cifs: send IPv6 addr in upcall with colon delimiters\n  [CIFS] Fix checkpatch warnings\n  PATCH] cifs: fix broken mounts when a SSH tunnel is used (try #4)\n  [CIFS] Memory leak in ntlmv2 hash calculation\n  [CIFS] potential NULL dereference in parse_DFS_referrals()\n"
    },
    {
      "commit": "33f82d141c897f39cd8bce592d88cb3c5af58342",
      "tree": "7765831183d05fb635e60e8f8bf92e0bdfe06b5c",
      "parents": [
        "3eb132c986f04f64b9c360abd67a1e0d18d6d5b4"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Sep 10 00:06:44 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:27:00 2009 +0200"
      },
      "message": "at_hdmac: Rework suspend_late()/resume_early()\n\nThis patch reworks platform driver power management code\nfor at_hdmac from legacy late/early callbacks to dev_pm_ops.\n\nThe callbacks are converted for CONFIG_SUSPEND like this:\n  suspend_late() -\u003e suspend_noirq()\n  resume_early() -\u003e resume_noirq()\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "3eb132c986f04f64b9c360abd67a1e0d18d6d5b4",
      "tree": "d51e8e2d3d9de0ad365f1f0c4cdcc02aa72b1aaa",
      "parents": [
        "20d652d7d1c2f202215ecf0306ccecc3569df9ba"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "dfeng@redhat.com",
        "time": "Thu Aug 20 20:28:33 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:27:00 2009 +0200"
      },
      "message": "PM: Reset transition_started at dpm_resume_noirq\n\ntransition_started should be set once the preparation of devices for\na PM has started, reset before starting to resume devices. When\nresuming devices, kernel calls dpm_resume_noirq then\ndpm_resume_end(dpm_resume).  Thus we should reset transition_started\nat dpm_resume_noirq.\n\nThis patch fixes ACPI warning when resuming from suspend/hibernate:\n\nACPI: \\_SB_.PCI0.IDE1.PRI1.MAS1 - docking\n------------[ cut here ]------------\nWARNING: at drivers/base/power/main.c:87 device_pm_add+0x8b/0xcc()\nHardware name: OptiPlex 760\nDevice: acpi\nParentless device registered during a PM transaction\n\n[rjw: Fixed up the changelog.]\n\nSigned-off-by: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "20d652d7d1c2f202215ecf0306ccecc3569df9ba",
      "tree": "f08619cec4964478d764477ca45931f7d49401a3",
      "parents": [
        "9d62ec6ca71d71c8a0d2cb1004f476d33f668955"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Aug 20 20:25:52 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:27:00 2009 +0200"
      },
      "message": "PM: Update kerneldoc comments in drivers/base/power/main.c\n\nThe kerneldoc comments in drivers/base/power/main.c are generally\noutdated and some of them don\u0027t describe the functions very\naccurately.  Update them and standardize the format to use spaces\ninstead of tabs.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\n"
    },
    {
      "commit": "9d62ec6ca71d71c8a0d2cb1004f476d33f668955",
      "tree": "9add05fac4a177024f6de235b5d9b82054e24b27",
      "parents": [
        "8dd2b42665f9d4ca4fded99f048631b60f669dc5"
      ],
      "author": {
        "name": "Albin Tonnerre",
        "email": "albin.tonnerre@free-electrons.com",
        "time": "Wed Aug 05 23:59:59 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:27:00 2009 +0200"
      },
      "message": "PM: Add convenience macro to make switching to dev_pm_ops less error-prone\n\nIn a number of cases, the .suspend, .freeze, .poweroff and .resume,\n.thaw, .restore functions are identical. However, they all need to be\nassigned to avoid regressionsm as the previous code called .suspend\nresp. .resume in all those cases. SIMPLE_DEV_PM_OPS helps to deal\nwith this case.\n\n[rjw: Changed the name of the macro and added the comment explaining its\n purpose.]\n\nSigned-off-by: Albin Tonnerre \u003calbin.tonnerre@free-electrons.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "8dd2b42665f9d4ca4fded99f048631b60f669dc5",
      "tree": "bcc098262d8c5f93505150763aa9be3fd752920a",
      "parents": [
        "c90cd332d3dbf9fc78934b8bda271c1f909216ea"
      ],
      "author": {
        "name": "Frans Pop",
        "email": "elendil@planet.nl",
        "time": "Thu Aug 20 20:38:13 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:59 2009 +0200"
      },
      "message": "hp-wmi: Switch driver to dev_pm_ops\n\nGets rid of the following warning:\n\nPlatform driver \u0027hp-wmi\u0027 needs updating - please use dev_pm_ops\n\nI tested that the resume handler still works on my HP 2510p notebook.\n\n[rjw: Fixed up the definition of hp_wmi_pm_ops.]\n\nSigned-off-by: Frans Pop \u003celendil@planet.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "c90cd332d3dbf9fc78934b8bda271c1f909216ea",
      "tree": "2fc3010e813f0f04961be54cf9ce31e27965fc28",
      "parents": [
        "8de0307326be94148436082a9abf365da8e3c66d"
      ],
      "author": {
        "name": "Frans Pop",
        "email": "elendil@planet.nl",
        "time": "Sat Jul 25 22:24:54 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:59 2009 +0200"
      },
      "message": "floppy: Switch driver to dev_pm_ops\n\nGets rid of the following warning:\nPlatform driver \u0027floppy\u0027 needs updating - please use dev_pm_ops\n\n[rjw: Fixed up the definition of floppy_pm_ops.]\n\nSigned-off-by: Frans Pop \u003celendil@planet.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "8de0307326be94148436082a9abf365da8e3c66d",
      "tree": "816cffb8eedac9adea9876ded5e587ee15205c9c",
      "parents": [
        "98e73dc5d2dadfcb95305ad71ac9239f4e361870"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jul 22 19:56:10 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:59 2009 +0200"
      },
      "message": "PM: Trivial fixes\n\nFix the definition of BM_BITS_PER_BLOCK and kerneldoc\ndescription of create_bm_block_list().\n\n[rjw: Added changelog.]\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "98e73dc5d2dadfcb95305ad71ac9239f4e361870",
      "tree": "f6a0b8098b02d2ef8e673ceef34150df55425ce7",
      "parents": [
        "ef4aede3f10d82adef1fb044b565ba5f08f851e0"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "gerald.schaefer@de.ibm.com",
        "time": "Wed Jul 22 00:36:56 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:59 2009 +0200"
      },
      "message": "PM / Hibernate / Memory hotplug: Always use for_each_populated_zone()\n\nUse for_each_populated_zone() instead of for_each_zone() in hibernation\ncode. This fixes a bug on s390, where we allow both config options\nHIBERNATION and MEMORY_HOTPLUG, so that we also have a ZONE_MOVABLE\nhere. We only allow hibernation if no memory hotplug operation was\nperformed, so in fact both features can only be used exclusively, but\nthis way we don\u0027t need 2 differently configured (distribution) kernels.\n\nIf we have an unpopulated ZONE_MOVABLE, we allow hibernation but run\ninto a BUG_ON() in memory_bm_test/set/clear_bit() because hibernation\ncode iterates through all zones, not only the populated zones, in\nseveral places. For example, swsusp_free() does for_each_zone() and\nthen checks for pfn_valid(), which is true even if the zone is not\npopulated, resulting in a BUG_ON() later because the pfn cannot be\nfound in the memory bitmap.\n\nReplacing all occurences of for_each_zone() in hibernation code with\nfor_each_populated_zone() would fix this issue.\n\n[rjw: Rebased on top of linux-next hibernation patches.]\n\nSigned-off-by: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "ef4aede3f10d82adef1fb044b565ba5f08f851e0",
      "tree": "58566c694aa036e75df401979bd8a85ffa718f18",
      "parents": [
        "64a473cb74a88cb4991edf985d55a266e65292e1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:24:12 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:59 2009 +0200"
      },
      "message": "PM/Hibernate: Do not try to allocate too much memory too hard (rev. 2)\n\nWe want to avoid attempting to free too much memory too hard during\nhibernation, so estimate the minimum size of the image to use as the\nlower limit for preallocating memory.\n\nThe approach here is based on the (experimental) observation that we\ncan\u0027t free more page frames than the sum of:\n\n* global_page_state(NR_SLAB_RECLAIMABLE)\n* global_page_state(NR_ACTIVE_ANON)\n* global_page_state(NR_INACTIVE_ANON)\n* global_page_state(NR_ACTIVE_FILE)\n* global_page_state(NR_INACTIVE_FILE)\n\nminus\n\n* global_page_state(NR_FILE_MAPPED)\n\nNamely, if this number is subtracted from the number of saveable\npages in the system, we get a good estimate of the minimum reasonable\nsize of a hibernation image.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "64a473cb74a88cb4991edf985d55a266e65292e1",
      "tree": "173402070f904951c9ec16a55e3f96e75289f14c",
      "parents": [
        "4bb334353ebd821bc8eeabeb019eaac33c7307df"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:24:05 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:58 2009 +0200"
      },
      "message": "PM/Hibernate: Do not release preallocated memory unnecessarily (rev. 2)\n\nSince the hibernation code is now going to use allocations of memory\nto make enough room for the image, it can also use the page frames\nallocated at this stage as image page frames.  The low-level\nhibernation code needs to be rearranged for this purpose, but it\nallows us to avoid freeing a great number of pages and allocating\nthese same pages once again later, so it generally is worth doing.\n\n[rev. 2: Take highmem into account correctly.]\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4bb334353ebd821bc8eeabeb019eaac33c7307df",
      "tree": "fc827906f10eebaed4c0483b25beaaba70b0b1dc",
      "parents": [
        "e681c9dd62fe8fcc5bba28a3ca3f7dc8be940206"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:23:51 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:58 2009 +0200"
      },
      "message": "PM/Hibernate: Rework shrinking of memory\n\nRework swsusp_shrink_memory() so that it calls shrink_all_memory()\njust once to make some room for the image and then allocates memory\nto apply more pressure to the memory management subsystem, if\nnecessary.\n\nUnfortunately, we don\u0027t seem to be able to drop shrink_all_memory()\nentirely just yet, because that would lead to huge performance\nregressions in some test cases.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\n"
    },
    {
      "commit": "e681c9dd62fe8fcc5bba28a3ca3f7dc8be940206",
      "tree": "3ac522149e3171417897754b53b765e38d9ca25a",
      "parents": [
        "ac8d513a6801c8636922ccf4f30211810c9a56ce"
      ],
      "author": {
        "name": "Thadeu Lima de Souza Cascardo",
        "email": "cascardo@holoscopio.com",
        "time": "Wed Jul 08 13:23:32 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:58 2009 +0200"
      },
      "message": "PM: Fix typo in label name s/Platofrm_finish/Platform_finish/\n\nAlthough the same label name is used somewhere else in the file, this\nparticular label was consistently typoed in all of its uses.\n\nSigned-off-by: Thadeu Lima de Souza Cascardo \u003ccascardo@holoscopio.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "ac8d513a6801c8636922ccf4f30211810c9a56ce",
      "tree": "83ba584487a6a612c8fcf2563c28c0263df35ba2",
      "parents": [
        "bf992fa2bc1ad1bb2aeb0bdfadb43f236b9297fd",
        "99bc47067910f7070e65ee318a6dd79a2371f1e5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:05 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 14 20:26:05 2009 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-linus\n"
    },
    {
      "commit": "99bc47067910f7070e65ee318a6dd79a2371f1e5",
      "tree": "d24941285af868b0392a327360ae260a8f50caf1",
      "parents": [
        "d7e9660ad9d5e0845f52848bce31bcf5cdcdea6b",
        "cabc5c0f7fa1342049042d6e147db5a73773955b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:48:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:48:59 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6: (21 commits)\n  sparc64: Initial niagara2 perf counter support.\n  sparc64: Perf counter \u0027nop\u0027 event is not constant.\n  sparc64: Provide a way to specify a perf counter overflow IRQ enable bit.\n  sparc64: Provide hypervisor tracing bit support for perf counters.\n  sparc64: Initial hw perf counter support.\n  sparc64: Implement a real set_perf_counter_pending().\n  sparc64: Use nmi_enter() and nmi_exit(), as needed.\n  sparc64: Provide extern decls for sparc_??u_type strings.\n  sparc64: Make touch_nmi_watchdog() actually work.\n  sparc64: Kill unnecessary cast in profile_timer_exceptions_notify().\n  sparc64: Manage NMI watchdog enabling like x86.\n  sparc: add basic support for \u0027perf\u0027\n  sparc: convert /proc/io_map, /proc/dvma_map to seq_file\n  sparc, leon: sparc-leon specific SRMMU initialization and bootup fixes.\n  sparc,leon: Added support for AMBAPP bus.\n  sparc,leon: Introduce the sparc-leon CPU type.\n  sparc,leon: Redefine MMU register access asi if CONFIG_LEON\n  sparc,leon: CONFIG_SPARC_LEON option and leon specific files.\n  sparc64: cheaper asm/uaccess.h inclusion\n  SPARC: fix duplicate declaration\n  ...\n"
    },
    {
      "commit": "d7e9660ad9d5e0845f52848bce31bcf5cdcdea6b",
      "tree": "c6c67d145771187b194d79d603742b31090a59d6",
      "parents": [
        "b8cb48aae1b8c50b37dcb7710363aa69a7a0d9ca",
        "13af7a6ea502fcdd4c0e3d7de6e332b102309491"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:37:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:37:28 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1623 commits)\n  netxen: update copyright\n  netxen: fix tx timeout recovery\n  netxen: fix file firmware leak\n  netxen: improve pci memory access\n  netxen: change firmware write size\n  tg3: Fix return ring size breakage\n  netxen: build fix for INET\u003dn\n  cdc-phonet: autoconfigure Phonet address\n  Phonet: back-end for autoconfigured addresses\n  Phonet: fix netlink address dump error handling\n  ipv6: Add IFA_F_DADFAILED flag\n  net: Add DEVTYPE support for Ethernet based devices\n  mv643xx_eth.c: remove unused txq_set_wrr()\n  ucc_geth: Fix hangs after switching from full to half duplex\n  ucc_geth: Rearrange some code to avoid forward declarations\n  phy/marvell: Make non-aneg speed/duplex forcing work for 88E1111 PHYs\n  drivers/net/phy: introduce missing kfree\n  drivers/net/wan: introduce missing kfree\n  net: force bridge module(s) to be GPL\n  Subject: [PATCH] appletalk: Fix skb leak when ipddp interface is not loaded\n  ...\n\nFixed up trivial conflicts:\n\n - arch/x86/include/asm/socket.h\n\n   converted to \u003casm-generic/socket.h\u003e in the x86 tree.  The generic\n   header has the same new #define\u0027s, so that works out fine.\n\n - drivers/net/tun.c\n\n   fix conflict between 89f56d1e9 (\"tun: reuse struct sock fields\") that\n   switched over to using \u0027tun-\u003esocket.sk\u0027 instead of the redundantly\n   available (and thus removed) \u0027tun-\u003esk\u0027, and 2b980dbd (\"lsm: Add hooks\n   to the TUN driver\") which added a new \u0027tun-\u003esk\u0027 use.\n\n   Noted in \u0027next\u0027 by Stephen Rothwell.\n"
    },
    {
      "commit": "b8cb48aae1b8c50b37dcb7710363aa69a7a0d9ca",
      "tree": "c7b04bfc8ece8b0121a9030c7f49e7bf9bf570d1",
      "parents": [
        "0cc6d77e55eca9557bbe41bf2db94b31aa8fcb2a",
        "78c86e5e5691fc84d5fbea0cd4ac7147e87b7490"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:23:49 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:23:49 2009 -0700"
      },
      "message": "Merge branch \u0027x86-xen-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-xen-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: split __phys_addr out into separate file\n  xen: use stronger barrier after unlocking lock\n  xen: only enable interrupts while actually blocking for spinlock\n  xen: make -fstack-protector work under Xen\n"
    },
    {
      "commit": "aceda773606f2506a25b91aaafae87b2e4315834",
      "tree": "6084163c1833f938c7e582ddf983c7748c038024",
      "parents": [
        "0cc6d77e55eca9557bbe41bf2db94b31aa8fcb2a",
        "5086c389cb897c7ad66c1cacd1abb5ffebaa74b2",
        "8a3d271deb0cc9c2fc47317d8e431046382939c9"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Mon Sep 14 20:19:06 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Mon Sep 14 20:19:06 2009 +0300"
      },
      "message": "Merge branches \u0027slab/cleanups\u0027 and \u0027slab/fixes\u0027 into for-linus\n"
    },
    {
      "commit": "cbc8cc33529b0e0e55ae0ff077b8cb0b71d54c7a",
      "tree": "5edace261ca6d707456d1bde03c0bf719ac8a365",
      "parents": [
        "81056dd04465902461b627169c4b4487a11acba1"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Aug 07 00:27:27 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 19:13:01 2009 +0200"
      },
      "message": "udf: Fix possible corruption when close races with write\n\nWhen we close a file, we remove preallocated blocks from it. But this\ntruncation was not protected by i_mutex and thus it could have raced with a\nwrite through a different fd and cause crashes or even filesystem corruption.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "81056dd04465902461b627169c4b4487a11acba1",
      "tree": "902b49848f8d2033c24ad78ac5d391bf092091ef",
      "parents": [
        "7c6e3d1aaeb3b25b49510d193000c27037004acb"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Jul 16 18:02:25 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 19:13:00 2009 +0200"
      },
      "message": "udf: Perform preallocation only for regular files\n\nSo far we preallocated blocks also for directories but that brings a\nproblem, when to get rid of preallocated blocks we don\u0027t need. So far\nwe removed them in udf_clear_inode() which has a disadvantage that\n1) blocks are unavailable long after writing to a directory finished\n   and thus one can get out of space unnecessarily early\n2) releasing blocks from udf_clear_inode is problematic because VFS\n   does not expect us to redirty inode there and it also slows down\n   memory reclaim.\n\nSo preallocate blocks only for regular files where we can drop preallocation\nin udf_release_file.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "7c6e3d1aaeb3b25b49510d193000c27037004acb",
      "tree": "1d20b31e4e74708812b6bd5821775bbac2eae539",
      "parents": [
        "5891d9dd2a47d38c205115211841a3d82304628f"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Jul 16 17:36:54 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 19:13:00 2009 +0200"
      },
      "message": "udf: Remove wrong assignment in udf_symlink\n\nRecomputation of the pointer was wrong (it should have been just increment).\nLuckily, we never use the computed value. Remove it.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "5891d9dd2a47d38c205115211841a3d82304628f",
      "tree": "8ee321785b597895bbd2ed8f47772e3e09f62b07",
      "parents": [
        "0cc6d77e55eca9557bbe41bf2db94b31aa8fcb2a"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Jul 16 17:35:11 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 19:13:00 2009 +0200"
      },
      "message": "udf: Remove dead code\n\nRemove code that gets never used.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "22223c9b417be5fd0ab2cf9ad17eb7bd1e19f7b9",
      "tree": "6dae366795fbb3e28d2496c62db2ffd981516afc",
      "parents": [
        "53bd5fedca7d0c28b35b02cab5f4e27bf8d7fabe"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Jul 28 14:47:10 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 19:01:41 2009 +0200"
      },
      "message": "x86, mce: do not compile mcelog message on AMD\n\nNow that decoding is done in-kernel, suppress mcelog message part.\n\nCC: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "53bd5fedca7d0c28b35b02cab5f4e27bf8d7fabe",
      "tree": "10798765e935f772afe8b75494fb75bd9e46e82a",
      "parents": [
        "f9350efd6f37ef60d2334739edb76ef1f8ee0183"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Jul 28 14:20:46 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 19:01:37 2009 +0200"
      },
      "message": "EDAC, AMD: decode FR MCEs\n\nSee Fam10h BKDG (31116, rev. 3.28), Table 101.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "f9350efd6f37ef60d2334739edb76ef1f8ee0183",
      "tree": "f723398c77fe7db29634c5f0767b27f7ad2005e2",
      "parents": [
        "56cad2d6fb832a876ab8bda4b01e5d0722dc754b"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Jul 28 14:17:30 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 19:01:33 2009 +0200"
      },
      "message": "EDAC, AMD: decode load store MCEs\n\nSee Fam10h BKDG (31116, rev. 3.28), Table 100.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "56cad2d6fb832a876ab8bda4b01e5d0722dc754b",
      "tree": "a6861ac9a9f4aeae8a440b810dbaabd48a0ea06e",
      "parents": [
        "ab5535e70fb35b8046b6ace50259fe212e074a4f"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Jul 28 14:14:24 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 19:01:30 2009 +0200"
      },
      "message": "EDAC, AMD: decode bus unit MCEs\n\n... according to Table 69, Fam10h BKDG (31116, rev. 3.28).\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "ab5535e70fb35b8046b6ace50259fe212e074a4f",
      "tree": "76f8b493e5c7af85db8ee7395946bfeff0dfa0fc",
      "parents": [
        "51966241360874e85d1e4d93c9fcdd2ef917b0fb"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Jul 28 14:06:26 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 19:01:27 2009 +0200"
      },
      "message": "EDAC, AMD: decode instruction cache MCEs\n\nSee Fam10h BKDG (31116, rev. 3.28), Table 95\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "51966241360874e85d1e4d93c9fcdd2ef917b0fb",
      "tree": "b060ab062f7ccdbaf14163ba71db095a80b3221f",
      "parents": [
        "d93cc222adf3532ddb442648f8db00c15d1dc4c1"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Jul 28 13:50:43 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 19:01:23 2009 +0200"
      },
      "message": "EDAC, AMD: decode data cache MCEs\n\nThose get reported in MC0_STATUS, see Table 92, F10h BKDG (31116, rev.\n3.28) for more details.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "d93cc222adf3532ddb442648f8db00c15d1dc4c1",
      "tree": "57e0ac9280bff2b824a066621a3009ea7f9835ea",
      "parents": [
        "b69b29de65fe4078b125acc9dea34be82f7c362c"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Jul 28 10:56:15 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 19:01:20 2009 +0200"
      },
      "message": "EDAC, AMD: carve out decoding of MCi_STATUS ErrorCode\n\nThis is the MCE error code from the MCi_STATUS banks, bits [15:0] which\ndescribe what type of error was encountered: GART TLB, Memory or Bus\nerror. The semantics of those bits are identical across all MCE banks so\ndecode those separately, irrespectively of MCE type.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "b69b29de65fe4078b125acc9dea34be82f7c362c",
      "tree": "89c4369f9b04e2200e1ef83ed6497fcf150d2d8b",
      "parents": [
        "549d042df240dfb4203bab40ad44f9336751b7d6"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Jul 27 16:21:14 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 19:01:07 2009 +0200"
      },
      "message": "EDAC, AMD: carve out MCi_STATUS decoding\n\nThe MCi_STATUS registers have most field definitions in common so decode\nthem in the general path. Do not pass ecc_type along and compute it in\n__amd64_decode_bus_error instead.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "549d042df240dfb4203bab40ad44f9336751b7d6",
      "tree": "af357ed8eaf06c26f19d458686b6c7ea4e425a05",
      "parents": [
        "ecaf5606de65cdd04de5f526185fe28fb0df654e"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Fri Jul 24 13:51:42 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 18:59:17 2009 +0200"
      },
      "message": "x86, mce: pass mce info to EDAC for decoding\n\nMove NB decoder along with required defines to EDAC MCE core. Add\nregistration routines for further decoding of the MCE info in the AMD64\nEDAC module.\n\nCC: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "ecaf5606de65cdd04de5f526185fe28fb0df654e",
      "tree": "5545f1d5f24128ecf51f028c04ed57970013b59a",
      "parents": [
        "b7225e4fc19ce27a594cb2b868ef151bf82f8f93"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Thu Jul 23 16:32:01 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 18:58:37 2009 +0200"
      },
      "message": "amd64_edac: cleanup amd64_decode_bus_error\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "b7225e4fc19ce27a594cb2b868ef151bf82f8f93",
      "tree": "8b102ce7756a69a624a51ca1a2d2af6c21df4755",
      "parents": [
        "5110dbdeab546268dda2e4c6a83448639b2fc5ae"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Thu Jul 23 16:05:53 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 18:58:29 2009 +0200"
      },
      "message": "amd64_edac: remove memory and GART TLB error decoders\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "5110dbdeab546268dda2e4c6a83448639b2fc5ae",
      "tree": "d504eb80a6b77a7511cd8259943d0d746758834d",
      "parents": [
        "ef44cc4c2245d3c43f3c11c7bff6239852eef498"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Thu Jun 25 19:51:04 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 18:58:25 2009 +0200"
      },
      "message": "amd64_edac: cleanup/complete NB MCE decoding\n\n* don\u0027t dump info which mcheck already does\n* update to newest BKDG\n* mv amd64_process_error_info -\u003e amd64_decode_nb_mce\n* shorten error struct names\n* remove redundant info ptr in amd64_process_error_info\n* remove unused ErrorCodeExt[19:16] (MCx_STATUS) defines\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "ef44cc4c2245d3c43f3c11c7bff6239852eef498",
      "tree": "cac7e3a36daa98fecc38cd66033ee3e279874cdb",
      "parents": [
        "1c43f2e24d059913bce58887f1d6e4267aaed284"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Thu Jul 23 14:45:48 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 18:58:18 2009 +0200"
      },
      "message": "amd64_edac: cleanup amd64_process_error_info\n\n* mv amd64_error_info_regs -\u003e err_regs\n\n* remove redundant info ptr\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "1c43f2e24d059913bce58887f1d6e4267aaed284",
      "tree": "1edef8c32a528e254caf87e19400a62aa68e8d45",
      "parents": [
        "b70ef01016850de87b9a28a6af19fed8801df076"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Thu Jul 23 15:47:51 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 18:58:14 2009 +0200"
      },
      "message": "EDAC: beef up ErrorCodeExt error signatures\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "b70ef01016850de87b9a28a6af19fed8801df076",
      "tree": "78159c6e177c5557f2cc9342f8bc0833645d8da5",
      "parents": [
        "74fca6a42863ffacaf7ba6f1936a9f228950f657"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Thu Jun 25 19:32:38 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Mon Sep 14 18:57:48 2009 +0200"
      },
      "message": "EDAC: move MCE error descriptions to EDAC core\n\nThis is in preparation of adding AMD-specific MCE decoding functionality\nto the EDAC core. The error decoding macros originate from the AMD64\nEDAC driver albeit in a simplified and cleaned up version here.\n\nWhile at it, add macros to generate the error description strings and\nuse them in the error type decoders directly which removes a bunch of\ncode and makes the decoding functions much more readable. Also, fix\nstrings and shorten macro names.\n\nRemove superfluous htlink_msgs.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "2daea67e966dc0c42067ebea015ddac6834cef88",
      "tree": "0adef51c45c7dd31062824eb3ba102a349966608",
      "parents": [
        "18f2ee705d98034b0f229a3202d827468d4bffd9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Sep 03 12:39:39 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:17 2009 +0200"
      },
      "message": "fsync: wait for data writeout completion before calling -\u003efsync\n\nCurrenly vfs_fsync(_range) first calls filemap_fdatawrite to write out\nthe data, the calls into -\u003efsync to write out the metadata and then finally\ncalls filemap_fdatawait to wait for the data I/O to complete.  What sounds\nlike a clever micro-optimization actually is nast trap for many filesystems.\n\nFor many modern filesystems i_size or other inode information is only\nupdated on I/O completion and we need to wait for I/O to finish before\nwe can write out the metadata.  For old fashionen filesystems that\ninstanciate blocks during the actual write and also update the metadata\nat that point it opens up a large window were we could expose uninitialized\nblocks after a crash.  While a few filesystems that need it already wait\nfor the I/O to finish inside their -\u003efsync methods it is rather suboptimal\nas it is done under the i_mutex and also always for the whole file instead\nof just a part as we could do for O_SYNC handling.\n\nHere is a small audit of all fsync instances in the tree:\n\n - spufs_mfc_fsync:\n - ps3flash_fsync:\n - vol_cdev_fsync:\n - printer_fsync:\n - fb_deferred_io_fsync:\n - bad_file_fsync:\n - simple_sync_file:\n\n\tdon\u0027t care - filesystems/drivers do\u0027t use the page cache or are\n\tpurely in-memory.\n\n - simple_fsync:\n - file_fsync:\n - affs_file_fsync:\n - fat_file_fsync:\n - jfs_fsync:\n - ubifs_fsync:\n - reiserfs_dir_fsync:\n - reiserfs_sync_file:\n\n\tnever touch pagecache themselves.  We need to wait before if we do\n\tnot want to expose stale data after an allocation.\n\n - afs_fsync:\n - fuse_fsync_common:\n\n\tdo the waiting writeback itself in awkward ways, would benefit from\n\tproper semantics\n\n - block_fsync:\n\n\tDoes a filemap_write_and_wait on the block device inode.  Because we\n\tnow have f_mapping that is the same inode we call it on in vfs_fsync.\n\tSo just removing it and letting the VFS do the work in one go would\n\tbe an improvement.\n\n - btrfs_sync_file:\n - cifs_fsync:\n - xfs_file_fsync:\n\n\tneed the wait first and currently do it themselves. would benefit from\n\tdoing it outside i_mutex.\n\n - coda_fsync:\n - ecryptfs_fsync:\n - exofs_file_fsync:\n - shm_fsync:\n\n\tonly passes the fsync through to the lower layer\n\n - ext3_sync_file:\n\n\tdoesn\u0027t seem to care, comments are confusing.\n\n - ext4_sync_file:\n\n\twould need the wait to work correctly for delalloc mode with late\n\ti_size updates.  Otherwise the ext3 comment applies.\n\n\tcurrently implemens it\u0027s own writeback and wait in an odd way,\n\tcould benefit from doing it properly.\n\n - gfs2_fsync:\n\n\tnot needed for journaled data mode, but probably harmless there.\n\tCurrently writes back data asynchronously itself.  Needs some\n\tmajor audit.\n\n - hostfs_fsync:\n\n\tjust calls fsync/datasync on the host FD.  Without the wait before\n\tdata might not even be inflight yet if we\u0027re unlucky.\n\n - hpfs_file_fsync:\n - ncp_fsync:\n\n\tno-ops.  Dangerous before and after.\n\n - jffs2_fsync:\n\n\tjust calls jffs2_flush_wbuf_gc, not sure how this relates to data.\n\n - nfs_fsync_dir:\n\n\tjust increments stats, claims all directory operations are synchronous\n\n - nfs_file_fsync:\n\n\tonly writes out data???  Looks very odd.\n\n - nilfs_sync_file:\n\n\tlooks like it expects all data done, but not sure from the code\n\n - ntfs_dir_fsync:\n - ntfs_file_fsync:\n\n\tappear to do their own data writeback.  Very convoluted code.\n\n - ocfs2_sync_file:\n\n\tdoes it\u0027s own data writeback, but no wait.  probably needs the wait.\n\n - smb_fsync:\n\n\taccording to a comment expects all pages written already, probably needs\n\tthe wait before.\n\nThis patch only changes vfs_fsync_range, removal of the wait in the methods\nthat have it is left to the filesystem maintainers.  Note that most\nfilesystems really do need an audit for their fsync methods given the\ngems found in this very brief audit.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "18f2ee705d98034b0f229a3202d827468d4bffd9",
      "tree": "1da282e5eb90dc8e8a1e46214e0e7639138d3568",
      "parents": [
        "2f3d675bcd4a84251d6e8eea8096ec8fc795e5d6"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 18 18:43:15 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:17 2009 +0200"
      },
      "message": "vfs: Remove generic_osync_inode() and sync_page_range{_nolock}()\n\nRemove these three functions since nobody uses them anymore.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "2f3d675bcd4a84251d6e8eea8096ec8fc795e5d6",
      "tree": "3b186e4960d4553fac577be5f1def6d17196beca",
      "parents": [
        "aa3caafe53cab7ef60605e481cd5d7943e1c3022"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 17 17:00:02 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:17 2009 +0200"
      },
      "message": "fat: Opencode sync_page_range_nolock()\n\nfat_cont_expand() is the only user of sync_page_range_nolock(). It\u0027s also the\nonly user of generic_osync_inode() which does not have a file open.  So\nopencode needed actions for FAT so that we can convert generic_osync_inode() to\na standard syncing path.\n\nUpdate a comment about generic_osync_inode().\n\nCC: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "aa3caafe53cab7ef60605e481cd5d7943e1c3022",
      "tree": "b3723d4c31c84a8b0f74d1d4e920d9ba1c867915",
      "parents": [
        "af0f4414f343429971d33b0dd8dccc85c1f3dcd2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 18 18:38:45 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:17 2009 +0200"
      },
      "message": "pohmelfs: Use new syncing helper\n\nUse new generic_write_sync() helper instead of sync_page_range().\n\nAcked-by: Evgeniy Polyakov \u003czbr@ioremap.net\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "af0f4414f343429971d33b0dd8dccc85c1f3dcd2",
      "tree": "1b053812591d19f618240672eb74fd74912c29c1",
      "parents": [
        "d23c937b0f740888765676f6f82f509dbbb2bbad"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 18 18:32:55 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:17 2009 +0200"
      },
      "message": "xfs: Convert sync_page_range() to simple filemap_write_and_wait_range()\n\nChristoph Hellwig says that it is enough for XFS to call\nfilemap_write_and_wait_range() instead of sync_page_range() because we do\nall the metadata syncing when forcing the log.\n\nCC: Felix Blyakher \u003cfelixb@sgi.com\u003e\nCC: xfs@oss.sgi.com\nCC: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "d23c937b0f740888765676f6f82f509dbbb2bbad",
      "tree": "df4e085d935805f54061436ee820460c79143087",
      "parents": [
        "ebbbf757c6b8577ac2fb6181c08c2059153bb0e2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 18 18:24:31 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:16 2009 +0200"
      },
      "message": "ocfs2: Update syncing after splicing to match generic version\n\nUpdate ocfs2 specific splicing code to use generic syncing helper. The sync now\ndoes not happen under rw_lock because generic_write_sync() acquires i_mutex\nwhich ranks above rw_lock. That should not matter because standard fsync path\ndoes not hold it either.\n\nAcked-by: Joel Becker \u003cJoel.Becker@oracle.com\u003e\nAcked-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nCC: ocfs2-devel@oss.oracle.com\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "ebbbf757c6b8577ac2fb6181c08c2059153bb0e2",
      "tree": "0c29915bd629c4faf314d052b003a5dab19d6f74",
      "parents": [
        "0d34ec62e18984ac9476208660372306ef54e70d"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 18 18:13:58 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:16 2009 +0200"
      },
      "message": "ntfs: Use new syncing helpers and update comments\n\nUse new syncing helpers in .write and .aio_write functions. Also\nremove superfluous syncing in ntfs_file_buffered_write() and update\ncomments about generic_osync_inode().\n\nCC: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCC: linux-ntfs-dev@lists.sourceforge.net\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "0d34ec62e18984ac9476208660372306ef54e70d",
      "tree": "7b75d266b832bb8457369082fba86456ef88e568",
      "parents": [
        "e367626b6164aeecb97fb7c20509ed8696babc26"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 18 17:48:27 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:16 2009 +0200"
      },
      "message": "ext4: Remove syncing logic from ext4_file_write\n\nThe syncing is now properly handled by generic_file_aio_write() so\nno special ext4 code is needed.\n\nCC: linux-ext4@vger.kernel.org\nCC: tytso@mit.edu\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "e367626b6164aeecb97fb7c20509ed8696babc26",
      "tree": "e69721734412f9373aea87297c4ff9450cf55308",
      "parents": [
        "a2a735ad666a04306a708b5a0109cc1fe113f569"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 18 17:51:23 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:16 2009 +0200"
      },
      "message": "ext3: Remove syncing logic from ext3_file_write\n\nSyncing is now properly done by generic_file_aio_write() so no special logic is\nneeded in ext3.\n\nCC: linux-ext4@vger.kernel.org\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "a2a735ad666a04306a708b5a0109cc1fe113f569",
      "tree": "1b880e0e8eb9e9b019d3e6443751cd56e5fe3d58",
      "parents": [
        "148f948ba877f4d3cdef036b1ff6d9f68986706a"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 18 17:54:11 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:16 2009 +0200"
      },
      "message": "ext2: Update comment about generic_osync_inode\n\nWe rely on generic_write_sync() now.\n\nCC: linux-ext4@vger.kernel.org\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "148f948ba877f4d3cdef036b1ff6d9f68986706a",
      "tree": "c07963f08bf8c2119ec00df64e4293e2e60acaa1",
      "parents": [
        "eef99380679e20e7edc096aa4d8a98b875404d79"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 17 19:52:36 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:15 2009 +0200"
      },
      "message": "vfs: Introduce new helpers for syncing after writing to O_SYNC file or IS_SYNC inode\n\nIntroduce new function for generic inode syncing (vfs_fsync_range) and use\nit from fsync() path. Introduce also new helper for syncing after a sync\nwrite (generic_write_sync) using the generic function.\n\nUse these new helpers for syncing from generic VFS functions. This makes\nO_SYNC writes to block devices acquire i_mutex for syncing. If we really\ncare about this, we can make block_fsync() drop the i_mutex and reacquire\nit before it returns.\n\nCC: Evgeniy Polyakov \u003czbr@ioremap.net\u003e\nCC: ocfs2-devel@oss.oracle.com\nCC: Joel Becker \u003cjoel.becker@oracle.com\u003e\nCC: Felix Blyakher \u003cfelixb@sgi.com\u003e\nCC: xfs@oss.sgi.com\nCC: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCC: linux-ntfs-dev@lists.sourceforge.net\nCC: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCC: linux-ext4@vger.kernel.org\nCC: tytso@mit.edu\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "eef99380679e20e7edc096aa4d8a98b875404d79",
      "tree": "358a39148e8513eed9ba6aaff13f6bf660a2ce1e",
      "parents": [
        "918941a3f3d46c2a69971b4718aaf13b1be2f1a7"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Aug 20 17:43:41 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:15 2009 +0200"
      },
      "message": "vfs: Rename generic_file_aio_write_nolock\n\ngeneric_file_aio_write_nolock() is now used only by block devices and raw\ncharacter device. Filesystems should use __generic_file_aio_write() in case\ngeneric_file_aio_write() doesn\u0027t suit them. So rename the function to\nblkdev_aio_write() and move it to fs/blockdev.c.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "918941a3f3d46c2a69971b4718aaf13b1be2f1a7",
      "tree": "3ef80cb4b8107be981cc87904c7e80c0e383e5e5",
      "parents": [
        "b04f932171e8a99bb8ca2f863b2b9eadb85741e8"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 17 18:50:08 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 14 17:08:15 2009 +0200"
      },
      "message": "ocfs2: Use __generic_file_aio_write instead of generic_file_aio_write_nolock\n\nUse the new helper. We have to submit data pages ourselves in case of O_SYNC\nwrite because __generic_file_aio_write does not do it for us. OCFS2 developpers\nmight think about moving the sync out of i_mutex which seems to be easily\npossible but that\u0027s out of scope of this patch.\n\nCC: ocfs2-devel@oss.oracle.com\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    }
  ],
  "next": "b04f932171e8a99bb8ca2f863b2b9eadb85741e8"
}
