)]}'
{
  "log": [
    {
      "commit": "bde69af2ab696eebfac9583ea1e8a46b571e317f",
      "tree": "1f1d6b75c91a6e6a989251af2f3ead5908d8647b",
      "parents": [
        "5c0b912e755caaad555eb6feefdb1124462d8f37"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:29:06 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:56 2009 +0200"
      },
      "message": "[S390] Wire up page fault events for software perf counters.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "5c0b912e755caaad555eb6feefdb1124462d8f37",
      "tree": "94911d8d9a9cb53faeb78bb2396984f64c31f2c2",
      "parents": [
        "e86a6ed63f46fe8fb555fda531084bca3ef62fd7"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:29:05 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:56 2009 +0200"
      },
      "message": "[S390] Remove smp_cpu_not_running.\n\nsmp_cpu_not_running() and cpu_stopped() are doing the same.\nRemove one and also get rid of the last hard_smp_processor_id() leftover.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e86a6ed63f46fe8fb555fda531084bca3ef62fd7",
      "tree": "8024574e6ac2bf6a9bb505e64e4c73d639578088",
      "parents": [
        "4bb5e07b68565d7983108993aa23eccf5f1b35fe"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:29:04 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:56 2009 +0200"
      },
      "message": "[S390] Get rid of cpuid.h header file.\n\nMerge cpuid.h header file into cpu.h.\nWhile at it convert from typedef to struct declaration and also\nconvert cio code to use proper lowcore structure instead of casts.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "4bb5e07b68565d7983108993aa23eccf5f1b35fe",
      "tree": "a76f2d5933cc8d90878f3df2d29f09fbd952daca",
      "parents": [
        "53f8c573ea3b54b7e1b81d2cd403373b08103736"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:29:03 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:55 2009 +0200"
      },
      "message": "[S390] Limit cpu detection to 256 physical cpus.\n\nSaves us more than 65k pointless IPIs.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "53f8c573ea3b54b7e1b81d2cd403373b08103736",
      "tree": "85e8e2aa766b1cc732839af6f3b3be418fcb9389",
      "parents": [
        "2ddddf3e0a55a7fcd6f240a7416cfcb12dd38b7e"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:29:02 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:55 2009 +0200"
      },
      "message": "[S390] tape: Fix device online messages\n\nCurrently, when a tape device is set online and no cartridge is loaded, we\nget the messages \"The tape cartridge has been successfully unloaded\" and\n\"Determining the size of the recorded area\". These messages are not correct.\nTo fix this, we now print the \"cartridge loaded/unloaded\" messages only,\nwhen the load/unload event really occurs. In addition to that, the message\n\"Determining the size of the recorded area\" is only printed, if a cartridge\nis loaded.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "2ddddf3e0a55a7fcd6f240a7416cfcb12dd38b7e",
      "tree": "d1c923319164723d8d46450c5a01ff85d8847b83",
      "parents": [
        "5dd1d2ece0250125fec2dcccbfb8ab9bb2ac020c"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:29:01 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:54 2009 +0200"
      },
      "message": "[S390] Enable guest page hinting by default.\n\nGet rid of the PAGE_STATES config option and enable guest page hinting\nby default.\nIt can be disabled by specifying \"cmma\u003doff\" at the command line.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "5dd1d2ece0250125fec2dcccbfb8ab9bb2ac020c",
      "tree": "1527783844568bc57b7ce6e9c7c60a892c594e06",
      "parents": [
        "f64d04c042193183c6dad98944ae2861b998e8b7"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:29:00 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:54 2009 +0200"
      },
      "message": "[S390] use generic scatterlist.h\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f64d04c042193183c6dad98944ae2861b998e8b7",
      "tree": "d275472a5559e0333c8c55dfe418e3e30108b8bc",
      "parents": [
        "0c88ee5b7523e76e290d558c28cd0be48ffad597"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:59 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:53 2009 +0200"
      },
      "message": "[S390] s390dbf: Add description for usage of \"%s\" in sprintf events\n\nUsing \"%s\" in sprintf event functions is dangerous. This patch adds a short\ndescription for this issue to the s390 debug feature documentation.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "0c88ee5b7523e76e290d558c28cd0be48ffad597",
      "tree": "c603735c1012c231a4cc2d315bb30f795e1c4781",
      "parents": [
        "50aa98bad056a17655864a4d71ebc32d95c629a7"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:58 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:53 2009 +0200"
      },
      "message": "[S390] Initialize __LC_THREAD_INFO early.\n\n\"lockdep: Fix backtraces\" reveales a bug in early setup code: when\nlockdep tries to save a stack backtrace before setup_arch has been\ncalled the lowcore pointer for the current thread info pointer isn\u0027t\ninitialized yet.\nHowever our save stack backtrace code relies on it. If the pointer\nisn\u0027t initialized the saved backtrace will have zero entries.\nlockdep however relies (correctly) on the fact that that cannot\nhappen.\nA write access to some random memory region is the result.\n\nFix this by initializing the thread info pointer early.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "50aa98bad056a17655864a4d71ebc32d95c629a7",
      "tree": "bf8d22851d99583e2ea388766697bf64672d7926",
      "parents": [
        "c4de0c1a18237c2727dde8ad392e333539b0af3c"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:28:57 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:53 2009 +0200"
      },
      "message": "[S390] fix recursive locking on page_table_lock\n\nSuzuki Poulose reported the following recursive locking bug on s390:\n\nHere is the stack trace : (see Appendix I for more info)\n\n  [\u003c0000000000406ed6\u003e] _spin_lock+0x52/0x94\n  [\u003c0000000000103bde\u003e] crst_table_free+0x14e/0x1a4\n  [\u003c00000000001ba684\u003e] __pmd_alloc+0x114/0x1ec\n  [\u003c00000000001be8d0\u003e] handle_mm_fault+0x2cc/0xb80\n  [\u003c0000000000407d62\u003e] do_dat_exception+0x2b6/0x3a0\n  [\u003c0000000000114f8c\u003e] sysc_return+0x0/0x8\n  [\u003c00000200001642b2\u003e] 0x200001642b2\n\nThe page_table_lock is already acquired in __pmd_alloc (mm/memory.c) and\nit tries to populate the pud/pgd with a new pmd allocated. If another\nthread populates it before we get a chance, we free the pmd using\npmd_free().\n\nOn s390x, pmd_free(even pud_free ) is #defined to crst_table_free(),\nwhich acquires the page_table_lock to protect the crst_table index updates.\n\nHence this ends up in a recursive locking of the page_table_lock.\n\nThe solution suggested by Dave Hansen is to use a new spin lock in the mmu\ncontext to protect the access to the crst_list and the pgtable_list.\n\nReported-by: Suzuki Poulose \u003csuzuki@in.ibm.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c4de0c1a18237c2727dde8ad392e333539b0af3c",
      "tree": "acd3d458f12f401317d751408a1c3c77a8004b43",
      "parents": [
        "68d36bdbf6377d36129b2c6bcbe9d24c5fb1739a"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:56 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:52 2009 +0200"
      },
      "message": "[S390] kvm: use console_initcall() to initialize s390 virtio console\n\nUse a console_initcall() to initialize the s390 virtio console and\nclean up s390 console initialization in setup.c.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nTested-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "68d36bdbf6377d36129b2c6bcbe9d24c5fb1739a",
      "tree": "6337a0eea07f6b0e777baec57adcb8e6dc76d107",
      "parents": [
        "ad2a5d8e0b518f997af126dd737127bdada90a6f"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Fri Sep 11 10:28:55 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:52 2009 +0200"
      },
      "message": "[S390] tape: reversed order of labels\n\nFix the order of goto labels in tape_generic_online.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\n"
    },
    {
      "commit": "ad2a5d8e0b518f997af126dd737127bdada90a6f",
      "tree": "bf788cde75d27907c1308955f67bb6e9e50e7dd2",
      "parents": [
        "11af97e18ea8c310d73b59f1361e6f04444e05a8"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:54 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:51 2009 +0200"
      },
      "message": "[S390] hypfs: Use \"%u\" instead of \"%d\" for unsigned ints in snprintf\n\nFor printing unsigned integers hypfs uses \"%d\" in snprintf(). This is wrong.\nWith this patch \"%u\" is used instead.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "11af97e18ea8c310d73b59f1361e6f04444e05a8",
      "tree": "966dab912e7f64b686c1ebfb2a652321ca66dd65",
      "parents": [
        "edc44fa03ed7bc9847787e080190cf1d7ed68ceb"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:53 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:51 2009 +0200"
      },
      "message": "[S390] kernel: Print an error message if kernel NSS cannot be defined\n\nIf a named saved system (NSS) cannot be defined or saved, print out an\nerror message with the return code of the underlying z/VM CP command.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "edc44fa03ed7bc9847787e080190cf1d7ed68ceb",
      "tree": "78b6b02e04c0edd32d123cf7ab78b333660f5d90",
      "parents": [
        "95f1556c35529a162cef50296f3dc7f978852048"
      ],
      "author": {
        "name": "Felix Beck",
        "email": "felix.beck@de.ibm.com",
        "time": "Fri Sep 11 10:28:52 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:51 2009 +0200"
      },
      "message": "[S390] zcrypt: Free ap_device if dev_set_name fails.\n\nIf dev_set_name fails during scanning the AP bus, the reserved memory\nhas to be freed.\n\nSigned-off-by: Felix Beck \u003cfelix.beck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "95f1556c35529a162cef50296f3dc7f978852048",
      "tree": "944c4b85251436ab88e49e2192f0b5c75b1a2c9e",
      "parents": [
        "99b5e2d3d7ae8f5a2dba7a41a02ba7eb25523b3f"
      ],
      "author": {
        "name": "Felix Beck",
        "email": "felix.beck@de.ibm.com",
        "time": "Fri Sep 11 10:28:51 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:50 2009 +0200"
      },
      "message": "[S390] zcrypt: Use spin_lock_bh in suspend callback\n\nFix lock dependency warning.\n\ninconsistent {IN-SOFTIRQ-W} -\u003e {SOFTIRQ-ON-W} usage.\nbash/1442 [HC0[0]:SC0[0]:HE1:SE1] takes:\n (\u0026ap_dev-\u003elock){+.?...}, at: [\u003c000003e001280404\u003e] __ap_poll_device+0x40/0x3e8 [ap]\n{IN-SOFTIRQ-W} state was registered at:\n  [\u003c000000000017f094\u003e] __lock_acquire+0xb78/0x182c\n  [\u003c000000000017fe8e\u003e] lock_acquire+0x146/0x178\n  [\u003c0000000000549cf2\u003e] _spin_lock+0x5a/0x98\n  [\u003c000003e001280404\u003e] __ap_poll_device+0x40/0x3e8 [ap]\n  [\u003c000003e001280afe\u003e] ap_poll_all+0xaa/0x1a4 [ap]\n  [\u003c000000000014fa82\u003e] tasklet_action+0xfe/0x1f4\n  [\u003c0000000000150a56\u003e] __do_softirq+0x116/0x284\n  [\u003c0000000000111058\u003e] do_softirq+0xe4/0xe8\n  [\u003c00000000001504ba\u003e] irq_exit+0xba/0xd8\n  [\u003c00000000003dd04a\u003e] do_IRQ+0x176/0x1fc\n  [\u003c000000000011823c\u003e] io_return+0x0/0x8\n  [\u003c0000004bfbfd2c0e\u003e] 0x4bfbfd2c0e\n\nSigned-off-by: Felix Beck \u003cfelix.beck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "99b5e2d3d7ae8f5a2dba7a41a02ba7eb25523b3f",
      "tree": "80177d3f079116272be2b9b25fcf3d1d54c7a5e5",
      "parents": [
        "3f7cb51fac60618aa543058a90e668956d5fb518"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:50 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:50 2009 +0200"
      },
      "message": "[S390] xpram: Remove checksum validation for suspend/resume\n\nCurrently in the suspend process checksums for the XPRAM partitions are\ncreated and stored. During the resume process it is checked,\nif the checksums are still the same. If this is not the case, a kernel panic\nis triggered. Unfortunately this prevents XPRAM from beeing used as suspend\ndevice, because in this case after the checksum has been created, the\nmemory image is written to XPRAM and therefore the contents of the suspend\npartition is changed. In order to allow XPRAM to be used as suspend device,\nthis patch removes the checksum validation.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3f7cb51fac60618aa543058a90e668956d5fb518",
      "tree": "fb3744e543eb10d1ad7e750a08a4bc338cd297fc",
      "parents": [
        "2395ecd98f028b16a6200eb81108a0f67461d16b"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:49 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:49 2009 +0200"
      },
      "message": "[S390] vmur: Invalid allocation sequence for vmur class\n\nThe vmur class is allocated after the CCW driver is registered\nand it is destroyed before the CCW driver is unregistered.\nThis is not the correct sequence, because the vmur class can be used\nvia driver core callbacks that are triggered during the CCW driver\nderegistration. For Example:\n\n1. vmur device is online\n2. vmur module is unloaded\n\nThis leads to the following function call stack:\n\n    \u003c4\u003e [\u003c0000000000387286\u003e] device_destroy+0x36/0x5c\n    \u003c4\u003e [\u003c000003e000209714\u003e] ur_set_offline_force+0x9c/0x10c [vmur]\n    \u003c4\u003e [\u003c000003e00020a928\u003e] ur_remove+0x64/0xbc [vmur]\n    \u003c4\u003e [\u003c00000000003e4d2e\u003e] ccw_device_remove+0x42/0x1ac\n    \u003c4\u003e [\u003c000000000038a1aa\u003e] __device_release_driver+0x9a/0xe4\n    \u003c4\u003e [\u003c000000000038a2da\u003e] driver_detach+0xe6/0xec\n    \u003c4\u003e [\u003c0000000000388ee4\u003e] bus_remove_driver+0xc0/0x108\n    \u003c4\u003e [\u003c000003e00020ad5a\u003e] ur_exit+0x52/0x84 [vmur]\n\nIn device_destroy() the vmur class is used. Since it is already freed,\nthis can lead to a kernel panic.\n\nTo fix the problem, the vmur class has to be allocated before the CCW\ndriver is registered and destroyed after the CCW driver has ben unregistered.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "2395ecd98f028b16a6200eb81108a0f67461d16b",
      "tree": "bcd30764897a84cedf22b57ff7761509f669c32d",
      "parents": [
        "c114728af2acdca0bd8b1d2f5792e393c775f5fc"
      ],
      "author": {
        "name": "Vitaliy Gusev",
        "email": "vgusev@openvz.org",
        "time": "Fri Sep 11 10:28:48 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:49 2009 +0200"
      },
      "message": "[S390] hypfs: remove useless variable qname\n\nLocal variable \u0027qname\u0027 in the function hypfs_create_file() really is not\nused for any purpose.\n\nSigned-off-by: Vitaliy Gusev \u003cvgusev@openvz.org\u003e\nCc: Michael Holzheu \u003cholzheu@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c114728af2acdca0bd8b1d2f5792e393c775f5fc",
      "tree": "7c4b6c31b66a8a7fd0806a3a786b540721a9d418",
      "parents": [
        "275c340941991a925969c03ec6b900fd135d09dd"
      ],
      "author": {
        "name": "Hans-Joachim Picht",
        "email": "hans@de.ibm.com",
        "time": "Fri Sep 11 10:28:47 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:49 2009 +0200"
      },
      "message": "[S390] add call home support\n\nSigned-off-by: Hans-Joachim Picht \u003chans@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "275c340941991a925969c03ec6b900fd135d09dd",
      "tree": "b7491a277ef248b31fc5952cf8097a02ed7fa565",
      "parents": [
        "d3135e0c40c9a13ad0c57783f2b9569c4c00bd26"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Sep 11 10:28:46 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:48 2009 +0200"
      },
      "message": "[S390] remove unused irq_cpustat_t defintion\n\nNo need to defined a irq_cpustat_t type if __ARCH_IRQ_STAT is defined.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d3135e0c40c9a13ad0c57783f2b9569c4c00bd26",
      "tree": "93ff9924ef63c4ef36d9c3dcd5499a57217a9bba",
      "parents": [
        "04a95f6df9d7753098729ef1464e38552627af9d"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:45 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:48 2009 +0200"
      },
      "message": "[S390] kernel: always keep machine flags in lowcore\n\nEleminate the local variable machine_flags and always change machine\nflags directly in the lowcore.\nThis avoids confusion about when and why the two variables have to be\nsynchronized.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "04a95f6df9d7753098729ef1464e38552627af9d",
      "tree": "d6047ecc706157e71790ec197973177b6029b0d4",
      "parents": [
        "26803144666bd2155a19392fa58a7d512d9c0962"
      ],
      "author": {
        "name": "Nelson Elhage",
        "email": "nelhage@ksplice.com",
        "time": "Fri Sep 11 10:28:44 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:48 2009 +0200"
      },
      "message": "[S390] clean up linker script using new linker script macros.\n\nNote that this patch moves .data.init_task inside _edata.  In\naddition, the alignment of .init.ramfs changes: It is now PAGE_ALIGNED\nand __initramfs_end is arbitrarily aligned; Previously it was\nonly aligned to a 0x100-byte boundary, and always ended on an even\nbyte.\n\nThis change results in fewer output sections and in some data being\nreordered, but should have no functional effect.\n\nSigned-off-by: Nelson Elhage \u003cnelhage@ksplice.com\u003e\nSigned-off-by: Tim Abbott \u003ctabbott@ksplice.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: linux-s390@vger.kernel.org\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "26803144666bd2155a19392fa58a7d512d9c0962",
      "tree": "983681436c30200e0d1cb34d8f4a3a4ee03ae906",
      "parents": [
        "a8c3cb4955d1a051732ead9ecf8bcffc8e7c039d"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@ksplice.com",
        "time": "Fri Sep 11 10:28:43 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:47 2009 +0200"
      },
      "message": "[S390] Use macros for .data.page_aligned.\n\n.data.page_aligned should not need a separate output section, so as\npart of this cleanup I moved into the .data output section in the\nlinker scripts in order to eliminate unnecessary references to the\nsection name.\n\nRemove the reference to .data.idt, since nothing is put into the\n.data.idt section on the s390 architecture.  It looks like Cyrill\nGorcunov posted a patch to remove the .data.idt code on s390\npreviously:\n\n\u003chttp://lkml.indiana.edu/hypermail/linux/kernel/0802.2/2536.html\u003e\n\nCCing him and the people who acked that patch in case there\u0027s a reason\nit wasn\u0027t applied.\n\nSigned-off-by: Tim Abbott \u003ctabbott@ksplice.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nAcked-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a8c3cb4955d1a051732ead9ecf8bcffc8e7c039d",
      "tree": "434c789a7b4e3484ef077f1185d09924ee93d3c6",
      "parents": [
        "18d00acfe2f3fc5ee62f679eb2e397ae962fe69b"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:42 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:47 2009 +0200"
      },
      "message": "[S390] move (io|sysc)_restore_trace_psw into .data section\n\nThe sysc_restore_trace_psw and io_restore_trace_psw storage locations\nare created in the .text section. When creating and IPLing from a named\nsaved system (NSS), writing to these locations causes a protection exception\n(because the .text section is mapped as shared read-only in the NSS).\n\nTo permit write access, move the storage locations into the .data section.\n\nThe problem occurs only when CONFIG_TRACE_IRQFLAGS is set.\nThe git commmit that has introduced these variables is:\n411788ea7fca01ee803af8225ac35807b4d02050\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "18d00acfe2f3fc5ee62f679eb2e397ae962fe69b",
      "tree": "beb18427dba544c4ace628980bf445564b85e765",
      "parents": [
        "684d2fd48e718e70dad21ef7c528649578147e48"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:41 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:46 2009 +0200"
      },
      "message": "[S390] kernel: Convert upper case scpdata to lower case\n\nIf the CP SET LOADDEV on the 3215 console has been used to specify\nSCPdata, all data is converted to upper case letters.\n\nWhen scpdata contains upper case letters only, convert all letters\nto lower case.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "684d2fd48e718e70dad21ef7c528649578147e48",
      "tree": "d830bd35b8871f29998dbeada751e07e310ddac8",
      "parents": [
        "6292b9ef5a4e85d6b782412a85725dd38df24b85"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:40 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:46 2009 +0200"
      },
      "message": "[S390] kernel: Append scpdata to kernel boot command line\n\nAppend scpdata to the kernel boot command line. If scpdata starts\nwith the equal sign (\u003d), the kernel boot command line is replaced.\n(For consistency with zIPL and IPL PARM parameters.)\n\nTo use scpdata for the kernel boot command line, scpdata must consist\nof ascii characters only. If scpdata contains other characters,\nscpdata is not appended to the kernel boot command line.\nIn addition, re-IPL is extended for setting scpdata for the next\nLinux reboot.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6292b9ef5a4e85d6b782412a85725dd38df24b85",
      "tree": "6e38da48f3763ab18d6807f3c8d931886dac80b5",
      "parents": [
        "c6304933274f8e3cc6983d496456757ac8ab2e0b"
      ],
      "author": {
        "name": "Frank Munzert",
        "email": "munzert@de.ibm.com",
        "time": "Fri Sep 11 10:28:39 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:46 2009 +0200"
      },
      "message": "[S390] tape: use init_timer_on_stack() rather than init_timer()\n\nWith CONFIG_DEBUG_OBJECTS_TIMERS\u003dy \"chccwdev --online\" for a tape device\nwill fail with message \"ODEBUG: object is on stack, but not annotated\".\nWe now use init_timer_on_stack.\n\nSigned-off-by: Frank Munzert \u003cmunzert@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c6304933274f8e3cc6983d496456757ac8ab2e0b",
      "tree": "7d9135cc2f391141650cc2d1740bd276a25f6141",
      "parents": [
        "c48ff644f2c86f34f69f382b68b16c6d30854783"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:38 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:45 2009 +0200"
      },
      "message": "[S390] proper use of device register\n\nDon\u0027t use kfree directly after device registration started.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c48ff644f2c86f34f69f382b68b16c6d30854783",
      "tree": "606db1e957310db21f293f621f1bae08714ec285",
      "parents": [
        "f3d1263e81daf2be1353baf1ad3f6e25d135f2c5"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:37 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:45 2009 +0200"
      },
      "message": "[S390] hibernation: merge files and move to kernel/\n\nMerge the nearly empty C files and move everything from power/ to\nkernel/. That way the files are easier to handle.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f3d1263e81daf2be1353baf1ad3f6e25d135f2c5",
      "tree": "ae307a675ee4e367496169cebea91d4635f6ca1f",
      "parents": [
        "bfe3349b516df011dcf6462b0fd748a6f5c2e8af"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:36 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:44 2009 +0200"
      },
      "message": "[S390] hibernation: remove dead file\n\nThere is no caller of do_after_copyback() anywhere. Remove it.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "bfe3349b516df011dcf6462b0fd748a6f5c2e8af",
      "tree": "145d25ab22cf3974c0f5b8d6be711900fe730989",
      "parents": [
        "12751058515860ed43c8f874ebcb2097b323736a"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:35 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:44 2009 +0200"
      },
      "message": "[S390] atomic ops: small cleanups\n\nCouple of coding style fixes, replace __inline__ with inline and\nremove #ifdef __KERNEL_- since the header file isn\u0027t exported.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "12751058515860ed43c8f874ebcb2097b323736a",
      "tree": "491ec6fe0b0f16da7f05f4edc924ba9a60986588",
      "parents": [
        "6ac2a4ddd10d6916785b4c566d521025c855f823"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:34 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:43 2009 +0200"
      },
      "message": "[S390] atomic ops: add effecient atomic64 support for 31 bit\n\nUse compare double and swap to implement efficient atomic64 ops for 31 bit.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6ac2a4ddd10d6916785b4c566d521025c855f823",
      "tree": "cc86ab5c9fcb076e2b825b405081a679b3a52a9f",
      "parents": [
        "04efc3be767cfed0d348fd598eba8fe5f5bf5fe6"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:28:33 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:43 2009 +0200"
      },
      "message": "[S390] improve mcount code\n\nMove the 64 bit mount code from mcount.S into mcount64.S and avoid\ncode duplication.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "04efc3be767cfed0d348fd598eba8fe5f5bf5fe6",
      "tree": "53a6509f836e2f85c34e5a3af66fa9fbff910f77",
      "parents": [
        "05e7ff7da78bad3edc1290ed86b4a37da72ced62"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:32 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:43 2009 +0200"
      },
      "message": "[S390] convert/optimize csum_fold() to C\n\nIn the meantime gcc generates better code than the old inline\nassemblies do. Original inline assembly results in:\n\nlr\t%r1,%r2\nsr\t%r3,%r3\nlr\t%r2,%r1\nsrdl\t%r2,16\nalr\t%r2,%r3\nalr\t%r1,%r2\nsrl\t%r1,16\nxilf\t%r1,65535\nllghr\t%r2,%r1\nbr\t%r14\n\nOut of the C code gcc generates this:\n\nrll\t%r1,%r2,16\nar\t%r1,%r2\nsrl\t%r1,16\nxilf\t%r1,65535\nllghr\t%r2,%r1\nbr\t%r14\n\nIn addition we don\u0027t have any static register allocations anymore and\ngcc is free to shuffle instructions around for better pipeline usage.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "05e7ff7da78bad3edc1290ed86b4a37da72ced62",
      "tree": "f7348a9f4f561a53465abea731c2ef59900fd62f",
      "parents": [
        "ca99dab01dd63dcc413395bd3e75b0be152dfefc"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:31 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:42 2009 +0200"
      },
      "message": "[S390] introduce get_clock_monotonic\n\nIntroduce get_clock_monotonic() function which can be used to get a\n(fast) timestamp. Resolution is the same as for get_clock(). The\nonly difference is that the timestamps are monotonic and don\u0027t jump\nbackward or forward.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ca99dab01dd63dcc413395bd3e75b0be152dfefc",
      "tree": "a78164184f26e153f2e7c98fa866b5f3755d3213",
      "parents": [
        "68b781fe1bed89011ab7c58ede8476abe64432d2"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Sep 11 10:28:30 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:42 2009 +0200"
      },
      "message": "[S390] dasd: fix message naming\n\nThis patch fixes message naming so that generic dasd messages do not\ncontain the device discipline. For this purpose the dev_ makros are\nreplaced by pr_ makros for generic dasd messages.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "68b781fe1bed89011ab7c58ede8476abe64432d2",
      "tree": "afe2148854aa2f4eae370a2cf1855f80a9b5a8cb",
      "parents": [
        "97f604b07473669f4da52b1f859ee45e8d48d42a"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Sep 11 10:28:29 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:41 2009 +0200"
      },
      "message": "[S390] dasd: optimize cpu usage in goodcase\n\nremove unnecessary dbf call, remove string operations for magic\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "97f604b07473669f4da52b1f859ee45e8d48d42a",
      "tree": "b93604552144e1e743b988ce343ae35a9a5a6559",
      "parents": [
        "3ac276f8cb020adbbc3399c47edc1100748c2c16"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Fri Sep 11 10:28:28 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:41 2009 +0200"
      },
      "message": "[S390] dasd: fail requests when device state is less then ready\n\nA DASD device that is not ready or online has no defined disk layout,\nso all requests that arrive in such a state need to be returned as\nfailed.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3ac276f8cb020adbbc3399c47edc1100748c2c16",
      "tree": "29fd488b61bcc9ece510f10d4c1bb4966e664b1a",
      "parents": [
        "3b554a14f4bdf754ba9d2f64c2b6edf8dafe93b9"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:27 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:41 2009 +0200"
      },
      "message": "[S390] cio: remove ccw_device init_name\n\nWe used the init_name to set the console ccw_device\u0027s name early\nat the boot stage. This patch moves the name setting (for all ccw\ndevices) to the point where we actually register the device. At this\ntime we can do dynamic allocations and therefore use dev_set_name.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3b554a14f4bdf754ba9d2f64c2b6edf8dafe93b9",
      "tree": "a01fc109cd60297d404e0e21f7457bd8e15f372b",
      "parents": [
        "6ee4fec6be06f7d138860b37cba58982cc3ccb16"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:26 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:40 2009 +0200"
      },
      "message": "[S390] cio: move final put_device to ccw_device_unregister\n\nWe use a test_and_clear_bit to prevent a device from being\nunregistered twice. Unfortunately in this cases the \"final\"\nput_device (from device_initialize) was issued more than once,\nresulting in an use after free error. Fix this by moving this\nput_device to ccw_device_unregister.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6ee4fec6be06f7d138860b37cba58982cc3ccb16",
      "tree": "51e7e2e1223d95f3c2d7a4a33c8f84758fe8690c",
      "parents": [
        "ab6aae09024be1b039df441fa1b64dbe092d0acb"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:25 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:40 2009 +0200"
      },
      "message": "[S390] cio: remove subchannel init_name\n\nWe used the init_name to set the console subchannels name early\nat the boot stage. With the patch cio: fix memleak in subchannel validation\nwe moved the name setting to the point where we actually register the\nconsole subchannel. At this time we can do dynamic allocations and therefore\nuse dev_set_name.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ab6aae09024be1b039df441fa1b64dbe092d0acb",
      "tree": "92f2d8612665b7c8257c48b61de7bce850012556",
      "parents": [
        "f014824ee72e66292c3b1172dc142f959b42e61b"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:24 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:39 2009 +0200"
      },
      "message": "[S390] cio: fix memleak in subchannel validation\n\nWhen scanning for new subchannels we have a code path where we allocate\nmemory for a struct subchannel, set the device name (which is dynamically\nallocated now) and do a check if the underlying device is blacklisted - if\nso we free the subchannel structure.\nSince we have not set up refcounting at this stage, the device name\u0027s memory\nis lost. Fix this by moving the dev_set_name after the blacklist test.\n\nNote: With this patch the init_name for the console subchannel becomes\nvirtually obsolete.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f014824ee72e66292c3b1172dc142f959b42e61b",
      "tree": "34281651ecca3279d55df0db7fc28f942841319d",
      "parents": [
        "3f09bb8965cefe36f42a9ec09ebb821523eba530"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:23 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:39 2009 +0200"
      },
      "message": "[S390] cio: fix use after free in s390 debug feature\n\nWhen using s390dbf with \"%s\" in sprintf format strings the string itself\nis not copied to the dbf buffer.\nSince in this case only pointers are stored in the s390dbf, we should\nnot use dev_name - which is bound to the lifetime of the device.\nReading this entry from s390dbf after the device was released will cause\nan use after free error.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3f09bb8965cefe36f42a9ec09ebb821523eba530",
      "tree": "aa339abba1fad6f05e56c0fb9df141959a10e499",
      "parents": [
        "217ee6c64a9589bc5ad4d1c88136fc359d17930b"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:22 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:39 2009 +0200"
      },
      "message": "[S390] qdio: remove limited number of debugfs entries\n\nThe number of qdio debugfs entries was limited. Remove this limit\nand group the queue files in a per device directory.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "217ee6c64a9589bc5ad4d1c88136fc359d17930b",
      "tree": "5a01eaa37365d6efbef12aa1f2c5e04db0e42244",
      "parents": [
        "be7a2ddce66991c05a1c6ad19790289591e53547"
      ],
      "author": {
        "name": "Michael Ernst",
        "email": "mernst@de.ibm.com",
        "time": "Fri Sep 11 10:28:21 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:38 2009 +0200"
      },
      "message": "[S390] cio: failing set online/offline processing.\n\nWhen unit checks trigger sensing the device state is set to W4SENSE\nuntil sense completion; then the device state is set back to\nONLINE. If a unit check occurs while set online or set offline\nrequests are processed then it might happen that the device\u0027s\ntemporary W4SENSE state causes these functions to terminate,\nleaving the device in an inconsistent state when the state is set\nback to ONLINE later on so that the device cannot be set online or\noffline any longer.\nTo solve this, set online/offline and related rollback or error\nroutines are processed only if the device is in a final or\nDISCONNECTED state.\n\nSigned-off-by: Michael Ernst \u003cmernst@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "be7a2ddce66991c05a1c6ad19790289591e53547",
      "tree": "89b74961a7da107e7eebe4486f48bb9c4426938e",
      "parents": [
        "e2910bcf8ca762b306767a0894ab1987be014c9e"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:20 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:38 2009 +0200"
      },
      "message": "[S390] cio: ensure to hold a reference for deferred deregistration\n\nEnsure to always hold an extra device reference for scheduling a\nsubchannel deregistration, by moving the get_device to\nccw_device_schedule_sch_unregister. This fixes an use after free\nerror in ccw_device_call_sch_unregister where put_device was called\non an already freed device structure.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e2910bcf8ca762b306767a0894ab1987be014c9e",
      "tree": "366e236cc68cf129b84161c361789dcb1761c998",
      "parents": [
        "efd986db2d720e8f6660ec2c292509ee7d28cc6a"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:19 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:37 2009 +0200"
      },
      "message": "[S390] qdio: continue polling if the queue is not finished\n\nWith commit c38f96080955854e54df9cb392bc674e1ae330e1 polling was\nstopped for the queue even if new data is available.\n\nReturn immediately after scheduling the queue tasklet if the queue\nis not done.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "efd986db2d720e8f6660ec2c292509ee7d28cc6a",
      "tree": "ed9af23ead6a8e718fb91d8fd60139ddb3a96270",
      "parents": [
        "626e476ae011cafddc0ccb39ab838b90cc5d2272"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:18 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:37 2009 +0200"
      },
      "message": "[S390] cio: increase trace level\n\nMove debug traces for start I/O and interrupt events to exclusive\ntrace levels. Also change tracing in hot-path from sprintf (costly)\nto hex.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "626e476ae011cafddc0ccb39ab838b90cc5d2272",
      "tree": "98e90e6191ac52833721abf89ae675c756239003",
      "parents": [
        "1da73bc80bdfc9588192a6e6f5a72f8138f7378d"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:17 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:37 2009 +0200"
      },
      "message": "[S390] cio: fix not oper handling after failed [on|off]line processing\n\nIf online/offline processing of a ccw device fails, resulting in not\noperational state, notify the driver and unregister the device in case\nthe driver dosn\u0027t want to keep it.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "1da73bc80bdfc9588192a6e6f5a72f8138f7378d",
      "tree": "80ae0739bcbb47b4afbcba93402d1432cf87afc4",
      "parents": [
        "62733e5a5a480a893e56fa6133ae90904d857bc4"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Fri Sep 11 10:28:16 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:36 2009 +0200"
      },
      "message": "[S390] cio: consolidate subchannel intparm reset\n\nEnsure that the hardware interruption parameter for a subchannel is\nreset when the associated subchannel data structure is freed.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "62733e5a5a480a893e56fa6133ae90904d857bc4",
      "tree": "97717d32064ba4d6a070408b9ab1482b6f9572be",
      "parents": [
        "1f1148c88ad37c87f14d2153416a605bf0aeaf74"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Sep 11 10:28:15 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:36 2009 +0200"
      },
      "message": "[S390] cio: move scsw helper functions to header file\n\nAll scsw helper functions are very short and usage of them shouldn\u0027t\nresult in function calls. Therefore we move them to a separate header\nfile.\nAlso saves a lot of EXPORT_SYMBOLs.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "1f1148c88ad37c87f14d2153416a605bf0aeaf74",
      "tree": "6cb4895b83a2b3314c415c077decf147f894a15e",
      "parents": [
        "0d03d59d9b31cd1e33b7e46a80b6fef66244b1f2"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Fri Sep 11 10:28:14 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:36 2009 +0200"
      },
      "message": "[S390] cio: fix ineffective verify event\n\nPath verification events occurring for offline devices are currently\nignored. As a result, offline devices are not removed, even though\nthey might no longer be accessible (for example because the last path\nto the device was varied offline). Fix this by scheduling a status\nevaluation for the affected subchannel when a path verification event\noccurs.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "0d03d59d9b31cd1e33b7e46a80b6fef66244b1f2",
      "tree": "fab3cfc08a242b4744982b40cce837879ffa0272",
      "parents": [
        "526b678093a8a4bcf1ffffbe17bcf21c057eddf5"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Thu Sep 10 23:13:28 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 10 14:55:01 2009 -0700"
      },
      "message": "md: Fix \"strchr\" [drivers/md/dm-log-userspace.ko] undefined!\n\nCommit b8313b6da7e2e7c7f47d93d8561969a3ff9ba0ea (\"dm log: remove incorrect\nfield from userspace table output\") added a call to strstr() with a\nsingle-character \"needle\" string parameter.\n\nUnfortunately some versions of gcc replace such calls to strstr() by calls\nto strchr() behind our back.  This causes linking errors if strchr() is\ndefined as an inline function in \u003casm/string.h\u003e (e.g. on m68k):\n\n| WARNING: \"strchr\" [drivers/md/dm-log-userspace.ko] undefined!\n\nAvoid this by explicitly calling strchr() instead.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "526b678093a8a4bcf1ffffbe17bcf21c057eddf5",
      "tree": "6c0a5b35783f1e89406b667c9c525571d1b4d24e",
      "parents": [
        "752015d1b0683a8c623ebfe4c62893413e9b30d3",
        "18f4c644773bc8de1fd9c5182b30c231aafb94ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 09 20:04:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 09 20:04:54 2009 -0700"
      },
      "message": "Merge branch \u0027lookup-permissions-cleanup\u0027\n\n* lookup-permissions-cleanup:\n  jffs2/jfs/xfs: switch over to \u0027check_acl\u0027 rather than \u0027permission()\u0027\n  ext[234]: move over to \u0027check_acl\u0027 permission model\n  shmfs: use \u0027check_acl\u0027 instead of \u0027permission\u0027\n  Make \u0027check_acl()\u0027 a first-class filesystem op\n  Simplify exec_permission_lite(), part 3\n  Simplify exec_permission_lite() further\n  Simplify exec_permission_lite() logic\n  Do not call \u0027ima_path_check()\u0027 for each path component\n"
    },
    {
      "commit": "752015d1b0683a8c623ebfe4c62893413e9b30d3",
      "tree": "1ad20299d64fd85678ae9714f88d8683ed335da1",
      "parents": [
        "74fca6a42863ffacaf7ba6f1936a9f228950f657"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Sep 08 19:49:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 09 20:03:47 2009 -0700"
      },
      "message": "binfmt_elf: fix PT_INTERP bss handling\n\nIn fs/binfmt_elf.c, load_elf_interp() calls padzero() for .bss even if\nthe PT_LOAD has no PROT_WRITE and no .bss.  This generates EFAULT.\n\nHere is a small test case.  (Yes, there are other, useful PT_INTERP\nwhich have only .text and no .data/.bss.)\n\n\t----- ptinterp.S\n\t_start: .globl _start\n\t\t nop\n\t\t int3\n\t-----\n\t$ gcc -m32 -nostartfiles -nostdlib -o ptinterp ptinterp.S\n\t$ gcc -m32 -Wl,--dynamic-linker\u003dptinterp -o hello hello.c\n\t$ ./hello\n\tSegmentation fault  # during execve() itself\n\n\tAfter applying the patch:\n\t$ ./hello\n\tTrace trap  # user-mode execution after execve() finishes\n\nIf the ELF headers are actually self-inconsistent, then dying is fine.\nBut having no PROT_WRITE segment is perfectly normal and correct if\nthere is no segment with p_memsz \u003e p_filesz (i.e. bss).  John Reiser\nsuggested checking for PROT_WRITE in the bss logic.  I think it makes\nmost sense to simply apply the bss logic only when there is bss.\n\nThis patch looks less trivial than it is due to some reindentation.\nIt just moves the \"if (last_bss \u003e elf_bss) {\" test up to include the\npartial-page bss logic as well as the more-pages bss logic.\n\nReported-by: John Reiser \u003cjreiser@bitwagon.com\u003e\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74fca6a42863ffacaf7ba6f1936a9f228950f657",
      "tree": "5caecfdd9edab50789483eb96009e9faf5f1b241",
      "parents": [
        "7135a71b19be1faf48b7148d77844d03bc0717d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 09 15:13:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 09 15:13:59 2009 -0700"
      },
      "message": "Linux 2.6.31\n"
    },
    {
      "commit": "7135a71b19be1faf48b7148d77844d03bc0717d6",
      "tree": "f1bed8d00c77c90423adc98559247459089c39f5",
      "parents": [
        "e6890f6f3dc2d9024a08b1a149d9bd5208eea350"
      ],
      "author": {
        "name": "Ed Cashin",
        "email": "ecashin@coraid.com",
        "time": "Wed Sep 09 14:10:18 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 09 14:10:18 2009 +0200"
      },
      "message": "aoe: allocate unused request_queue for sysfs\n\nAndy Whitcroft reported an oops in aoe triggered by use of an\nincorrectly initialised request_queue object:\n\n  [ 2645.959090] kobject \u0027\u003cNULL\u003e\u0027 (ffff880059ca22c0): tried to add\n\t\tan uninitialized object, something is seriously wrong.\n  [ 2645.959104] Pid: 6, comm: events/0 Not tainted 2.6.31-5-generic #24-Ubuntu\n  [ 2645.959107] Call Trace:\n  [ 2645.959139] [\u003cffffffff8126ca2f\u003e] kobject_add+0x5f/0x70\n  [ 2645.959151] [\u003cffffffff8125b4ab\u003e] blk_register_queue+0x8b/0xf0\n  [ 2645.959155] [\u003cffffffff8126043f\u003e] add_disk+0x8f/0x160\n  [ 2645.959161] [\u003cffffffffa01673c4\u003e] aoeblk_gdalloc+0x164/0x1c0 [aoe]\n\nThe request queue of an aoe device is not used but can be allocated in\ncode that does not sleep.\n\nBruno bisected this regression down to\n\n  cd43e26f071524647e660706b784ebcbefbd2e44\n\n  block: Expose stacked device queues in sysfs\n\n\"This seems to generate /sys/block/$device/queue and its contents for\n everyone who is using queues, not just for those queues that have a\n non-NULL queue-\u003erequest_fn.\"\n\nAddresses http://bugs.launchpad.net/bugs/410198\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d13942\n\nNote that embedding a queue inside another object has always been\nan illegal construct, since the queues are reference counted and\nmust persist until the last reference is dropped. So aoe was\nalways buggy in this respect (Jens).\n\nSigned-off-by: Ed Cashin \u003cecashin@coraid.com\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Bruno Premont \u003cbonbons@linux-vserver.org\u003e\nCc: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e6890f6f3dc2d9024a08b1a149d9bd5208eea350",
      "tree": "8829fbb9f165ff37a37181bdf5cbbe92622bb5e6",
      "parents": [
        "7c8460db30dfd085ef3837c8fb02ecf2e718b983"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 17:09:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 17:09:24 2009 -0700"
      },
      "message": "i915: disable interrupts before tearing down GEM state\n\nReinette Chatre reports a frozen system (with blinking keyboard LEDs)\nwhen switching from graphics mode to the text console, or when\nsuspending (which does the same thing). With netconsole, the oops\nturned out to be\n\n\tBUG: unable to handle kernel NULL pointer dereference at 0000000000000084\n\tIP: [\u003cffffffffa03ecaab\u003e] i915_driver_irq_handler+0x26b/0xd20 [i915]\n\nand it\u0027s due to the i915_gem.c code doing drm_irq_uninstall() after\nhaving done i915_gem_idle(). And the i915_gem_idle() path will do\n\n  i915_gem_idle() -\u003e\n    i915_gem_cleanup_ringbuffer() -\u003e\n      i915_gem_cleanup_hws() -\u003e\n        dev_priv-\u003ehw_status_page \u003d NULL;\n\nbut if an i915 interrupt comes in after this stage, it may want to\naccess that hw_status_page, and gets the above NULL pointer dereference.\n\nAnd since the NULL pointer dereference happens from within an interrupt,\nand with the screen still in graphics mode, the common end result is\nsimply a silently hung machine.\n\nFix it by simply uninstalling the irq handler before idling rather than\nafter. Fixes\n\n    http://bugzilla.kernel.org/show_bug.cgi?id\u003d13819\n\nReported-and-tested-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "18f4c644773bc8de1fd9c5182b30c231aafb94ef",
      "tree": "b423bdb22304c6af3ad0f26b873e6081fafc8f01",
      "parents": [
        "1d5ccd1c422d7d292a9e45248aa36771900c6331"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 28 12:29:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 11:09:04 2009 -0700"
      },
      "message": "jffs2/jfs/xfs: switch over to \u0027check_acl\u0027 rather than \u0027permission()\u0027\n\nThis avoids an indirect call in the VFS for each path component lookup.\n\nWell, at least as long as you own the directory in question, and the ACL\ncheck is unnecessary.\n\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d5ccd1c422d7d292a9e45248aa36771900c6331",
      "tree": "6fa8e117697dcb42dfec026149dfea49325bed98",
      "parents": [
        "6d848a488ad83cc3891bb274691118f45ce6aab9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 28 12:12:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 11:09:04 2009 -0700"
      },
      "message": "ext[234]: move over to \u0027check_acl\u0027 permission model\n\nDon\u0027t implement per-filesystem \u0027extX_permission()\u0027 functions that have\nto be called for every path component operation, and instead just expose\nthe actual ACL checking so that the VFS layer can now do it for us.\n\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6d848a488ad83cc3891bb274691118f45ce6aab9",
      "tree": "c775e9ada5e3613174103b0919561b4b4d2d3b7e",
      "parents": [
        "5909ccaa300a4a834ffa275327af4df0b9cb5295"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 28 12:04:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 11:08:46 2009 -0700"
      },
      "message": "shmfs: use \u0027check_acl\u0027 instead of \u0027permission\u0027\n\nshmfs wants purely standard POSIX ACL semantics, so we can use the new\ngeneric VFS layer POSIX ACL checking rather than cooking our own\n\u0027permission()\u0027 function.\n\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5909ccaa300a4a834ffa275327af4df0b9cb5295",
      "tree": "b4e402a2a544be7c59bccd4b4533787f2f19e7bc",
      "parents": [
        "cb9179ead0aa0e3b7b4087cdba59baf16bbeef6d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 28 11:51:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 11:07:44 2009 -0700"
      },
      "message": "Make \u0027check_acl()\u0027 a first-class filesystem op\n\nThis is stage one in flattening out the callchains for the common\npermission testing.  Rather than have most filesystem implement their\nown inode-\u003ei_op-\u003epermission function that just calls back down to the\nVFS layers \u0027generic_permission()\u0027 with the per-filesystem ACL checking\nfunction, the filesystem can just expose its \u0027check_acl\u0027 function\ndirectly, and let the VFS layer do everything for it.\n\nThis is all just preparatory - no filesystem actually enables this yet.\n\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cb9179ead0aa0e3b7b4087cdba59baf16bbeef6d",
      "tree": "04d91abc90dc3f48d70bc95bc9bed6f561369008",
      "parents": [
        "f1ac9f6bfea6f21e8ab6dbbe46879d62a6fba8c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 28 11:08:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 11:07:44 2009 -0700"
      },
      "message": "Simplify exec_permission_lite(), part 3\n\nDon\u0027t call down to the generic inode_permission() function just to\ncall the inode-specific permission function - just do it directly.\n\nThe generic inode_permission() code does things like checking MAY_WRITE\nand devcgroup_inode_permission(), neither of which are relevant for the\nlight pathname walk permission checks (we always do just MAY_EXEC, and\nthe inode is never a special device).\n\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1ac9f6bfea6f21e8ab6dbbe46879d62a6fba8c0",
      "tree": "01b4e3c84e1403f6c900dd4412aa09cd335c030c",
      "parents": [
        "b7a437b08a44a3ed7e3a052eb39d2c5f618b603b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 28 10:53:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 11:07:43 2009 -0700"
      },
      "message": "Simplify exec_permission_lite() further\n\nThis function is only called for path components that are already known\nto be directories (they have a \u0027-\u003elookup\u0027 method).  So don\u0027t bother\ndoing that whole S_ISDIR() testing, the whole point of the \u0027lite()\u0027\nversion is that we know that we are looking at a directory component,\nand that we\u0027re only checking name lookup permission.\n\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7a437b08a44a3ed7e3a052eb39d2c5f618b603b",
      "tree": "fdb03edf0254e9f24fe7f3e3e2f75d3ac0a3f9e0",
      "parents": [
        "e8e66ed25b5cbeebed69c475f6c108e52078a3b3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 28 10:50:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 11:07:43 2009 -0700"
      },
      "message": "Simplify exec_permission_lite() logic\n\nInstead of returning EAGAIN and having the caller do something\nspecial for that case,  just do the special case directly.\n\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e8e66ed25b5cbeebed69c475f6c108e52078a3b3",
      "tree": "1827efb3f775eb27238ccaf174cac9228f83cebf",
      "parents": [
        "7c8460db30dfd085ef3837c8fb02ecf2e718b983"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 28 10:05:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 11:07:17 2009 -0700"
      },
      "message": "Do not call \u0027ima_path_check()\u0027 for each path component\n\nNot only is that a supremely timing-critical path, but it\u0027s hopefully\nsome day going to be lockless for the common case, and ima can\u0027t do\nthat.\n\nPlus the integrity code doesn\u0027t even care about non-regular files, so it\nwas always a total waste of time and effort.\n\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7c8460db30dfd085ef3837c8fb02ecf2e718b983",
      "tree": "41e501901dc47cde4fc2c61477a6e9b63b286971",
      "parents": [
        "3ff323f89075624b6891e7c428edb8e8a35be13c"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Tue Sep 08 14:52:25 2009 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 08 10:16:20 2009 -0700"
      },
      "message": "drm/i915: fix mask bits setting\n\neDP is exclusive connector too, and add missing crtc_mask\nsetting for TV.\n\nThis fixes\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d14139\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nReported-and-tested-by: Carlos R. Mafra \u003ccrmafra2@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ff323f89075624b6891e7c428edb8e8a35be13c",
      "tree": "24cbade6cffecfe334fd7d385b8731f7d999bfaf",
      "parents": [
        "755ae761c5519929a97567d61a379b87352c337c",
        "a54775c8758a754186bc6adbfc518b1e9f8f1e4e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:42:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:42:25 2009 -0700"
      },
      "message": "Merge branch \u0027drm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:\n  drm/radeon/kms: add LTE/GTE discard + rv515 two sided stencil register.\n"
    },
    {
      "commit": "755ae761c5519929a97567d61a379b87352c337c",
      "tree": "6942ac77009d3cab1acf6e6bea8cc339368423a9",
      "parents": [
        "4886b5b485ec78fe4a16fedaccfab39bdf55410f",
        "acd0c935178649f72c44ec49ca83bee35ce1f79e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:41:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:41:15 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  IMA: update ima_counts_put\n"
    },
    {
      "commit": "4886b5b485ec78fe4a16fedaccfab39bdf55410f",
      "tree": "3946e0e444311245db5248bac6658e9b8082f269",
      "parents": [
        "cbeb2864b162f4298111196c8ce8ce492577cdee",
        "d9d8e0418ffd3d189345c435861e254c17ae06e5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:40:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:40:24 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  gianfar: Fix build.\n"
    },
    {
      "commit": "cbeb2864b162f4298111196c8ce8ce492577cdee",
      "tree": "0ddc68c3c1231a38955d7fca71a28cfc43eb0996",
      "parents": [
        "f69fb9c39868463f6b0b8306824341bd5610250b",
        "c9a2bfd1f08973115c2fc3da9372e0e81ac42a19"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:40:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:40:15 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6:\n  pcmcia: add CNF-CDROM-ID for ide\n"
    },
    {
      "commit": "f69fb9c39868463f6b0b8306824341bd5610250b",
      "tree": "7ab396e5185772342bdf8a50e6dfb56ff0cd1f64",
      "parents": [
        "e07cccf4046978df10f2e13fe2b99b2f9b3a65db",
        "07fb6111e7af5fac6b6076e2658d0e32b67f713b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:38:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 07 11:38:30 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel:\n  agp/intel: support for new chip variant of IGDNG mobile\n  drm/i915: Unref old_obj on get_fence_reg() error path\n  drm/i915: increase default latency constant (v2 w/comment)\n"
    },
    {
      "commit": "a54775c8758a754186bc6adbfc518b1e9f8f1e4e",
      "tree": "bc351c6ae28e059132b66f8149a8a9d1b2be088a",
      "parents": [
        "e07cccf4046978df10f2e13fe2b99b2f9b3a65db"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Sep 07 15:26:19 2009 +1000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Sep 07 15:26:19 2009 +1000"
      },
      "message": "drm/radeon/kms: add LTE/GTE discard + rv515 two sided stencil register.\n\nThis adds some rv350+ register for LTE/GTE discard,\nand enables the rv515 two sided stencil register.\nIt also disables the DEPTHXY_OFFSET register which\ncan be used to workaround the CS checker.\nMoves rs690 to proper place in rs600 and uses correct\ntable on rs600.\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "acd0c935178649f72c44ec49ca83bee35ce1f79e",
      "tree": "c0cb2f8fbbaa54567785b5430e5be8c8b51f5724",
      "parents": [
        "e07cccf4046978df10f2e13fe2b99b2f9b3a65db"
      ],
      "author": {
        "name": "Mimi Zohar",
        "email": "zohar@linux.vnet.ibm.com",
        "time": "Fri Sep 04 13:08:46 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Sep 07 11:54:58 2009 +1000"
      },
      "message": "IMA: update ima_counts_put\n\n- As ima_counts_put() may be called after the inode has been freed,\nverify that the inode is not NULL, before dereferencing it.\n\n- Maintain the IMA file counters in may_open() properly, decrementing\nany counter increments on subsequent errors.\n\nReported-by: Ciprian Docan \u003cdocan@eden.rutgers.edu\u003e\nReported-by: J.R. Okajima \u003chooanon05@yahoo.co.jp\u003e\nSigned-off-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "d9d8e0418ffd3d189345c435861e254c17ae06e5",
      "tree": "ee97d40fa4ccfd3c802e6844b3d38097ff7a6c7a",
      "parents": [
        "16ebb5e0b36ceadc8186f71d68b0c4fa4b6e781b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 01:41:02 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 01:41:24 2009 -0700"
      },
      "message": "gianfar: Fix build.\n\nReported by Michael Guntsche \u003cmike@it-loops.com\u003e\n\n--------------------\nCommit\n38bddf04bcfe661fbdab94888c3b72c32f6873b3 gianfar: gfar_remove needs to call unregister_netdev()\n\nbreaks the build of the gianfar driver because \"dev\" is undefined in\nthis function. To quickly test rc9 I changed this to priv-\u003endev but I do\nnot know if this is the correct one.\n--------------------\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e07cccf4046978df10f2e13fe2b99b2f9b3a65db",
      "tree": "086f3d6b72cb6b70ba451c78b8147231d54219c3",
      "parents": [
        "f815c335d21f9965f8dbe142fd168aaba1baf98e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 16:38:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 16:38:12 2009 -0700"
      },
      "message": "Linux 2.6.31-rc9\n"
    },
    {
      "commit": "f815c335d21f9965f8dbe142fd168aaba1baf98e",
      "tree": "4e9a65b7810de10141595125cc65f2b0e7533dfc",
      "parents": [
        "74a01180db4bbfd61304ae0ba1f60af55ffc803d",
        "baed6b82d9f160184c1c14cdb4accb08f3eb6b87"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:59:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:59:00 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire: sbp2: fix freeing of unallocated memory\n  firewire: ohci: fix Ricoh R5C832, video reception\n  firewire: ohci: fix Agere FW643 and multiple cameras\n  firewire: core: fix crash in iso resource management\n"
    },
    {
      "commit": "74a01180db4bbfd61304ae0ba1f60af55ffc803d",
      "tree": "2f61aac8deb306a164f04a7d2753fbd723c906fc",
      "parents": [
        "5136a6c0fd5b26bbf39ad761cf7a4fc563ad83a3"
      ],
      "author": {
        "name": "Roderick Colenbrander",
        "email": "thunderbird2k@gmail.com",
        "time": "Thu Sep 03 09:57:23 2009 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:58:07 2009 -0700"
      },
      "message": "powerpc: Fix i8259 interrupt driver kernel crash on ML510\n\nThis patch fixes a null pointer exception caused by removal of\n\u0027ack()\u0027 for level interrupts in the Xilinx interrupt driver.  A recent\nchange to the xilinx interrupt controller removed the ack hook for\nlevel irqs.\n\nSigned-off-by: Roderick Colenbrander \u003cthunderbird2k@gmail.com\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5136a6c0fd5b26bbf39ad761cf7a4fc563ad83a3",
      "tree": "7c905238cb2c5c9cd959cd652010b0eaf5f91db3",
      "parents": [
        "e505a8d5f96a84f3043ce0c4eaee8f045996896c",
        "bc8cec0dff072f1a45ce7f6b2c5234bb3411ac51"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:57:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:57:04 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/mtd-2.6.31\n\n* git://git.infradead.org/~dwmw2/mtd-2.6.31:\n  JFFS2: add missing verify buffer allocation/deallocation\n  mtd: nftl: fix offset alignments\n  mtd: nftl: write support is broken\n  mtd: m25p80: fix null pointer dereference bug\n"
    },
    {
      "commit": "e505a8d5f96a84f3043ce0c4eaee8f045996896c",
      "tree": "622b5b817b9434b114d7015dbd3d8c83198fe350",
      "parents": [
        "b71b7dc09abaeb4417c37b96a898096286b65e3c",
        "c295fc05789653ef24f296299df7c5f92fe74dce"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:56:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:56:13 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  block: Allow changing max_sectors_kb above the default 512\n"
    },
    {
      "commit": "b71b7dc09abaeb4417c37b96a898096286b65e3c",
      "tree": "548585e8e26281f9602d61e04bf4d2c1f4078b5a",
      "parents": [
        "59430c2f437767094298f30dd02ca038da0df755",
        "92653453c3015c083b9fe0ad48261c6b2267d482"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:55:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:55:30 2009 -0700"
      },
      "message": "Merge branch \u0027fix/oxygen\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6\n\n* \u0027fix/oxygen\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:\n  sound: oxygen: handle cards with missing EEPROM\n  sound: oxygen: fix MCLK rate for 192 kHz playback\n"
    },
    {
      "commit": "59430c2f437767094298f30dd02ca038da0df755",
      "tree": "3c79740e3580e403df02daafba26fa6e67552c16",
      "parents": [
        "e9ee3a54a164c249a0a576c403eba367a6d97be5",
        "16ebb5e0b36ceadc8186f71d68b0c4fa4b6e781b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:52:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:52:41 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  tc: Fix unitialized kernel memory leak\n  pkt_sched: Revert tasklet_hrtimer changes.\n  net: sk_free() should be allowed right after sk_alloc()\n  gianfar: gfar_remove needs to call unregister_netdev()\n  ipw2200: firmware DMA loading rework\n"
    },
    {
      "commit": "e9ee3a54a164c249a0a576c403eba367a6d97be5",
      "tree": "bd1200f8d3c7481aa152cbb277fb79e181bb34fd",
      "parents": [
        "3bb314f01c189f0c48c0946424955c6d8ddce3d8",
        "0c7d400fafaeab6014504a6a6249f01bac7f7db4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:51:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:51:45 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:\n  crypto: skcipher - Fix skcipher_dequeue_givcrypt NULL test\n"
    },
    {
      "commit": "3bb314f01c189f0c48c0946424955c6d8ddce3d8",
      "tree": "d0de7369247689f009c2e0f3fb3bd121555efce1",
      "parents": [
        "535e0c1726bec699a8f0f5b86fe7d399546b2555",
        "ce6c3997c2fce74d12e6d8887a1d8cdf024fa850"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:51:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:51:24 2009 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:\n  [CPUFREQ] Re-enable cpufreq suspend and resume code\n"
    },
    {
      "commit": "535e0c1726bec699a8f0f5b86fe7d399546b2555",
      "tree": "9aa71d6908e4255b5a864cdae14ef164dea66665",
      "parents": [
        "0edfa2b1b5a5e1475e76dd3c792447687d966de4",
        "5afe18d2f58812f3924edbd215464e5e3e8545e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:50:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:50:53 2009 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:\n  [IA64] fix csum_ipv6_magic()\n  [IA64] Fix warning in dma-mapping.c\n"
    },
    {
      "commit": "0edfa2b1b5a5e1475e76dd3c792447687d966de4",
      "tree": "a811a6955bb0fffc883e59eb261206b132e9e6dc",
      "parents": [
        "5a09adf13067609d8ab9fcae11dc99fd0084e35c",
        "3725867dccfb83e4b0cff64e916a04258f300591"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:25:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:25:14 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: actually enable the swapext compat handler\n"
    },
    {
      "commit": "5a09adf13067609d8ab9fcae11dc99fd0084e35c",
      "tree": "be2908bf2a8a20e9bebb4a064611ca5c2e2977f9",
      "parents": [
        "931f70350e9c298887c78e852d179ef7efcce304",
        "b1f1b8ce0a1d71cbc72f7540134d52b79bd8f5ac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:24:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:24: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:\n  nilfs2: fix preempt count underflow in nilfs_btnode_prepare_change_key\n"
    },
    {
      "commit": "931f70350e9c298887c78e852d179ef7efcce304",
      "tree": "7d909970a9ac85c3a7b6c460330591f26bdb1dcd",
      "parents": [
        "e305fc5ecd6420fadec5a8108852081fa2b89a17",
        "04a13c7c632e1fe04a5f6e6c83565d2559e37598"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:22:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:22:00 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:\n  percpu: don\u0027t assume existence of cpu0\n"
    },
    {
      "commit": "e305fc5ecd6420fadec5a8108852081fa2b89a17",
      "tree": "0f80db8fba1b7d285814f7a16046ae84f6909147",
      "parents": [
        "154f807e55977de75b1c12197c13ae14c28397b3",
        "d76b1590e06a63a3d8697168cd0aabf1c4b3cb3a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:57:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:57:53 2009 -0700"
      },
      "message": "Merge branch \u0027slab/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6\n\n* \u0027slab/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:\n  slub: Fix kmem_cache_destroy() with SLAB_DESTROY_BY_RCU\n"
    },
    {
      "commit": "154f807e55977de75b1c12197c13ae14c28397b3",
      "tree": "5ff5a220e4d3080275ce4921e28ef02f374ed5f7",
      "parents": [
        "9b6a3df372f0318bb0ffe37ac5f4610fb9bdb44d",
        "ae0b7448e91353ea5f821601a055aca6b58042cd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:51:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:51:07 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm:\n  dm snapshot: fix on disk chunk size validation\n  dm exception store: split set_chunk_size\n  dm snapshot: fix header corruption race on invalidation\n  dm snapshot: refactor zero_disk_area to use chunk_io\n  dm log: userspace add luid to distinguish between concurrent log instances\n  dm raid1: do not allow log_failure variable to unset after being set\n  dm log: remove incorrect field from userspace table output\n  dm log: fix userspace status output\n  dm stripe: expose correct io hints\n  dm table: add more context to terse warning messages\n  dm table: fix queue_limit checking device iterator\n  dm snapshot: implement iterate devices\n  dm multipath: fix oops when request based io fails when no paths\n"
    },
    {
      "commit": "9b6a3df372f0318bb0ffe37ac5f4610fb9bdb44d",
      "tree": "88b76c84a21927acffd02f556764c4be33258bce",
      "parents": [
        "d3acd16cda3a1cbaff7c579c0e054f0ece613d14",
        "6faf17f6f1ffc586d16efc2f9fa2083a7785ee74"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:50:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:50:46 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI SR-IOV: correct broken resource alignment calculations\n"
    },
    {
      "commit": "d3acd16cda3a1cbaff7c579c0e054f0ece613d14",
      "tree": "2467a3fcf23e54ca68545427feb4e2d19f083b75",
      "parents": [
        "93697a3cabd3605c434a9b915c0272ad800b3f97",
        "bd4352cadfacb9084c97c853b025fac010266c26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:49:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:49:06 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  sparc64: Fix bootup with mcount in some configs.\n  sparc64: Kill spurious NMI watchdog triggers by increasing limit to 30 seconds.\n"
    },
    {
      "commit": "93697a3cabd3605c434a9b915c0272ad800b3f97",
      "tree": "dc26826f10979e02efbd2c6a87b326b770284b18",
      "parents": [
        "63995344721be45b3fb3b76488b1b0a8c95def26",
        "a3df6f7d3090e611bcc774cd2cba45ae016d37e1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:48:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:48:37 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/powerpc: Fix cache event codes for POWER7\n  perf_counter: Fix /0 bug in swcounters\n  perf_counters: Increase paranoia level\n"
    },
    {
      "commit": "63995344721be45b3fb3b76488b1b0a8c95def26",
      "tree": "a28385324c992c75bd7895fcfd3e374b5214aa53",
      "parents": [
        "9de6886ec6e37f45807266a702bb7621498395ad",
        "2bcaa6a4238094c5695d5b1943078388d82d3004"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:41:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:41:29 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:\n  Input: atkbd - add Compaq Presario R4000-series repeat quirk\n  Input: i8042 - add Acer Aspire 5536 to the nomux list\n"
    },
    {
      "commit": "9de6886ec6e37f45807266a702bb7621498395ad",
      "tree": "39402a2d467a856d0f956015a7ad0772719bf1b6",
      "parents": [
        "ac7ac9f2b9bfd9b68a1571d27e4c8bebb4788914"
      ],
      "author": {
        "name": "Nicolas Pitre",
        "email": "nico@cam.org",
        "time": "Sat Sep 05 00:25:37 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:41:08 2009 -0700"
      },
      "message": "ext2: fix unbalanced kmap()/kunmap()\n\nIn ext2_rename(), dir_page is acquired through ext2_dotdot().  It is\nthen released through ext2_set_link() but only if old_dir !\u003d new_dir.\nFailing that, the pkmap reference count is never decremented and the\npage remains pinned forever.  Repeat that a couple times with highmem\npages and all pkmap slots get exhausted, and every further kmap() calls\nend up stalling on the pkmap_map_wait queue at which point the whole\nsystem comes to a halt.\n\nSigned-off-by: Nicolas Pitre \u003cnico@marvell.com\u003e\nAcked-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac7ac9f2b9bfd9b68a1571d27e4c8bebb4788914",
      "tree": "02aa160e02f7f1f4a65a7f478e9a92c0b7ad0088",
      "parents": [
        "ac89a9174decf343de049a06fad75681f71890eb",
        "8379e7c46cc48f51197dd663fc6676f47f2a1e71"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:38:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:38:37 2009 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:\n  ocfs2: ocfs2_write_begin_nolock() should handle len\u003d0\n  ocfs2: invalidate dentry if its dentry_lock isn\u0027t initialized.\n"
    },
    {
      "commit": "ac89a9174decf343de049a06fad75681f71890eb",
      "tree": "c2fa9e7deef47b2cbc6bf4523e068a0265b105ac",
      "parents": [
        "37f81fa1f63ad38e16125526bb2769ae0ea8d332"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:27:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:27:10 2009 -0700"
      },
      "message": "pty: don\u0027t limit the writes to \u0027pty_space()\u0027 inside \u0027pty_write()\u0027\n\nThe whole write-room thing is something that is up to the _caller_ to\nworry about, not the pty layer itself.  The total buffer space will\nstill be limited by the buffering routines themselves, so there is no\nadvantage or need in having pty_write() artificially limit the size\nsomehow.\n\nAnd what happened was that the caller (the n_tty line discipline, in\nthis case) may have verified that there is room for 2 bytes to be\nwritten (for NL -\u003e CRNL expansion), and it used to then do those writes\nas two single-byte writes.  And if the first byte written (CR) then\ncaused a new tty buffer to be allocated, pty_space() may have returned\nzero when trying to write the second byte (LF), and then incorrectly\nfailed the write - leading to a lost newline character.\n\nThis should finally fix\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d14015\n\nReported-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nAcked-by: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "37f81fa1f63ad38e16125526bb2769ae0ea8d332",
      "tree": "116ee462263777d2cd12b578b60ffe04a8a5b38c",
      "parents": [
        "a2a8474c3fff88d8dd52d05cb450563fb26fd26c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 12:46:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 12:46:07 2009 -0700"
      },
      "message": "n_tty: do O_ONLCR translation as a single write\n\nWhen translating CR to CRNL in the n_tty line discipline, we did it as\ntwo tty_put_char() calls.  Which works, but is stupid, and has caused\nproblems before too with bad interactions with the write_room() logic.\nThe generic USB serial driver had that problem, for example.\n\nNow the pty layer had similar issues after being moved to the generic\ntty buffering code (in commit d945cb9cce20ac7143c2de8d88b187f62db99bdc:\n\"pty: Rework the pty layer to use the normal buffering logic\").\n\nSo stop doing the silly separate two writes, and do it as a single write\ninstead.  That\u0027s what the n_tty layer already does for the space\nexpansion of tabs (XTABS), and it means that we\u0027ll now always have just\na single write for the CRNL to match the single \u0027tty_write_room()\u0027 test,\nwhich hopefully means that the next time somebody screws up buffering,\nit won\u0027t cause weeks of debugging.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a2a8474c3fff88d8dd52d05cb450563fb26fd26c",
      "tree": "455415da039a77627f47ed19318bb9c8aa17de4d",
      "parents": [
        "dd5d241ea955006122d76af88af87de73fec25b4"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sat Sep 05 11:17:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 11:30:42 2009 -0700"
      },
      "message": "exec: do not sleep in TASK_TRACED under -\u003ecred_guard_mutex\n\nTom Horsley reports that his debugger hangs when it tries to read\n/proc/pid_of_tracee/maps, this happens since\n\n\t\"mm_for_maps: take -\u003ecred_guard_mutex to fix the race with exec\"\n\t04b836cbf19e885f8366bccb2e4b0474346c02d\n\ncommit in 2.6.31.\n\nBut the root of the problem lies in the fact that do_execve() path calls\ntracehook_report_exec() which can stop if the tracer sets PT_TRACE_EXEC.\n\nThe tracee must not sleep in TASK_TRACED holding this mutex.  Even if we\nremove -\u003ecred_guard_mutex from mm_for_maps() and proc_pid_attr_write(),\nanother task doing PTRACE_ATTACH should not hang until it is killed or the\ntracee resumes.\n\nWith this patch do_execve() does not use -\u003ecred_guard_mutex directly and\nwe do not hold it throughout, instead:\n\n\t- introduce prepare_bprm_creds() helper, it locks the mutex\n\t  and calls prepare_exec_creds() to initialize bprm-\u003ecred.\n\n\t- install_exec_creds() drops the mutex after commit_creds(),\n\t  and thus before tracehook_report_exec()-\u003eptrace_stop().\n\n\t  or, if exec fails,\n\n\t  free_bprm() drops this mutex when bprm-\u003ecred !\u003d NULL which\n\t  indicates install_exec_creds() was not called.\n\nReported-by: Tom Horsley \u003ctom.horsley@att.net\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "dd5d241ea955006122d76af88af87de73fec25b4"
}
