)]}'
{
  "log": [
    {
      "commit": "ebcb67341fee34061430f3367f2e507e52ee051b",
      "tree": "c6790a014ead7c6432178aa2a0dac7eb41c25b40",
      "parents": [
        "bbc698636ed48b6fcd323964e0f847a6a796325d"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:46:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:10 2008 -0700"
      },
      "message": "/proc/PID/syscall\n\nThis adds /proc/PID/syscall and /proc/PID/task/TID/syscall magic files.\nThese use task_current_syscall() to show the task\u0027s current system call\nnumber and argument registers, stack pointer and PC.  For a task blocked\nbut not in a syscall, the file shows \"-1\" in place of the syscall number,\nfollowed by only the SP and PC.  For a task that\u0027s not blocked, it shows\n\"running\".\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0d094efeb1e98010c6b99923f1eb7e17bf1e3a74",
      "tree": "6ee271b6da5796e5321d2ab6f9d7d9ba03c300a2",
      "parents": [
        "dae33574dcf5211e1f43c7e45fa29f73ba3e00cb"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: tracehook_tracer_task\n\nThis adds the tracehook_tracer_task() hook to consolidate all forms of\n\"Who is using ptrace on me?\" logic.  This is used for \"TracerPid:\" in\n/proc and for permission checks.  We also clean up the selinux code the\ncalled an identical accessor.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6341c393fcc37d58727865f1ee2f65e632e9d4f0",
      "tree": "6e88d928e17f663b225884e81877a7a069d7c514",
      "parents": [
        "88ac2921a71f788ed693bcd44731dd6bc1994640"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: exec\n\nThis moves all the ptrace hooks related to exec into tracehook.h inlines.\n\nThis also lifts the calls for tracing out of the binfmt load_binary hooks\ninto search_binary_handler() after it calls into the binfmt module.  This\nchange has no effect, since all the binfmt modules\u0027 load_binary functions\ndid the call at the end on success, and now search_binary_handler() does\nit immediately after return if successful.  We consolidate the repeated\ncode, and binfmt modules no longer need to import ptrace_notify().\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "267e2a9c71b8e088ac307f9549f71468e86e26c1",
      "tree": "a2fc7be0ee2d712841b4564abf4e63d814642ec3",
      "parents": [
        "99fcd77d15357e8ba51005c25cc750b9c28b2688"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Jul 25 19:45:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "Use WARN() in fs/proc/\n\nUse WARN() instead of a printk+WARN_ON() pair; this way the message\nbecomes part of the warning section for better reporting/collection.\nThis way, the entire if() {} section can collapse into the WARN() as well.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99fcd77d15357e8ba51005c25cc750b9c28b2688",
      "tree": "403293819dc7bcd854c50d8c486a1fdbbf9711a2",
      "parents": [
        "5c752ad9f35910ff1912b3f3ae82878178ddc432"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Jul 25 19:45:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:07 2008 -0700"
      },
      "message": "Use WARN() in fs/sysfs\n\nUse WARN() instead of a printk+WARN_ON() pair; this way the message becomes\npart of the warning section for better reporting/collection.  Also, with this,\none fo the if() sections collapses entirely into the WARN().\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5c752ad9f35910ff1912b3f3ae82878178ddc432",
      "tree": "4ac627f9cdd7f0e1b0557b9b5c4838587c1c0890",
      "parents": [
        "5cd2b459d326a424671dcd95f038649f7bf7cb96"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Jul 25 19:45:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:07 2008 -0700"
      },
      "message": "Use WARN() in fs/\n\nUse WARN() instead of a printk+WARN_ON() pair; this way the message\nbecomes part of the warning section for better reporting/collection.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51cc50685a4275c6a02653670af9f108a64e01cf",
      "tree": "819d47bd2b0c8a9d1835d863853804b0a0242b97",
      "parents": [
        "d91958815d214ea365b98cbff6215383897edcb6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Jul 25 19:45:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:07 2008 -0700"
      },
      "message": "SL*B: drop kmem cache argument from constructor\n\nKmem cache passed to constructor is only needed for constructors that are\nthemselves multiplexeres.  Nobody uses this \"feature\", nor does anybody uses\npassed kmem cache in non-trivial way, so pass only pointer to object.\n\nNon-trivial places are:\n\tarch/powerpc/mm/init_64.c\n\tarch/powerpc/mm/hugetlbpage.c\n\nThis is flag day, yes.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jon Tollefson \u003ckniht@linux.vnet.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\n[akpm@linux-foundation.org: fix arch/powerpc/mm/hugetlbpage.c]\n[akpm@linux-foundation.org: fix mm/slab.c]\n[akpm@linux-foundation.org: fix ubifs]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19fd6231279be3c3bdd02ed99f9b0eb195978064",
      "tree": "ee09121054262d73c551b57114acd855b82a7a82",
      "parents": [
        "a60637c85893e7191faaafa6a72e197c24386727"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "mm: spinlock tree_lock\n\nmapping-\u003etree_lock has no read lockers.  convert the lock from an rwlock\nto a spinlock.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc40d73c950146725e9e768e856a416ec8949065",
      "tree": "7d12351ddeb6a281ff7a9b5db543067c710d1859",
      "parents": [
        "f5dd33c494a427b1d1a3b574de5c9e511c888864"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "splice: use get_user_pages_fast\n\nUse get_user_pages_fast in splice.  This reverts some mmap_sem batching\nthere, however the biggest problem with mmap_sem tends to be hold times\nblocking out other threads rather than cacheline bouncing.  Further: on\narchitectures that implement get_user_pages_fast without locks, mmap_sem\ncan be avoided completely anyway.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f5dd33c494a427b1d1a3b574de5c9e511c888864",
      "tree": "fc6f61ffe488fe044f9e167b31b1c4ecd5f3f54c",
      "parents": [
        "8174c430e445a93016ef18f717fe570214fa38bf"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "dio: use get_user_pages_fast\n\nUse get_user_pages_fast in the common/generic block and fs direct IO paths.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "63ca8ce2a2641f9cb5f0add33ced4591681d1cd7",
      "tree": "a7dbade60bc7176868a0fd19c3907d3605061be5",
      "parents": [
        "36cc410a6799a205bfc6ccc38abd9d52f2afba64"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: update kbuild to include OMFS\n\nAdds OMFS to the fs Kconfig and Makefile\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "36cc410a6799a205bfc6ccc38abd9d52f2afba64",
      "tree": "3fb78b30e6421f9d668a48f65acfec4016bb9161",
      "parents": [
        "8f09e98768c17287df076580c4cc72ac358312c6"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: add bitmap routines\n\nAdd block allocation and block bitmap management routines for OMFS.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f09e98768c17287df076580c4cc72ac358312c6",
      "tree": "4e1a593887e9c8092c541269d242b429baf051d4",
      "parents": [
        "a3ab7155ea21aadc8a4d5687e91b3d876973185e"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: add file routines\n\nAdd functions for reading and manipulating the storage of file data in\nthe extent-based OMFS.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a3ab7155ea21aadc8a4d5687e91b3d876973185e",
      "tree": "40f74b9c4e38d12bbbbc269232fb8a5b7ad9448c",
      "parents": [
        "555e3775ced1d05203934fc6529bbf0560dd8733"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: add directory routines\n\nAdd lookup and directory management routines for OMFS.  The filesystem uses\nhashing based on the filename and stores collisions, unordered, in siblings\nof files\u0027 inode structures.  To support telldir, the current position in\nthe hash table is encoded in fpos.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "555e3775ced1d05203934fc6529bbf0560dd8733",
      "tree": "7b34c07aa62f1ffa418baf943276ebdd2a8aeba3",
      "parents": [
        "1b002d7b173ae7cc15ed90d3c07f6d106babc510"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: add inode routines\n\nAdd basic superblock and inode handling routines for OMFS\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b002d7b173ae7cc15ed90d3c07f6d106babc510",
      "tree": "ec6c72320e8709547734c89cce1348c6f31208c9",
      "parents": [
        "a14e4b572b0ee5c6dbe4aceb83d00b2c969324e9"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: define filesystem structures\n\nAdd header files containing OMFS on-disk and memory structures.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3f165e4cf2af042af7d2440d688299c0d2a48b1f",
      "tree": "fe49b0b9771fb20b2be844e43bc8360e7b831aba",
      "parents": [
        "75b25b4cabb7ce956c36442bf8225659b1864866"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@movial.fi",
        "time": "Fri Jul 25 19:44:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "bfs: kill BKL\n\nReplace the BKL-based locking scheme used in the bfs driver by a private\nfilesystem-wide mutex.\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@movial.fi\u003e\nCc: Tigran Aivazian \u003ctigran_aivazian@symantec.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "75b25b4cabb7ce956c36442bf8225659b1864866",
      "tree": "3933f94489db46f1f8bb47c982458c562cbad98d",
      "parents": [
        "7d135a5d50a08bbc53b189d79d8bdb03136f5303"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@movial.fi",
        "time": "Fri Jul 25 19:44:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "bfs: assorted cleanups\n\nThis patch makes the following cleanups:\n\n\to removing an unused variable from bfs_fill_super();\n\to removing unneeded blank spaces from pointer\n\t  definitions.\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@movial.fi\u003e\nCc: Tigran Aivazian \u003ctigran_aivazian@symantec.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d135a5d50a08bbc53b189d79d8bdb03136f5303",
      "tree": "5ddc33ffcfefec2ebb2b9e29ca970e2e5ef700b6",
      "parents": [
        "1956a96de488feb05e95c08c9d5e80f63a4be2b1"
      ],
      "author": {
        "name": "Matthias Kaehlcke",
        "email": "matthias@kaehlcke.net",
        "time": "Fri Jul 25 19:44:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "affs: convert s_bmlock into a mutex\n\nThe semaphore s_bmlock is used as a mutex.  Convert it to the mutex API.\n\nSigned-off-by: Matthias Kaehlcke \u003cmatthias@kaehlcke.net\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f3c6ba986ab4527b6dfacf9f3b9e40f72466a8b2",
      "tree": "f240cc15f23afba6f987e6e61c41a04c30537040",
      "parents": [
        "a76eef9573c93f8f324ebacfd090a3e319a64d59"
      ],
      "author": {
        "name": "Kentaro Makita",
        "email": "k-makita@np.css.fujitsu.com",
        "time": "Fri Jul 25 19:44:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:02 2008 -0700"
      },
      "message": "vfs: add cond_resched_lock while scanning dentry LRU lists\n\nAdd cond_resched_lock(\u0026dcache_lock) while scanning LRU lists on\nsuperblocks in __shrink_dcache_sb()\n\nSigned-off-by: Kentaro Makita \u003ck-makita@np.css.fujitsu.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5047887caf1806f31652210df27fb62a7c43f27d",
      "tree": "4098ead40c1aa7b904167f67cff87a247cfa0b6c",
      "parents": [
        "996abf053eec4d67136be8b911bbaaf989cfb99c",
        "973b7d83ebeb1e34b8bee69208916e5f0e2353c3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 11:08:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 11:08:17 2008 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (34 commits)\n  powerpc: Wireup new syscalls\n  Move update_mmu_cache() declaration from tlbflush.h to pgtable.h\n  powerpc/pseries: Remove kmalloc call in handling writes to lparcfg\n  powerpc/pseries: Update arch vector to indicate support for CMO\n  ibmvfc: Add support for collaborative memory overcommit\n  ibmvscsi: driver enablement for CMO\n  ibmveth: enable driver for CMO\n  ibmveth: Automatically enable larger rx buffer pools for larger mtu\n  powerpc/pseries: Verify CMO memory entitlement updates with virtual I/O\n  powerpc/pseries: vio bus support for CMO\n  powerpc/pseries: iommu enablement for CMO\n  powerpc/pseries: Add CMO paging statistics\n  powerpc/pseries: Add collaborative memory manager\n  powerpc/pseries: Utilities to set firmware page state\n  powerpc/pseries: Enable CMO feature during platform setup\n  powerpc/pseries: Split retrieval of processor entitlement data into a helper routine\n  powerpc/pseries: Add memory entitlement capabilities to /proc/ppc64/lparcfg\n  powerpc/pseries: Split processor entitlement retrieval and gathering to helper routines\n  powerpc/pseries: Remove extraneous error reporting for hcall failures in lparcfg\n  powerpc: Fix compile error with binutils 2.15\n  ...\n\nFixed up conflict in arch/powerpc/platforms/52xx/Kconfig manually.\n"
    },
    {
      "commit": "48e90761b570ff57f58b726229d229729949c5bb",
      "tree": "be2ab7ed5710223c46f39afd276c964506a7db40",
      "parents": [
        "33670fa296860283f04a7975b8c790f101e43a6e"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:49:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:48 2008 -0700"
      },
      "message": "fuse: lockd support\n\nIf fuse filesystem doesn\u0027t define it\u0027s own lock operations, then allow the\nlock manager to work with fuse.\n\nAdding lockd support for remote locking is also possible, but more rarely\nused, so leave it till later.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "33670fa296860283f04a7975b8c790f101e43a6e",
      "tree": "61162737edbffe696f4f9b13998d192cd3be3f75",
      "parents": [
        "c180eebe1390c2076ead6a9bc95a02efb994edb7"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:49:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:48 2008 -0700"
      },
      "message": "fuse: nfs export special lookups\n\nImplement the get_parent export operation by sending a LOOKUP request with\n\"..\" as the name.\n\nImplement looking up an inode by node ID after it has been evicted from\nthe cache.  This is done by seding a LOOKUP request with \".\" as the name\n(for all file types, not just directories).\n\nThe filesystem can set the FUSE_EXPORT_SUPPORT flag in the INIT reply, to\nindicate that it supports these special lookups.\n\nThanks to John Muir for the original implementation of this feature.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c180eebe1390c2076ead6a9bc95a02efb994edb7",
      "tree": "5cbd2872d0ba66d20e5f03fd97aa0357576d77ad",
      "parents": [
        "dbd561d236ff16f8143bc727d91758ddd190e8cb"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:49:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:48 2008 -0700"
      },
      "message": "fuse: add fuse_lookup_name() helper\n\nAdd a new helper function which sends a LOOKUP request with the supplied\nname.  This will be used by the next patch to send special LOOKUP requests\nwith \".\" and \"..\" as the name.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dbd561d236ff16f8143bc727d91758ddd190e8cb",
      "tree": "aac8fb4d98c3f425b2f5bf404af7d82182f19bc0",
      "parents": [
        "0de6256daafa3a97a269995e9b29f956bd419bbf"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:49:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:48 2008 -0700"
      },
      "message": "fuse: add export operations\n\nImplement export_operations, to allow fuse filesystems to be exported to\nNFS.  This feature has been in the out-of-tree fuse module, and is widely\nused and tested.\n\nIt has not been originally merged into mainline, because doing the NFS\nexport in userspace was thought to be a cleaner and more efficient way of\ndoing it, than through the kernel.\n\nWhile that is true, it would also have involved a lot of duplicated effort\nat reimplementing NFS exporting (all the different versions of the\nprotocol).  This effort was unfortunately not undertaken by anyone, so we\nare left with doing it the easy but less efficient way.\n\nIf this feature goes in, the out-of-tree fuse module can go away,\nwhich would have several advantages:\n\n  - not having to maintain two versions\n  - less confusion for users\n  - no bugs due to kernel API changes\n\nComment from hch:\n - Use the same fh_type values as XFS, since we use the same fh encoding.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0de6256daafa3a97a269995e9b29f956bd419bbf",
      "tree": "f71f080b3a895d25e6b956de72220e1e03464751",
      "parents": [
        "764c76b371722e0cba5c24d91225f0f954b69d44"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:48:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:48 2008 -0700"
      },
      "message": "fuse: prepare lookup for nfs export\n\nUse d_splice_alias() instead of d_add() in fuse lookup code, to allow NFS\nexporting.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "764c76b371722e0cba5c24d91225f0f954b69d44",
      "tree": "3f9bd533878f502b1235194b50a101a84a7c68be",
      "parents": [
        "b648a6de00770cc325c22f43bdd4e935f6a2ee55"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:48:58 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:48 2008 -0700"
      },
      "message": "locks: allow -\u003elock() to return FILE_LOCK_DEFERRED\n\nAllow filesystem\u0027s -\u003elock() method to call posix_lock_file() instead of\nposix_lock_file_wait(), and return FILE_LOCK_DEFERRED.  This makes it\npossible to implement a such a -\u003elock() function, that works with the lock\nmanager, which needs the call to be asynchronous.\n\nNow the vfs_lock_file() helper can be used, so this is a cleanup as well.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b648a6de00770cc325c22f43bdd4e935f6a2ee55",
      "tree": "fa2bc39a63059573b2c74b963f2d0e91c5f31b3a",
      "parents": [
        "bde74e4bc64415b142e556a34d295a52a1b7da9d"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:48:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:48 2008 -0700"
      },
      "message": "locks: cleanup code duplication\n\nExtract common code into a function.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bde74e4bc64415b142e556a34d295a52a1b7da9d",
      "tree": "b6bd229307ccab9b1ad03ffbc75f1f9960cd49e4",
      "parents": [
        "cc77b1521d06be07c9bb1a4a3e1f775dcaa15093"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:48:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:47 2008 -0700"
      },
      "message": "locks: add special return value for asynchronous locks\n\nUse a special error value FILE_LOCK_DEFERRED to mean that a locking\noperation returned asynchronously.  This is returned by\n\n  posix_lock_file() for sleeping locks to mean that the lock has been\n  queued on the block list, and will be woken up when it might become\n  available and needs to be retried (either fl_lmops-\u003efl_notify() is\n  called or fl_wait is woken up).\n\n  f_op-\u003elock() to mean either the above, or that the filesystem will\n  call back with fl_lmops-\u003efl_grant() when the result of the locking\n  operation is known.  The filesystem can do this for sleeping as well\n  as non-sleeping locks.\n\nThis is to make sure, that return values of -EAGAIN and -EINPROGRESS by\nfilesystems are not mistaken to mean an asynchronous locking.\n\nThis also makes error handling in fs/locks.c and lockd/svclock.c slightly\ncleaner.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc77b1521d06be07c9bb1a4a3e1f775dcaa15093",
      "tree": "b8089e3276d19ba6ab9ecd5ca7ddef7b62df4a7f",
      "parents": [
        "b81f3ea92ba1fa676775677679889dc2a7f03c8b"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:48:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:47 2008 -0700"
      },
      "message": "lockd: dont return EAGAIN for a permanent error\n\nFix nlm_fopen() to return NLM_FAILED (or NLM_LCK_DENIED_NOLOCKS) instead\nof NLM_LCK_DENIED.  The latter means the lock request failed because of a\nconflicting lock (i.e.  a temporary error), which is wrong in this case.\n\nAlso fix the client to return ENOLCK instead of EAGAIN if a blocking lock\nrequest returns with NLM_LOCK_DENIED.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "297c5d92634c809cef23d73e7b2556f2528ff7e2",
      "tree": "d006fa29daa24242c64cff3b66dd75fbb0003b0f",
      "parents": [
        "0c18d7a5df82524e634637c3aec24d4cba096442"
      ],
      "author": {
        "name": "Andrea Righi",
        "email": "righi.andrea@gmail.com",
        "time": "Fri Jul 25 01:48:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:47 2008 -0700"
      },
      "message": "task IO accounting: provide distinct tgid/tid I/O statistics\n\nReport per-thread I/O statistics in /proc/pid/task/tid/io and aggregate\nparent I/O statistics in /proc/pid/io.  This approach follows the same\nmodel used to account per-process and per-thread CPU times.\n\nAs a practial application, this allows for example to quickly find the top\nI/O consumer when a process spawns many child threads that perform the\nactual I/O work, because the aggregated I/O statistics can always be found\nin /proc/pid/io.\n\n[ Oleg Nesterov points out that we should check that the task is still\n  alive before we iterate over the threads, but also says that we can do\n  that fixup on top of this later.  - Linus ]\n\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrea Righi \u003crighi.andrea@gmail.com\u003e\nCc: Matt Heaton \u003cmatt@hostmonster.com\u003e\nCc: Shailabh Nagar \u003cnagar@watson.ibm.com\u003e\nAcked-by-with-comments: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6eedf8d30d2b48e86fbcee1a32fb2fa5f42219ee",
      "tree": "adc0b6174ca3eb7d284b7daba9bf820286fac94e",
      "parents": [
        "a9bd4a3e070ba7494f154e1a11687a8a957d88dc"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Jul 25 01:48:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:45 2008 -0700"
      },
      "message": "proc: move Kconfig to fs/proc/Kconfig\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9bd4a3e070ba7494f154e1a11687a8a957d88dc",
      "tree": "6e2736fc369308e417f61d8d25c5079136073cb4",
      "parents": [
        "881adb85358309ea9c6f707394002719982ec607"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Jul 25 01:48:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:45 2008 -0700"
      },
      "message": "proc: remove pathetic remount code\n\nMS_RMT_MASK will unmask changes in do_remount_sb() anyway.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "881adb85358309ea9c6f707394002719982ec607",
      "tree": "e4ffc2f6ca6013bab97bdb77b80e98b46a8d01e1",
      "parents": [
        "6e644c3126149b65460610fe5a00d8a162092abe"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Jul 25 01:48:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:44 2008 -0700"
      },
      "message": "proc: always do -\u003erelease\n\nCurrent two-stage scheme of removing PDE emphasizes one bug in proc:\n\n\t\topen\n\t\t\t\trmmod\n\t\t\t\tremove_proc_entry\n\t\tclose\n\n-\u003erelease won\u0027t be called because -\u003eproc_fops were cleared.  In simple\ncases it\u0027s small memory leak.\n\nFor every -\u003eopen, -\u003erelease has to be done.  List of openers is introduced\nwhich is traversed at remove_proc_entry() if neeeded.\n\nDiscussions with Al long ago (sigh).\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6e644c3126149b65460610fe5a00d8a162092abe",
      "tree": "74d324773bc25767832d19c662c7c4cf489554b3",
      "parents": [
        "cd9a6f1078ed07fe919667b73e829f3bac485573"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:48:28 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:44 2008 -0700"
      },
      "message": "move proc_kmsg_operations to fs/proc/internal.h\n\nThis patch moves the extern of struct proc_kmsg_operations to\nfs/proc/internal.h and adds an #include \"internal.h\" to fs/proc/kmsg.c\nso that the latter sees the former.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d991696263a704be7f41ac186f1a0ed17963c260",
      "tree": "8fd4d80ad8ddc7551b57de2a44d8d4cbc9699038",
      "parents": [
        "04ebd4aee52b06a2c38127d9208546e5b96f3a19"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jul 25 01:48:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:44 2008 -0700"
      },
      "message": "fs/partitions/efi: convert to pr_debug\n\nconvert the local Dprintk() compile time debug printk wrappers to the\ngeneric pr_debug() wrapper.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04ebd4aee52b06a2c38127d9208546e5b96f3a19",
      "tree": "25014f06e7bf53ec0b51d717a6a8d0cfb545d985",
      "parents": [
        "d805dda412346225a50af2d399d958a4bc676c38"
      ],
      "author": {
        "name": "Abdel Benamrouche",
        "email": "draconux@gmail.com",
        "time": "Fri Jul 25 01:48:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:44 2008 -0700"
      },
      "message": "block/ioctl.c and fs/partition/check.c: check value returned by add_partition()\n\nNow that add_partition() has been aught to propagate errors, let\u0027s check them.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Abdel Benamrouche \u003cdraconux@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d805dda412346225a50af2d399d958a4bc676c38",
      "tree": "34ac3439f553627677ec7d3531f40cbd254a6e0c",
      "parents": [
        "abe19b7b822a8fdbe3dbfd6e066d0698b4eefb06"
      ],
      "author": {
        "name": "Abdel Benamrouche",
        "email": "draconux@gmail.com",
        "time": "Fri Jul 25 01:48:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:44 2008 -0700"
      },
      "message": "fs/partition/check.c: fix return value warning\n\nfs/partitions/check.c:381: warning: ignoring return value of ___device_add___,\n  declared with attribute warn_unused_result\n\n[akpm@linux-foundation.org: multiple-return-statements-per-function are evil]\nSigned-off-by: Abdel Benamrouche \u003cdraconux@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "79885b227740b9c7d3057f2de556f4098d37cc8f",
      "tree": "8e61116e5bfd7aa50ed6f8359b8baf150d637780",
      "parents": [
        "7833351b5260b3a58b54a0c2e7065001d986d749"
      ],
      "author": {
        "name": "Edgar E. Iglesias",
        "email": "edgar.iglesias@axis.com",
        "time": "Fri Jul 25 01:48:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "elf: use ELF_CORE_EFLAGS for kcore ELF header flags\n\nELF_CORE_EFLAGS is already used by the binfmt_elf coredumper to set correct\narch specific ELF header flags on coredumps.  Use it for kcore dumps as well.\nAt the moment, this affects the CRIS and the H8300 arch.\n\nSigned-off-by: Edgar E. Iglesias \u003cedgar@axis.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "565b9b14e7f48131bca58840aa404bbef058fa89",
      "tree": "7925875b10dae248a9fa887c6881c544f59c6173",
      "parents": [
        "a94e2d408eaedbd85aae259621d46fafc10479a2"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:40 2008 -0700"
      },
      "message": "coredump: format_corename: fix the \"core_uses_pid\" logic\n\nI don\u0027t understand why the multi-thread coredump implies the core_uses_pid\nbehaviour, but we shouldn\u0027t use mm-\u003emm_users for that.  This counter can\nbe incremented by get_task_mm().  Use the valued returned by\ncoredump_wait() instead.\n\nAlso, remove the \"const char *pattern\" argument, format_corename() can use\ncore_pattern directly.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a94e2d408eaedbd85aae259621d46fafc10479a2",
      "tree": "d853f7b2e183875c6ad90fb6ab38e084b037d043",
      "parents": [
        "182c515fd2a942623aed4e4e0e0b37fe96571b05"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:40 2008 -0700"
      },
      "message": "coredump: kill mm-\u003ecore_done\n\nNow that we have core_state-\u003edumper list we can use it to wake up the\nsub-threads waiting for the coredump completion.\n\nThis uglifies the code and .text grows by 47 bytes, but otoh mm_struct\nlessens by sizeof(struct completion).  Also, with this change we can\ndecouple exit_mm() from the coredumping code.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "182c515fd2a942623aed4e4e0e0b37fe96571b05",
      "tree": "2b792a4efbb3577e90986ee92d7e1d5d708d0174",
      "parents": [
        "83914441f94c6f2cd468ca97365f6c34f418706e"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:40 2008 -0700"
      },
      "message": "coredump: elf_fdpic_core_dump: use core_state-\u003edumper list\n\nKill the nasty rcu_read_lock() + do_each_thread() loop, use the list\nencoded in mm-\u003ecore_state instead, s/GFP_ATOMIC/GFP_KERNEL/.\n\nThis patch allows futher cleanups in binfmt_elf_fdpic.c.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83914441f94c6f2cd468ca97365f6c34f418706e",
      "tree": "bbeb67d51e277b0caedb52072f3ac83fcf779d5a",
      "parents": [
        "b564daf806d492dd4f7afe9b6c83b8d35d137669"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:40 2008 -0700"
      },
      "message": "coredump: elf_core_dump: use core_state-\u003edumper list\n\nKill the nasty rcu_read_lock() + do_each_thread() loop, use the list\nencoded in mm-\u003ecore_state instead, s/GFP_ATOMIC/GFP_KERNEL/.\n\nThis patch allows futher cleanups in binfmt_elf.c, in particular we can\nkill the parallel info-\u003ethreads list.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b564daf806d492dd4f7afe9b6c83b8d35d137669",
      "tree": "fbd6d186035b9a0a270fca97887da5d6b106a60c",
      "parents": [
        "9d5b327bf198d2720666de958dcc2ae219d86952"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:40 2008 -0700"
      },
      "message": "coredump: construct the list of coredumping threads at startup time\n\nbinfmt-\u003ecore_dump() has to iterate over the all threads in system in order\nto find the coredumping threads and construct the list using the\nGFP_ATOMIC allocations.\n\nWith this patch each thread allocates the list node on exit_mm()\u0027s stack and\nadds itself to the list.\n\nThis allows us to do further changes:\n\n\t- simplify -\u003ecore_dump()\n\n\t- change exit_mm() to clear -\u003emm first, then wait for -\u003ecore_done.\n\t  this makes the coredumping process visible to oom_kill\n\n\t- kill mm-\u003ecore_done\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d5b327bf198d2720666de958dcc2ae219d86952",
      "tree": "2eba6fe178581c2291393a061ff42d09da95386b",
      "parents": [
        "c5f1cc8c1828486a61ab3e575da6e2c62b34d399"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:40 2008 -0700"
      },
      "message": "coredump: make mm-\u003ecore_state visible to -\u003ecore_dump()\n\nMove the \"struct core_state core_state\" from coredump_wait() to\ndo_coredump(), this makes mm-\u003ecore_state visible to binfmt-\u003ecore_dump().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c5f1cc8c1828486a61ab3e575da6e2c62b34d399",
      "tree": "9cc88e7d1dae063482e1e9117ded747578cbd7ad",
      "parents": [
        "8cd9c249128a59e8e833d454a784b0cbd338d468"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "coredump: turn core_state-\u003enr_threads into atomic_t\n\nTurn core_state-\u003enr_threads into atomic_t and kill now unneeded\ndown_write(\u0026mm-\u003emmap_sem) in exit_mm().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8cd9c249128a59e8e833d454a784b0cbd338d468",
      "tree": "54adf775bdd63fd55fc52b5ac70130a17058d866",
      "parents": [
        "999d9fc1670bc082928b93b11d1f2e0e417d973c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "coredump: simplify core_state-\u003enr_threads calculation\n\nChange zap_process() to return int instead of incrementing\nmm-\u003ecore_state-\u003enr_threads directly.  Change zap_threads() to set\nmm-\u003ecore_state only on success.\n\nThis patch restores the original size of .text, and more importantly now\n-\u003enr_threads is used in two places only.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "999d9fc1670bc082928b93b11d1f2e0e417d973c",
      "tree": "e540e7fd2fab970ba2be5e39ac9f8282a373bc24",
      "parents": [
        "32ecb1f26dd50eeaac4e3f4dea4541c97848e459"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "coredump: move mm-\u003ecore_waiters into struct core_state\n\nMove mm-\u003ecore_waiters into \"struct core_state\" allocated on stack.  This\nshrinks mm_struct a little bit and allows further changes.\n\nThis patch mostly does s/core_waiters/core_state.  The only essential\nchange is that coredump_wait() must clear mm-\u003ecore_state before return.\n\nThe coredump_wait()\u0027s path is uglified and .text grows by 30 bytes, this\nis fixed by the next patch.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "32ecb1f26dd50eeaac4e3f4dea4541c97848e459",
      "tree": "4c2f3b6af9ff6babf2f395432de8e870508f2ec3",
      "parents": [
        "24d5288f06ed8b3a368eba967d587cdb012dfdf7"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "coredump: turn mm-\u003ecore_startup_done into the pointer to struct core_state\n\nmm-\u003ecore_startup_done points to \"struct completion startup_done\" allocated\non the coredump_wait()\u0027s stack.  Introduce the new structure, core_state,\nwhich holds this \"struct completion\".  This way we can add more info\nvisible to the threads participating in coredump without enlarging\nmm_struct.\n\nNo changes in affected .o files.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "24d5288f06ed8b3a368eba967d587cdb012dfdf7",
      "tree": "77844e275f2e3bcdc64427e64633e82f0207476d",
      "parents": [
        "15b9f360c0316c06d37c09b02d85565edbaf9dd3"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "coredump: elf_core_dump: skip kernel threads\n\nlinux_binfmt-\u003ecore_dump() runs before the process does exit_aio(), this\nmeans that we can hit the kernel thread which shares the same -\u003emm.\nAfaics, nothing really bad can happen, but perhaps it makes sense to fix\nthis minor bug.\n\nIt is sad we have to iterate over all threads in system and use\nGFP_ATOMIC.  Hopefully we can kill theses ugly do_each_thread()s, but this\nneeds some nontrivial changes in mm_struct and do_coredump.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15b9f360c0316c06d37c09b02d85565edbaf9dd3",
      "tree": "5e874b98b6f16ca1f376f5e4bd480da7ae5143b6",
      "parents": [
        "246bb0b1deb29726990620d8b5e55ca29f331362"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:39 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "coredump: zap_threads() must skip kernel threads\n\nThe main loop in zap_threads() must skip kthreads which may use the same\nmm.  Otherwise we \"kill\" this thread erroneously (for example, it can not\nfork or exec after that), and the coredumping task stucks in the\nTASK_UNINTERRUPTIBLE state forever because of the wrong -\u003ecore_waiters\ncount.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "246bb0b1deb29726990620d8b5e55ca29f331362",
      "tree": "5173b9e0c1d18934a8b2693c690a7162acb1bca8",
      "parents": [
        "7b34e4283c685f5cc6ba6d30e939906eee0d4bcf"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "kill PF_BORROWED_MM in favour of PF_KTHREAD\n\nKill PF_BORROWED_MM.  Change use_mm/unuse_mm to not play with -\u003eflags, and\ndo s/PF_BORROWED_MM/PF_KTHREAD/ for a couple of other users.\n\nNo functional changes yet.  But this allows us to do further\nfixes/cleanups.\n\noom_kill/ptrace/etc often check \"p-\u003emm !\u003d NULL\" to filter out the\nkthreads, this is wrong because of use_mm().  The problem with\nPF_BORROWED_MM is that we need task_lock() to avoid races.  With this\npatch we can check PF_KTHREAD directly, or use a simple lockless helper:\n\n\t/* The result must not be dereferenced !!! */\n\tstruct mm_struct *__get_task_mm(struct task_struct *tsk)\n\t{\n\t\tif (tsk-\u003eflags \u0026 PF_KTHREAD)\n\t\t\treturn NULL;\n\t\treturn tsk-\u003emm;\n\t}\n\nNote also ecard_task().  It runs with -\u003emm !\u003d NULL, but it\u0027s the kernel\nthread without PF_BORROWED_MM.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7b34e4283c685f5cc6ba6d30e939906eee0d4bcf",
      "tree": "6822edd5c63db79e97b8c5379a18a058bc5405ff",
      "parents": [
        "3d749b9e676b26584a47e75c235aa6f69d0697ae"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "introduce PF_KTHREAD flag\n\nIntroduce the new PF_KTHREAD flag to mark the kernel threads.  It is set\nby INIT_TASK() and copied to the forked childs (we could set it in\nkthreadd() along with PF_NOFREEZE instead).\n\ndaemonize() was changed as well.  In that case testing of PF_KTHREAD is\nracy, but daemonize() is hopeless anyway.\n\nThis flag is cleared in do_execve(), before search_binary_handler().\nProbably not the best place, we can do this in exec_mmap() or in\nstart_thread(), or clear it along with PF_FORKNOEXEC.  But I think this\ndoesn\u0027t matter in practice, and if do_execve() fails kthread should die\nsoon.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e4901f92a8dbe843e76651a50f7a2a6dd3d53474",
      "tree": "4cfd5edd17fcf1fe5e4372611c561928a99107d0",
      "parents": [
        "2b201a9eddf509e8e935b45e573648e36f4b623f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jul 25 01:47:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:38 2008 -0700"
      },
      "message": "coredump: zap_threads: comments \u0026\u0026 use while_each_thread()\n\nNo changes in fs/exec.o\n\nThe for_each_process() loop in zap_threads() is very subtle, it is not\nclear why we don\u0027t race with fork/exit/exec.  Add the fat comment.\n\nAlso, change the code to use while_each_thread().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "657d3bfa98e542271b449f8cd84c7501ae2b2255",
      "tree": "1e618dfbb055f2508aca8f0e503e0b525f2b4d0b",
      "parents": [
        "03b063436ca1076301de58d9d628f610ab5404ad"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:35 2008 -0700"
      },
      "message": "quota: implement sending information via netlink about user below quota\n\nSometimes it may be useful for userspace to know (e.g.  for some hosting\nguys) that some user stopped exceeding his hardlimit or softlimit in\nquotas.  Implement sending of such events to userspace via quota netlink\nprotocol so that they don\u0027t have to poll for such events.  Based on idea\nand initial implementation by Vladislav Bogdanov.\n\nCc: Vladislav Bogdanov \u003cslava@nsys.by\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74abb9890dafb12a50dc140de215ed477beb1b88",
      "tree": "30188b5932e54bc67fb88c0d05e5ba631fe9b698",
      "parents": [
        "02a55ca87185e114e5d298a8d00608501dbabf67"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:35 2008 -0700"
      },
      "message": "quota: move function-macros from quota.h to quotaops.h\n\nMove declarations of some macros, which should be in fact functions to\nquotaops.h.  This way they can be later converted to inline functions\nbecause we can now use declarations from quota.h.  Also add necessary\nincludes of quotaops.h to a few files.\n\n[akpm@linux-foundation.org: fix JFS build]\n[akpm@linux-foundation.org: fix UFS build]\n[vegard.nossum@gmail.com: fix QUOTA\u003dn build]\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nCc: Arjen Pool \u003carjenpool@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02a55ca87185e114e5d298a8d00608501dbabf67",
      "tree": "958b60f8fb2936d7207146ff99be431c2c17edc5",
      "parents": [
        "b85f4b87a511bea86dac68c4f0fabaee2cac6c4c"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:35 2008 -0700"
      },
      "message": "quota: cleanup loop in sync_dquots()\n\nMake loop in sync_dquots() checking whether there\u0027s something to write\nmore readable, remove useless variable and macro info_any_dirty() which\nis used only in this place.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \"Vegard Nossum\" \u003cvegard.nossum@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b85f4b87a511bea86dac68c4f0fabaee2cac6c4c",
      "tree": "978e541e47effe07119862f04becbb4f79b02742",
      "parents": [
        "b48d380541f634663b71766005838edbb7261685"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:35 2008 -0700"
      },
      "message": "quota: rename quota functions from upper case, make bigger ones non-inline\n\nCleanup quotaops.h: Rename functions from uppercase to lowercase (and\ndefine backward compatibility macros), move larger functions to dquot.c\nand make them non-inline.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b48d380541f634663b71766005838edbb7261685",
      "tree": "bb382e53ada390bf42b219b80c662992abd3b335",
      "parents": [
        "41003cde95e7e976d3876dbdcdc83dd0a9059279"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "quota: fix possible infinite loop in quota code\n\nWhen quota structure is going to be dropped and it is dirty, quota code tries\nto write it.  If the write fails for some reason (e.  g.  transaction cannot\nbe started because the journal is aborted), we try writing again and again and\nagain...  Fix the problem by clearing the dirty bit even if the write failed.\n\n(akpm: for 2.6.27, 2.6.26.x and 2.6.25.x)\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nReviewed-by: dingdinghua \u003cdingdinghua85@gmail.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b271e067c896ad4082b15e96077675d08db40625",
      "tree": "1837d1c988226116e277c4f71b7f57aed5a7df05",
      "parents": [
        "e8938a62a85d1f487e02c3b01955b47c9598f6d2"
      ],
      "author": {
        "name": "Joe Peterson",
        "email": "joe@skyrush.com",
        "time": "Fri Jul 25 01:46:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "fatfs: add UTC timestamp option\n\nProvide a new mount option (\"tz\u003dUTC\") for DOS (vfat/msdos) filesystems,\nallowing timestamps to be in coordinated universal time (UTC) rather than\nlocal time in applications where doing this is advantageous.\n\nIn particular, portable devices that use fat/vfat (such as digital\ncameras) can benefit from using UTC in their internal clocks, thus\navoiding daylight saving time errors and general time ambiguity issues.\nThe user of the device does not have to worry about changing the time when\nmoving from place or when daylight saving changes.\n\nThe new mount option, when set, disables the counter-adjustment that Linux\ncurrently makes to FAT timestamp info in anticipation of the normal\nuserspace time zone correction.  When used in this new mode, all daylight\nsaving time and time zone handling is done in userspace as is normal for\nmany other filesystems (like ext3).  The default mode, which remains\nunchanged, is still appropriate when mounting volumes written in Windows\n(because of its use of local time).\n\nI originally based this patch on one submitted last year by Paul Collins,\nbut I updated it to work with current source and changed variable/option\nnaming.  Ogawa Hirofumi (who maintains these filesystems) and I discussed\nthis patch at length on lkml, and he suggested using the option name in\nthe attached version of the patch.  Barry Bouwsma pointed out a good\naddition to the patch as well.\n\nSigned-off-by: Joe Peterson \u003cjoe@skyrush.com\u003e\nSigned-off-by: Paul Collins \u003cpaul@ondioline.org\u003e\nAcked-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Barry Bouwsma \u003cfree_beer_for_all@yahoo.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e8938a62a85d1f487e02c3b01955b47c9598f6d2",
      "tree": "39ef38f2ab6c69834cb5187fc2e3c6fcdbdef506",
      "parents": [
        "cf6ae8b50e0ee3f764392dadd1970e3f03c40773"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:46:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "remove unused #include \u003clinux/dirent.h\u003e\u0027s\n\nRemove some unused #include \u003clinux/dirent.h\u003e\u0027s.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7557bc66be629d19a402e752673708bfbb8b5e86",
      "tree": "c7be80cf3eb21ac338f962c211314088d570984e",
      "parents": [
        "dcd8c53f13f068ee039589d84fbd0baf686abc41"
      ],
      "author": {
        "name": "Rene Scharfe",
        "email": "rene.scharfe@lsrfire.ath.cx",
        "time": "Fri Jul 25 01:46:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "msdos fs: remove unsettable atari option\n\nIt has been impossible to set the option \u0027atari\u0027 of the MSDOS filesystem\nfor several years.  Since nobody seems to have missed it, let\u0027s remove its\nremains.\n\nSigned-off-by: Rene Scharfe \u003crene.scharfe@lsrfire.ath.cx\u003e\nAcked-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dcd8c53f13f068ee039589d84fbd0baf686abc41",
      "tree": "76dff1ae4a77a8756925e5dfe283051e12395a3e",
      "parents": [
        "98a15160049fc1a0f822047f33ff513906a35567"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Fri Jul 25 01:46:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "fat: small optimization to __fat_readdir()\n\nThis removes unnecessary parsing for directory entries.\n\nIf short_only, we don\u0027t need to parse longname.  And if !both and it found\nthe longname, we don\u0027t need shortname.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "98a15160049fc1a0f822047f33ff513906a35567",
      "tree": "94b25054da238755d525077d21f8717bb04ac2fb",
      "parents": [
        "d688611674cc9c265ee67e89d2ea8bf060c17e8d"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Fri Jul 25 01:46:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "fat: use same logic in fat_search_long() and __fat_readdir()\n\nThis uses uses stack for shortname, and uses __getname() for longname in\nfat_search_long() and __fat_readdir().  By this, it removes unneeded\n__getname() for shortname.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d688611674cc9c265ee67e89d2ea8bf060c17e8d",
      "tree": "ad08fc50024170e7c8b6fd31d23b6ab6395d5099",
      "parents": [
        "531f710f8e68fd2bad7516a090bff372f5f9cf6d"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Fri Jul 25 01:46:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "fat: cleanup fs/fat/dir.c\n\nThis is no logic changes, just cleans fs/fat/dir.c up.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "531f710f8e68fd2bad7516a090bff372f5f9cf6d",
      "tree": "1f0434a54a9e8b62736438e6cd151bf5abddaadd",
      "parents": [
        "4596c8aaf96e8634ca755c9f34b91420a39bebd4"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:46:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "fat/dir.c: switch to struct __fat_dirent\n\nstruct __fat_dirent is what was formerly the kernel struct dirent (that\nwas different from the userspace struct dirent).\n\nConverting all fat users to struct __fat_dirent will allow us to get rid\nof the conflicting struct dirent definition.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d44d9741f6808c107a144f469fb89e6fe7c55e3",
      "tree": "8260a685c5eb6710a36991548d6cb9dbf31520c7",
      "parents": [
        "3264d4ded4d916d294d776b77b72d477c63ac3be"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Fri Jul 25 01:46:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:34 2008 -0700"
      },
      "message": "fat: fix parse_options()\n\nCurrent parse_options() exits too early.  We need to run the code of\nbottom in this function even if users doesn\u0027t specify options.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3264d4ded4d916d294d776b77b72d477c63ac3be",
      "tree": "faa1e7e73e8ba3535688d27c62b9e0f22f824f56",
      "parents": [
        "90415deac75a761a25239af6f56381546f8d2201"
      ],
      "author": {
        "name": "Shen Feng",
        "email": "shen@cn.fujitsu.com",
        "time": "Fri Jul 25 01:46:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "reiserfs: remove double definitions of xattr macros\n\nremove the definitions of macros:\nXATTR_SECURITY_PREFIX\nXATTR_TRUSTED_PREFIX\nXATTR_USER_PREFIX\nsince they are defined in linux/xattr.h\n\nSigned-off-by: Shen Feng \u003cshen@cn.fujitsu.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "90415deac75a761a25239af6f56381546f8d2201",
      "tree": "dbe5a717fa3629533653af99492cd348a0ec7e1f",
      "parents": [
        "afe70259076fff0446001eaa1a287f615241a357"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Fri Jul 25 01:46:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "reiserfs: convert j_commit_lock to mutex\n\nj_commit_lock is a semaphore but uses it as if it were a mutex.  This patch\nconverts it to a mutex.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Edward Shishkin \u003cedward.shishkin@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "afe70259076fff0446001eaa1a287f615241a357",
      "tree": "d619c7f6235264a7b08aec16ba3563a686415079",
      "parents": [
        "f68215c4640a38d66429014e524a627bf572d26a"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Fri Jul 25 01:46:39 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "reiserfs: convert j_flush_sem to mutex\n\nj_flush_sem is a semaphore but uses it as if it were a mutex.  This patch\nconverts it to a mutex.\n\n[akpm@linux-foundation.org: fix mutex_trylock retval treatment]\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Edward Shishkin \u003cedward.shishkin@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f68215c4640a38d66429014e524a627bf572d26a",
      "tree": "9880a7adbdcda5dba88fe875520b787555b80802",
      "parents": [
        "00b441970a0ab48185244300ac7d4e4eb76df692"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Fri Jul 25 01:46:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "reiserfs: convert j_lock to mutex\n\nj_lock is a semaphore but uses it as if it were a mutex.  This patch converts\nit to a mutex.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Edward Shishkin \u003cedward.shishkin@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00b441970a0ab48185244300ac7d4e4eb76df692",
      "tree": "5e0e7b72b0388dd889da267e669dd1e427e82946",
      "parents": [
        "4506567b24d3ea707e46e8aad64caef539382f4b"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "reiserfs: correct mount option parsing to detect when quota options can be changed\n\nWe should not allow user to change quota mount options when quota is just\nsuspended.  It would make mount options and internal quota state inconsistent.\n\nAlso we should not allow user to change quota format when quota is turned on.\nOn the other hand we can just silently ignore when some option is set to the\nvalue it already has (some mount versions do this on remount).  Finally, we\nshould not discard current quota options if parsing of mount options fails.\n\nCc: \u003creiserfs-devel@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4506567b24d3ea707e46e8aad64caef539382f4b",
      "tree": "71ae6e1674f3675f178c8d14a0b024b77808d01b",
      "parents": [
        "5d4f7fddf8882b214e4aabb3bdb37f90a72b2537"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "reiserfs: fix typos in messages and comments (journalled -\u003e journaled)\n\nCc: \u003creiserfs-devel@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5d4f7fddf8882b214e4aabb3bdb37f90a72b2537",
      "tree": "b8cf1f13c1032367c0160722764adf1cbca9e92a",
      "parents": [
        "895c23f8c39c0c8d7b536bb2566d4aa968d78be2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "reiserfs: fix synchronization of quota files in journal\u003ddata mode\n\nIn journal\u003ddata mode, it is not enough to do write_inode_now() as done in\nvfs_quota_on() to write all data to their final location (which is needed for\nquota_read to work correctly).  Calling journal_end_sync() before calling\nvfs_quota_on() does it\u0027s job because transactions are committed to the journal\nand data marked as dirty in memory so write_inode_now() writes them to their\nfinal locations.\n\nCc: \u003creiserfs-devel@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "895c23f8c39c0c8d7b536bb2566d4aa968d78be2",
      "tree": "3744aca0dc59f075e53af348062ad11efdb21192",
      "parents": [
        "39f8d472f280dee6503a364d1d911b9e20ce3ec9"
      ],
      "author": {
        "name": "Matthias Kaehlcke",
        "email": "matthias@kaehlcke.net",
        "time": "Fri Jul 25 01:46:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "hfsplus: convert the extents_lock in a mutex\n\nApple Extended HFS file system: The semaphore extents lock is used as a\nmutex.  Convert it to the mutex API.\n\nSigned-off-by: Matthias Kaehlcke \u003cmatthias@kaehlcke.net\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39f8d472f280dee6503a364d1d911b9e20ce3ec9",
      "tree": "43c05018acca3e30234b914e4bf80439915a2807",
      "parents": [
        "3084b72de73a6f8af0f16989ffb348068bd066d4"
      ],
      "author": {
        "name": "Matthias Kaehlcke",
        "email": "matthias@kaehlcke.net",
        "time": "Fri Jul 25 01:46:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "hfs: convert extents_lock in a mutex\n\nApple Macintosh file system: The semaphore extens_lock is used as a mutex.\nConvert it to the mutex API\n\nSigned-off-by: Matthias Kaehlcke \u003cmatthias@kaehlcke.net\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3084b72de73a6f8af0f16989ffb348068bd066d4",
      "tree": "ef0993d1c2d8e14237cda0277eb68e4fb3653523",
      "parents": [
        "de0ca06a99c33df8333955642843331ab6b6e7ff"
      ],
      "author": {
        "name": "Matthias Kaehlcke",
        "email": "matthias@kaehlcke.net",
        "time": "Fri Jul 25 01:46:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "hfs: convert bitmap_lock in a mutex\n\nApple Macintosh file system: The semaphore bitmap_lock is used as a mutex.\nConvert it to the mutex API\n\nSigned-off-by: Matthias Kaehlcke \u003cmatthias@kaehlcke.net\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de0ca06a99c33df8333955642843331ab6b6e7ff",
      "tree": "3799e038c41476fd6366dae2a7919474125c4bd8",
      "parents": [
        "c0a1633b6201ef79e31b7da464d44fdf5953054d"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:46:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "coda: remove CODA_FS_OLD_API\n\nWhile fixing CONFIG_ leakages to the userspace kernel headers I ran into\nCODA_FS_OLD_API.\n\nAfter five years, are there still people using the old API left?\nEspecially considering that you have to choose at compile time which API\nto support in the kernel (and distributions tend to offer the new API for\nsome time).\n\nJan: \"The old API can definitely go.  Around the time the new\n      interface went in there were some non-Coda userspace file system\n      implementations that took a while longer to convert to the new API,\n      but by now they all switched to the new interface or in some cases\n      to a FUSE-based solution.\"\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Jan Harkes \u003cjaharkes@cs.cmu.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c0a1633b6201ef79e31b7da464d44fdf5953054d",
      "tree": "f379e3541e56aa805c5e3b15b2e5eadd3ca8cc28",
      "parents": [
        "275c0a8f1253a7542ad9726956c918d8a1f694c4"
      ],
      "author": {
        "name": "Adam Greenblatt",
        "email": "adam.greenblatt@gmail.com",
        "time": "Fri Jul 25 01:46:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "isofs: fix minor filesystem corruption\n\nSome iso9660 images contain files with rockridge data that is either\nincorrect or incompletely parsed.  Prior to commit\nf2966632a134e865db3c819346a1dc7d96e05309 (\"[PATCH] rock: handle directory\noverflows\") (included with kernel 2.6.13) the kernel ignored the rockridge\ndata for these files, while still allowing the files to be accessed under\ntheir non-rockridge names.  That commit inadvertently changed things so\nthat files with invalid rockridge data could not be accessed at all.  (I\nran across the problem when comparing some old CDs with hard disk copies I\nhad made long ago under kernel 2.4: a few of the files on the hard disk\ncopies were no longer visible on the CDs.)\n\nThis change reverts to the pre-2.6.13 behavior.\n\nSigned-off-by: Adam Greenblatt \u003cadam.greenblatt@gmail.com\u003e\nReviewed-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.25.x, 2.6.26.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "275c0a8f1253a7542ad9726956c918d8a1f694c4",
      "tree": "775834cb708749217f56523b9517aba700978409",
      "parents": [
        "cbe5f466f6995e10a10c7ae66d6dc8608f08a6b8"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "ext3: validate directory entry data before use\n\next3_dx_find_entry uses ext3_next_entry without verifying that the entry\nis valid.  If its rec_len \u003d\u003d 0 this causes an infinite loop.  Refactor the\nloop to check the validity of entries before checking whether they match\nand moving onto the next one.\n\nThere are other uses of ext3_next_entry in this file which also look\nproblematic.  They should be reviewed and fixed if/when we have a\ntest-case that triggers them.\n\nThis patch fixes the first case (image hdb.25.softlockup.gz) reported in\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d10882.\n\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cbe5f466f6995e10a10c7ae66d6dc8608f08a6b8",
      "tree": "237bbbda6ddd6e38dc7004cd870cbce7af0684c4",
      "parents": [
        "8ef2720397bb813d4985405a5ae7b8ad6474188b"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Fri Jul 25 01:46:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "jbd: don\u0027t abort if flushing file data failed\n\nIn ordered mode, the current jbd aborts the journal if a file data buffer\nhas an error.  But this behavior is unintended, and we found that it has\nbeen adopted accidentally.\n\nThis patch undoes it and just calls printk() instead of aborting the\njournal.  Additionally, set AS_EIO into the address_space object of the\nfailed buffer which is submitted by journal_do_submit_data() so that\nfsync() can get -EIO.\n\nMissing error checkings are also added to inform errors on file data\nbuffers to the user.  The following buffers are targeted.\n\n  (a) the buffer which has already been written out by pdflush\n  (b) the buffer which has been unlocked before scanned in the\n      t_locked_list loop\n\n[akpm@linux-foundation.org: improve grammar in a printk]\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ef2720397bb813d4985405a5ae7b8ad6474188b",
      "tree": "d96e7aeeff719a658324661301a7c026f11a3263",
      "parents": [
        "fc80c44277b3c92d808b73e9d40e120229aa4b6a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Jul 25 01:46:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: kill 2 useless magic numbers\n\ndx_root_limit() will never return 20, and I can\u0027t figure out what 20\nstands for.  This function has never changed since htree directory\nindexing was merged.\n\nSimilar for dx_node_limit() and the magic 22.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Andreas Dilger \u003cadilger@sun.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc80c44277b3c92d808b73e9d40e120229aa4b6a",
      "tree": "db0848f89305aa3c90b07ad773badc17f858405e",
      "parents": [
        "a10320e8f7c4dcfa050aac566092f29b40458d5a"
      ],
      "author": {
        "name": "Toshiyuki Okajima",
        "email": "toshi.okajima@jp.fujitsu.com",
        "time": "Fri Jul 25 01:46:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "jbd: positively dispose the unmapped data buffers in journal_commit_transaction()\n\nAfter ext3-ordered files are truncated, there is a possibility that the\npages which cannot be estimated still remain.  Remaining pages can be\nreleased when the system has really few memory.  So, it is not memory\nleakage.  But the resource management software etc.  may not work\ncorrectly.\n\nIt is possible that journal_unmap_buffer() cannot release the buffers, and\nthe pages to which they belong because they are attached to a commiting\ntransaction and journal_unmap_buffer() cannot release them.  To release\nsuch the buffers and the pages later, journal_unmap_buffer() leaves it to\njournal_commit_transaction().  (journal_unmap_buffer() puts the mark\n\u0027BH_Freed\u0027 to the buffers so that journal_commit_transaction() can\nidentify whether they can be released or not.)\n\nIn the journalled mode and the writeback mode, jbd does with only metadata\nbuffers.  But in the ordered mode, jbd does with metadata buffers and also\ndata buffers.\n\nActually, journal_commit_transaction() releases only the metadata buffers\nof which release is demanded by journal_unmap_buffer(), and also releases\nthe pages to which they belong if possible.\n\nAs a result, the data buffers of which release is demanded by\njournal_unmap_buffer() remain after a transaction commits.  And also the\npages to which they belong remain.\n\nSuch the remained pages don\u0027t have mapping any longer.  Due to this fact,\nthere is a possibility that the pages which cannot be estimated remain.\n\nThe metadata buffers marked \u0027BH_Freed\u0027 and the pages to which\nthey belong can be released at \u0027JBD: commit phase 7\u0027.\n\nTherefore, by applying the same code into \u0027JBD: commit phase 2\u0027 (where the\ndata buffers are done with), journal_commit_transaction() can also release\nthe data buffers marked \u0027BH_Freed\u0027 and the pages to which they belong.\n\nAs a result, all the buffers marked \u0027BH_Freed\u0027 can be released, and also\nall the pages to which these buffers belong can be released at\njournal_commit_transaction().  So, the page which cannot be estimated is\nlost.\n\n\u003c\u003cExcerpt of code at \u0027JBD: commit phase 7\u0027\u003e\u003e\n \u003e         spin_lock(\u0026journal-\u003ej_list_lock);\n \u003e         while (commit_transaction-\u003et_forget) {\n \u003e                 transaction_t *cp_transaction;\n \u003e                 struct buffer_head *bh;\n \u003e\n \u003e                 jh \u003d commit_transaction-\u003et_forget;\n \u003e...\n \u003e                 if (buffer_freed(bh)) {\n \u003e                 ^^^^^^^^^^^^^^^^^^^^^^^^\n \u003e                         clear_buffer_freed(bh);\n \u003e                        ^^^^^^^^^^^^^^^^^^^^^^^^\n \u003e                         clear_buffer_jbddirty(bh);\n \u003e                 }\n \u003e\n \u003e                 if (buffer_jbddirty(bh)) {\n \u003e                         JBUFFER_TRACE(jh, \"add to new checkpointing trans\");\n \u003e                         __journal_insert_checkpoint(jh, commit_transaction);\n \u003e                         JBUFFER_TRACE(jh, \"refile for checkpoint writeback\");\n \u003e                         __journal_refile_buffer(jh);\n \u003e                         jbd_unlock_bh_state(bh);\n \u003e                 } else {\n \u003e                         J_ASSERT_BH(bh, !buffer_dirty(bh));\n \u003e ...\n \u003e                         JBUFFER_TRACE(jh, \"refile or unfile freed buffer\");\n \u003e                         __journal_refile_buffer(jh);\n \u003e                         if (!jh-\u003eb_transaction) {\n \u003e                                 jbd_unlock_bh_state(bh);\n \u003e                                  /* needs a brelse */\n \u003e                                 journal_remove_journal_head(bh);\n \u003e                                 release_buffer_page(bh);\n \u003e                                 ^^^^^^^^^^^^^^^^^^^^^^^^\n \u003e                         } else\n \u003e                 }\n****************************************************************\n* Apply the code of \"^^^^^^\" lines into \u0027JBD: commit phase 2\u0027 *\n****************************************************************\n\nAt journal_commit_transaction() code, there is one extra message in the\nseries of jbd debug messages.  (\"JBD: commit phase 2\") This patch fixes\nit, too.\n\nSigned-off-by: Toshiyuki Okajima \u003ctoshi.okajima@jp.fujitsu.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a10320e8f7c4dcfa050aac566092f29b40458d5a",
      "tree": "5ec4dbd114fb5700ba8f0edeea80eea75227d2bc",
      "parents": [
        "3ccc3167b0e5d46ab3bf03e22fbdb7616ce038cd"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:46:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "jbd: unexport journal_update_superblock\n\nRemove the unused EXPORT_SYMBOL(journal_update_superblock).\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ccc3167b0e5d46ab3bf03e22fbdb7616ce038cd",
      "tree": "2dcd2ebb5ffa7271541d23e721101fca57a0eb33",
      "parents": [
        "95450f5a7e53d5752ce1a0d0b8282e10fe745ae0"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: handle deleting corrupted indirect blocks\n\nWhile freeing indirect blocks we attach a journal head to the parent\nbuffer head, free the blocks, then journal the parent.  If the indirect\nblock list is corrupted and points to the parent the journal head will be\ndetached when the block is cleared, causing an OOPS.\n\nCheck for that explicitly and handle it gracefully.\n\nThis patch fixes the third case (image hdb.20000057.nullderef.gz)\nreported in http://bugzilla.kernel.org/show_bug.cgi?id\u003d10882.\n\nImmediately above the change, in the ext3_free_data function, we call\next3_clear_blocks to clear the indirect blocks in this parent block.  If\none of those blocks happens to actually be the parent block it will clear\nb_private / BH_JBD.\n\nI did the check at the end rather than earlier as it seemed more elegant.\nI don\u0027t think there should be much practical difference, although it is\npossible the FS may not be quite so badly corrupted if we did it the other\nway (and didn\u0027t clear the block at all).  To be honest, I\u0027m not convinced\nthere aren\u0027t other similar failure modes lurking in this code, although I\ncouldn\u0027t find any with a quick review.\n\n[akpm@linux-foundation.org: fix printk warning]\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95450f5a7e53d5752ce1a0d0b8282e10fe745ae0",
      "tree": "acd55d917280641fd3487b73e67298caeac9ee80",
      "parents": [
        "ae76dd9a6b5bbe5315fb7028e03f68f75b8538f3"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Fri Jul 25 01:46:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: don\u0027t read inode block if the buffer has a write error\n\nA transient I/O error can corrupt inode data.  Here is the scenario:\n\n(1) update inode_A at the block_B\n(2) pdflush writes out new inode_A to the filesystem, but it results\n    in write I/O error, at this point, BH_Uptodate flag of the buffer\n    for block_B is cleared and BH_Write_EIO is set\n(3) create new inode_C which located at block_B, and\n    __ext3_get_inode_loc() tries to read on-disk block_B because the\n    buffer is not uptodate\n(4) if it can read on-disk block_B successfully, inode_A is\n    overwritten by old data\n\nThis patch makes __ext3_get_inode_loc() not read the inode block if the\nbuffer has BH_Write_EIO flag.  In this case, the buffer should have the\nlatest information, so setting the uptodate flag to the buffer (this\navoids WARN_ON_ONCE() in mark_buffer_dirty().)\n\nAccording to this change, we would need to test BH_Write_EIO flag for the\nerror checking.  Currently nobody checks write I/O errors on metadata\nbuffers, but it will be done in other patches I\u0027m working on.\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nCc: sugita \u003cyumiko.sugita.yf@hitachi.com\u003e\nCc: Satoshi OSHIMA \u003csatoshi.oshima.fk@hitachi.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae76dd9a6b5bbe5315fb7028e03f68f75b8538f3",
      "tree": "3b877057e84fda45782dd25a3c8be91173324922",
      "parents": [
        "ef1afd39519b74fbe1f63c9ab5a14490effec0e3"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: handle corrupted orphan list at mount\n\nIf the orphan node list includes valid, untruncatable nodes with nlink \u003e 0\nthe ext3_orphan_cleanup loop which attempts to delete them will not do so,\ncausing it to loop forever. Fix by checking for such nodes in the\next3_orphan_get function.\n\nThis patch fixes the second case (image hdb.20000009.softlockup.gz)\nreported in http://bugzilla.kernel.org/show_bug.cgi?id\u003d10882.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: printk warning fix]\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ef1afd39519b74fbe1f63c9ab5a14490effec0e3",
      "tree": "161247cae3a51ee42dc10d95db79705871dc0eb7",
      "parents": [
        "3f31fddfa26b7594b44ff2b34f9a04ba409e0f91"
      ],
      "author": {
        "name": "Shen Feng",
        "email": "shen@cn.fujitsu.com",
        "time": "Fri Jul 25 01:46:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: remove double definitions of xattr macros\n\nremove the definitions of macros:\nXATTR_TRUSTED_PREFIX\nXATTR_USER_PREFIX\nsince they are defined in linux/xattr.h\n\nSigned-off-by: Shen Feng \u003cshen@cn.fujitsu.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3f31fddfa26b7594b44ff2b34f9a04ba409e0f91",
      "tree": "88994baf22f65dc4da0bef17ce61eda09c59db2a",
      "parents": [
        "9ebfbe9f926553eabc21b4400918d1216b27ed0c"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Fri Jul 25 01:46:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "jbd: fix race between free buffer and commit transaction\n\njournal_try_to_free_buffers() could race with jbd commit transaction when\nthe later is holding the buffer reference while waiting for the data\nbuffer to flush to disk.  If the caller of journal_try_to_free_buffers()\nrequest tries hard to release the buffers, it will treat the failure as\nerror and return back to the caller.  We have seen the directo IO failed\ndue to this race.  Some of the caller of releasepage() also expecting the\nbuffer to be dropped when passed with GFP_KERNEL mask to the\nreleasepage()-\u003ejournal_try_to_free_buffers().\n\nWith this patch, if the caller is passing the __GFP_WAIT and __GFP_FS to\nindicating this call could wait, in case of try_to_free_buffers() failed,\nlet\u0027s waiting for journal_commit_transaction() to finish commit the\ncurrent committing transaction, then try to free those buffers again.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nReviewed-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ebfbe9f926553eabc21b4400918d1216b27ed0c",
      "tree": "fb49beb7726579f0d798cf4d72aab646f52e2e1c",
      "parents": [
        "1984bb763c2e50d0ebfb0cf56d1b319bd7afe63a"
      ],
      "author": {
        "name": "Shen Feng",
        "email": "shen@cn.fujitsu.com",
        "time": "Fri Jul 25 01:46:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: improve some code in rb tree part of dir.c\n\n- remove unnecessary code in free_rb_tree_fname\n - rename free_rb_tree_fname to ext3_htree_create_dir_info\n   since it and ext3_htree_free_dir_info are a pair\n - replace kmalloc with kzalloc in ext3_htree_free_dir_info\n\nSigned-off-by: Shen Feng \u003cshen@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1984bb763c2e50d0ebfb0cf56d1b319bd7afe63a",
      "tree": "dde3d0c06ee054d2d4439e6ac16da831f83a72a7",
      "parents": [
        "f4d79ca2fa211cffc07306eeed7013448e77d7ec"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "jbd: tidy up revoke cache initialisation and destruction\n\nMake revocation cache destruction safe to call if initialisation fails\npartially or entirely.  This allows it to be used to cleanup in the case\nof initialisation failure, simplifying that code slightly.\n\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4d79ca2fa211cffc07306eeed7013448e77d7ec",
      "tree": "dee0ba9ed8102f5d0bcadc1e93ca7affe2414e8f",
      "parents": [
        "3850f7a521dc17659ef6758a219f083418788490"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "jbd: eliminate duplicated code in revocation table init/destroy functions\n\nThe revocation table initialisation/destruction code is repeated for each\nof the two revocation tables stored in the journal.  Refactoring the\nduplicated code into functions is tidier, simplifies the logic in\ninitialisation in particular, and slightly reduces the code size.\n\nThere should not be any functional change.\n\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3850f7a521dc17659ef6758a219f083418788490",
      "tree": "d576d48a13f4c31aef846dd7f178f3159c38e138",
      "parents": [
        "d06bf1d252fe16f5f0d13e04da7a9913420aa1cf"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "jbd: replace potentially false assertion with if block\n\nIf an error occurs during jbd cache initialisation it is possible for the\njournal_head_cache to be NULL when journal_destroy_journal_head_cache is\ncalled.  Replace the J_ASSERT with an if block to handle the situation\ncorrectly.\n\nNote that even with this fix things will break badly if jbd is statically\ncompiled in and cache initialisation fails.\n\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d06bf1d252fe16f5f0d13e04da7a9913420aa1cf",
      "tree": "2b552d620b0a114d3085ddee3f9a1929040d8bf0",
      "parents": [
        "99aeaf639f61ab6be1967e5f92e2e28dafad8383"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: correct mount option parsing to detect when quota options can be changed\n\nWe should not allow user to change quota mount options when quota is just\nsuspended.  I would make mount options and internal quota state inconsistent.\nAlso we should not allow user to change quota format when quota is turned on.\nOn the other hand we can just silently ignore when some option is set to the\nvalue it already has (mount does this on remount).\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99aeaf639f61ab6be1967e5f92e2e28dafad8383",
      "tree": "0110d1098d20717424a44ea8bf1e8227708d1557",
      "parents": [
        "9cfe7b9010aa66da5f3b2bc33d9e30a4d53bd274"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:31 2008 -0700"
      },
      "message": "ext3: fix typos in messages and comments (journalled -\u003e journaled)\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9cfe7b9010aa66da5f3b2bc33d9e30a4d53bd274",
      "tree": "7cbafe89d4101f3bb0ca2132154e414dec4aecf7",
      "parents": [
        "50c33a84db4aa5082e3af8d873b22344ae2ebea8"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:31 2008 -0700"
      },
      "message": "ext3: fix synchronization of quota files in journal\u003ddata mode\n\nIn journal\u003ddata mode, it is not enough to do write_inode_now as done in\nvfs_quota_on() to write all data to their final location (which is needed for\nquota_read to work correctly).  Calling journal_flush() does its job.\n\nReported-by: Nick \u003cgentuu@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f905f06fca5d3949eca12f5a43e251a404b3470a",
      "tree": "303e8789f8e0dc5f82a712298a9086f242deb3d3",
      "parents": [
        "fb523f32275344282f20ef3352cbf03e599241e6"
      ],
      "author": {
        "name": "Shen Feng",
        "email": "shen@cn.fujitsu.com",
        "time": "Fri Jul 25 01:46:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:31 2008 -0700"
      },
      "message": "ext2: remove double definitions of xattr macros\n\nremove the definitions of macros:\nXATTR_TRUSTED_PREFIX\nXATTR_USER_PREFIX\nsince they are defined in linux/xattr.h\n\nSigned-off-by: Shen Feng \u003cshen@cn.fujitsu.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb523f32275344282f20ef3352cbf03e599241e6",
      "tree": "a21bc5f9e196d0ec786582e1a96b3dc5aafcf6b0",
      "parents": [
        "bbcd6d543de335bf81e96477f46a60a8bf51039c"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:46:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:30 2008 -0700"
      },
      "message": "minix: remove !NO_TRUNCATE code\n\nThis patch removes the !NO_TRUNCATE code that anyway required a manual\nediting of the code for being used.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba92a43dbaee339cf5915ef766d3d3ffbaaf103c",
      "tree": "eacaba8fedc91caec87fc5d10f213ad533c1d1e1",
      "parents": [
        "2b4bc46052ea8cd7c370b67ca0b9c26586f1439a"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Fri Jul 25 01:45:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:28 2008 -0700"
      },
      "message": "exec: remove some includes\n\nfs/exec.c used to need mman.h pagemap.h swap.h and rmap.h when it did\nmm-ish stuff in install_arg_page(); but no need for them after 2.6.22.\n\n[akpm@linux-foundation.org: unbreak arm]\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7bbf8fa6ba329b3552b75a0716f5fbc6f839499",
      "tree": "e15abdaaabf03a2f504b899417218486cfeb9ea8",
      "parents": [
        "3f307891ce0e7b0438c432af1aacd656a092ff45"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Jul 25 01:45:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:26 2008 -0700"
      },
      "message": "fs: ldm.[ch] use get_unaligned_* helpers\n\nReplace the private BE16/BE32/BE64 macros with direct calls to\nget_unaligned_be16/32/64.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "483fad1c3fa1060d7e6710e84a065ad514571739"
}
