)]}'
{
  "log": [
    {
      "commit": "a87e84b5cdfacf11af4e8a85c4bca9793658536f",
      "tree": "f8e3cb2d339d8ed0e987d55f725e501730cdc81d",
      "parents": [
        "342ff1a1b558ebbdb8cbd55ab6a63eca8b2473ca",
        "3c394ddaa7ea4205f933fd9b481166b2669368a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:54:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:54:33 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.32\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.32\u0027 of git://linux-nfs.org/~bfields/linux: (68 commits)\n  nfsd4: nfsv4 clients should cross mountpoints\n  nfsd: revise 4.1 status documentation\n  sunrpc/cache: avoid variable over-loading in cache_defer_req\n  sunrpc/cache: use list_del_init for the list_head entries in cache_deferred_req\n  nfsd: return success for non-NFS4 nfs4_state_start\n  nfsd41: Refactor create_client()\n  nfsd41: modify nfsd4.1 backchannel to use new xprt class\n  nfsd41: Backchannel: Implement cb_recall over NFSv4.1\n  nfsd41: Backchannel: cb_sequence callback\n  nfsd41: Backchannel: Setup sequence information\n  nfsd41: Backchannel: Server backchannel RPC wait queue\n  nfsd41: Backchannel: Add sequence arguments to callback RPC arguments\n  nfsd41: Backchannel: callback infrastructure\n  nfsd4: use common rpc_cred for all callbacks\n  nfsd4: allow nfs4 state startup to fail\n  SUNRPC: Defer the auth_gss upcall when the RPC call is asynchronous\n  nfsd4: fix null dereference creating nfsv4 callback client\n  nfsd4: fix whitespace in NFSPROC4_CLNT_CB_NULL definition\n  nfsd41: sunrpc: add new xprt class for nfsv4.1 backchannel\n  sunrpc/cache: simplify cache_fresh_locked and cache_fresh_unlocked.\n  ...\n"
    },
    {
      "commit": "342ff1a1b558ebbdb8cbd55ab6a63eca8b2473ca",
      "tree": "1f967f283dade6e03897169bb29513354f49f910",
      "parents": [
        "50223e486cabdcf7e540e519da1f26bab3084e5d",
        "24ed7a97464db44592495f98cff8bcee02f92bc2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:45 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (34 commits)\n  trivial: fix typo in aic7xxx comment\n  trivial: fix comment typo in drivers/ata/pata_hpt37x.c\n  trivial: typo in kernel-parameters.txt\n  trivial: fix typo in tracing documentation\n  trivial: add __init/__exit macros in drivers/gpio/bt8xxgpio.c\n  trivial: add __init macro/ fix of __exit macro location in ipmi_poweroff.c\n  trivial: remove unnecessary semicolons\n  trivial: Fix duplicated word \"options\" in comment\n  trivial: kbuild: remove extraneous blank line after declaration of usage()\n  trivial: improve help text for mm debug config options\n  trivial: doc: hpfall: accept disk device to unload as argument\n  trivial: doc: hpfall: reduce risk that hpfall can do harm\n  trivial: SubmittingPatches: Fix reference to renumbered step\n  trivial: fix typos \"man[ae]g?ment\" -\u003e \"management\"\n  trivial: media/video/cx88: add __init/__exit macros to cx88 drivers\n  trivial: fix typo in CONFIG_DEBUG_FS in gcov doc\n  trivial: fix missing printk space in amd_k7_smp_check\n  trivial: fix typo s/ketymap/keymap/ in comment\n  trivial: fix typo \"to to\" in multiple files\n  trivial: fix typos in comments s/DGBU/DBGU/\n  ...\n"
    },
    {
      "commit": "3d2d827f5ca5e32816194119d5c980c7e04474a6",
      "tree": "fe0e84669f5f20e1dff8e3dc6b191b4d5dfc0145",
      "parents": [
        "425fbf047cc70bb30dff368a6da02c8c2d229318"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Mon Sep 21 17:03:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "mm: move use_mm/unuse_mm from aio.c to mm/\n\nAnyone who wants to do copy to/from user from a kernel thread, needs\nuse_mm (like what fs/aio has).  Move that into mm/, to make reusing and\nexporting easier down the line, and make aio use it.  Next intended user,\nbesides aio, will be vhost-net.\n\nAcked-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@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": "6bfde05bf5c9682e255c6a2c669dc80f91af6296",
      "tree": "3ff62bb87fc12c1ce808a54f789c42c35be7c049",
      "parents": [
        "f8dbf0a7a4c5d98e8b70da9f7f4f6a89f3b7a7bb"
      ],
      "author": {
        "name": "Eric B Munson",
        "email": "ebmunson@us.ibm.com",
        "time": "Mon Sep 21 17:03:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "hugetlbfs: allow the creation of files suitable for MAP_PRIVATE on the vfs internal mount\n\nThis patchset adds a flag to mmap that allows the user to request that an\nanonymous mapping be backed with huge pages.  This mapping will borrow\nfunctionality from the huge page shm code to create a file on the kernel\ninternal mount and use it to approximate an anonymous mapping.  The\nMAP_HUGETLB flag is a modifier to MAP_ANONYMOUS and will not work without\nboth flags being preset.\n\nA new flag is necessary because there is no other way to hook into huge\npages without creating a file on a hugetlbfs mount which wouldn\u0027t be\nMAP_ANONYMOUS.\n\nTo userspace, this mapping will behave just like an anonymous mapping\nbecause the file is not accessible outside of the kernel.\n\nThis patchset is meant to simplify the programming model.  Presently there\nis a large chunk of boiler platecode, contained in libhugetlbfs, required\nto create private, hugepage backed mappings.  This patch set would allow\nuse of hugepages without linking to libhugetlbfs or having hugetblfs\nmounted.\n\nUnification of the VM code would provide these same benefits, but it has\nbeen resisted each time that it has been suggested for several reasons: it\nwould break PAGE_SIZE assumptions across the kernel, it makes page-table\nabstractions really expensive, and it does not provide any benefit on\narchitectures that do not support huge pages, incurring fast path\npenalties without providing any benefit on these architectures.\n\nThis patch:\n\nThere are two means of creating mappings backed by huge pages:\n\n        1. mmap() a file created on hugetlbfs\n        2. Use shm which creates a file on an internal mount which essentially\n           maps it MAP_SHARED\n\nThe internal mount is only used for shared mappings but there is very\nlittle that stops it being used for private mappings. This patch extends\nhugetlbfs_file_setup() to deal with the creation of files that will be\nmapped MAP_PRIVATE on the internal hugetlbfs mount. This extended API is\nused in a subsequent patch to implement the MAP_HUGETLB mmap() flag.\n\nSigned-off-by: Eric Munson \u003cebmunson@us.ibm.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3f96b79ad96263cc0ece7bb340cddf9b2ddfb1b3",
      "tree": "0da9828c16543164f1b055fd927ea3e222ca05e5",
      "parents": [
        "cdf7b3418ad5a8783efe8f9124023d9b869fec0f"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Mon Sep 21 17:03:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "tmpfs: depend on shmem\n\nCONFIG_SHMEM off gives you (ramfs masquerading as) tmpfs, even when\nCONFIG_TMPFS is off: that\u0027s a little anomalous, and I\u0027d intended to make\nmore sense of it by removing CONFIG_TMPFS altogether, always enabling its\ncode when CONFIG_SHMEM; but so many defconfigs have CONFIG_SHMEM on\nCONFIG_TMPFS off that we\u0027d better leave that as is.\n\nBut there is no point in asking for CONFIG_TMPFS if CONFIG_SHMEM is off:\nmake TMPFS depend on SHMEM, which also prevents TMPFS_POSIX_ACL\nshmem_acl.o being pointlessly built into the kernel when SHMEM is off.\n\nAnd a selfish change, to prevent the world from being rebuilt when I\nswitch between CONFIG_SHMEM on and off: the only CONFIG_SHMEM in the\nheader files is mm.h shmem_lock() - give that a shmem.c stub instead.\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nAcked-by: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f3e8fccd06d27773186a0094371daf2d84c79469",
      "tree": "46e652e6ac3588a26c6d3e38ea10274eb3fc2ea8",
      "parents": [
        "1c3aff1ceec2cc86810e2690e67873ff0c505862"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Mon Sep 21 17:03:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:40 2009 -0700"
      },
      "message": "mm: add get_dump_page\n\nIn preparation for the next patch, add a simple get_dump_page(addr)\ninterface for the CONFIG_ELF_CORE dumpers to use, instead of calling\nget_user_pages() directly.  They\u0027re not interested in errors: they\njust want to use holes as much as possible, to save space and make\nsure that the data is aligned where the headers said it would be.\n\nOh, and don\u0027t use that horrid DUMP_SEEK(off) macro!\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Minchan Kim \u003cminchan.kim@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": "5d863b89688e5811cd9e5bd0082cb38abe03adf3",
      "tree": "6041584a854fc70cd497843f134e2cf983741230",
      "parents": [
        "8c5cd6f3a1721085652da204d454af4f8b92eda2"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Sep 21 17:03:16 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:39 2009 -0700"
      },
      "message": "oom: fix oom_adjust_write() input sanity check\n\nAndrew Morton pointed out oom_adjust_write() has very strange EIO\nand new line handling. this patch fixes it.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@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": "495789a51a91cb8c015d8d77fecbac1caf20b186",
      "tree": "ac2a71ed40ed84f5673326aa6bf7f278b54d989a",
      "parents": [
        "28b83c5193e7ab951e402252278f2cc79dc4d298"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Sep 21 17:03:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:39 2009 -0700"
      },
      "message": "oom: make oom_score to per-process value\n\noom-killer kills a process, not task.  Then oom_score should be calculated\nas per-process too.  it makes consistency more and makes speed up\nselect_bad_process().\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@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": "28b83c5193e7ab951e402252278f2cc79dc4d298",
      "tree": "10080e8d3957c2a03f8419ab44c9ecb0ffcdaee0",
      "parents": [
        "f168e1b6390e2d79cf57e48e6ae6d9b0a9e2851a"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Sep 21 17:03:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:39 2009 -0700"
      },
      "message": "oom: move oom_adj value from task_struct to signal_struct\n\nCurrently, OOM logic callflow is here.\n\n    __out_of_memory()\n        select_bad_process()            for each task\n            badness()                   calculate badness of one task\n                oom_kill_process()      search child\n                    oom_kill_task()     kill target task and mm shared tasks with it\n\nexample, process-A have two thread, thread-A and thread-B and it have very\nfat memory and each thread have following oom_adj and oom_score.\n\n     thread-A: oom_adj \u003d OOM_DISABLE, oom_score \u003d 0\n     thread-B: oom_adj \u003d 0,           oom_score \u003d very-high\n\nThen, select_bad_process() select thread-B, but oom_kill_task() refuse\nkill the task because thread-A have OOM_DISABLE.  Thus __out_of_memory()\ncall select_bad_process() again.  but select_bad_process() select the same\ntask.  It mean kernel fall in livelock.\n\nThe fact is, select_bad_process() must select killable task.  otherwise\nOOM logic go into livelock.\n\nAnd root cause is, oom_adj shouldn\u0027t be per-thread value.  it should be\nper-process value because OOM-killer kill a process, not thread.  Thus\nThis patch moves oomkilladj (now more appropriately named oom_adj) from\nstruct task_struct to struct signal_struct.  it naturally prevent\nselect_bad_process() choose wrong task.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@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": "4481374ce88ba8f460c8b89f2572027bd27057d0",
      "tree": "6896601b6a1da0e3e932ffa75fcff966c834c02c",
      "parents": [
        "4738e1b9cf8f9e28d7de080a5e6ce5d0095ea18f"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Mon Sep 21 17:03:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:38 2009 -0700"
      },
      "message": "mm: replace various uses of num_physpages by totalram_pages\n\nSizing of memory allocations shouldn\u0027t depend on the number of physical\npages found in a system, as that generally includes (perhaps a huge amount\nof) non-RAM pages.  The amount of what actually is usable as storage\nshould instead be used as a basis here.\n\nSome of the calculations (i.e.  those not intending to use high memory)\nshould likely even use (totalram_pages - totalhigh_pages).\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73d7c33e81aed92ac185950a20407c1a2ea65a83",
      "tree": "e178b87c69034a6487db9bdfbf7ffc932056002f",
      "parents": [
        "d0107eb07320b5d37c0f8a9f015534caebb28a48"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Sep 21 17:02:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:34 2009 -0700"
      },
      "message": "kcore: /proc/kcore should use vread\n\n/proc/kcore has its own routine to access vmallc area.  It can be replaced\nwith vread().  And by this, /proc/kcore can do safe access to vmalloc\narea.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Mike Smith \u003cscgtrp@gmail.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "398499d5f3613c47f2143b8c54a04efb5d7a6da9",
      "tree": "0b337ca1d0e20caa2295c159d5c0deadf362e4a0",
      "parents": [
        "7103ad323b1ae32bedc3267402117e2f8b45e48d"
      ],
      "author": {
        "name": "Moussa A. Ba",
        "email": "moussa.a.ba@gmail.com",
        "time": "Mon Sep 21 17:02:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:33 2009 -0700"
      },
      "message": "pagemap clear_refs: modify to specify anon or mapped vma clearing\n\nThe patch makes the clear_refs more versatile in adding the option to\nselect anonymous pages or file backed pages for clearing.  This addition\nhas a measurable impact on user space application performance as it\ndecreases the number of pagewalks in scenarios where one is only\ninterested in a specific type of page (anonymous or file mapped).\n\nThe patch adds anonymous and file backed filters to the clear_refs interface.\n\necho 1 \u003e /proc/PID/clear_refs resets the bits on all pages\necho 2 \u003e /proc/PID/clear_refs resets the bits on anonymous pages only\necho 3 \u003e /proc/PID/clear_refs resets the bits on file backed pages only\n\nAny other value is ignored\n\nSigned-off-by: Moussa A. Ba \u003cmoussa.a.ba@gmail.com\u003e\nSigned-off-by: Jared E. Hulbert \u003cjaredeh@gmail.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a840895147b12de5cdd633c600b38686840ee53",
      "tree": "a266a69a39decb4ec0364ac331f0ab19b6f09f06",
      "parents": [
        "21333b2b66b805a360641568588e5a0bb06d9d1f"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Mon Sep 21 17:02:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:31 2009 -0700"
      },
      "message": "ksm: identify PageKsm pages\n\nKSM will need to identify its kernel merged pages unambiguously, and\n/proc/kpageflags will probably like to do so too.\n\nSince KSM will only be substituting anonymous pages, statistics are best\npreserved by making a PageKsm page a special PageAnon page: one with no\nanon_vma.\n\nBut KSM then needs its own page_add_ksm_rmap() - keep it in ksm.h near\nPageKsm; and do_wp_page() must COW them, unlike singly mapped PageAnons.\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: Chris Wright \u003cchrisw@redhat.com\u003e\nSigned-off-by: Izik Eidus \u003cieidus@redhat.com\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b02108ac1b3354a22b0d83c684797692efdc395",
      "tree": "9f65d6e8e35ddce940e7b9da6305cf5a19e5904e",
      "parents": [
        "c6a7f5728a1db45d30df55a01adc130b4ab0327c"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Sep 21 17:01:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:27 2009 -0700"
      },
      "message": "mm: oom analysis: add shmem vmstat\n\nRecently we encountered OOM problems due to memory use of the GEM cache.\nGenerally a large amuont of Shmem/Tmpfs pages tend to create a memory\nshortage problem.\n\nWe often use the following calculation to determine the amount of shmem\npages:\n\nshmem \u003d NR_ACTIVE_ANON + NR_INACTIVE_ANON - NR_ANON_PAGES\n\nhowever the expression does not consider isolated and mlocked pages.\n\nThis patch adds explicit accounting for pages used by shmem and tmpfs.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c6a7f5728a1db45d30df55a01adc130b4ab0327c",
      "tree": "36649bc6ebb959841a5097c699968722cfd99c4d",
      "parents": [
        "71de1ccbe1fb40203edd3beb473f8580d917d2ca"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Sep 21 17:01:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:27 2009 -0700"
      },
      "message": "mm: oom analysis: Show kernel stack usage in /proc/meminfo and OOM log output\n\nThe amount of memory allocated to kernel stacks can become significant and\ncause OOM conditions.  However, we do not display the amount of memory\nconsumed by stacks.\n\nAdd code to display the amount of memory used for stacks in /proc/meminfo.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83d5cde47dedf01b6a4a4331882cbc0a7eea3c2e",
      "tree": "f8ba5e263717d35cd444fcc65898d2ed352af1ae",
      "parents": [
        "7b021967c5e1463936042c8da72b550d3cabe9ac"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:25 2009 -0700"
      },
      "message": "const: make block_device_operations const\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": "7b021967c5e1463936042c8da72b550d3cabe9ac",
      "tree": "efb5c26216851a93b3db3fba55858af04c8a15c5",
      "parents": [
        "6aed62853c72e29f2c97bbac7712cb398e8c9437"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:25 2009 -0700"
      },
      "message": "const: make lock_manager_operations const\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": "6aed62853c72e29f2c97bbac7712cb398e8c9437",
      "tree": "4362cfa98b6b588f84fb2241115b7ef5b5dfce55",
      "parents": [
        "6e1d5dcc2bbbe71dbf010c747e15739bef6b7218"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:25 2009 -0700"
      },
      "message": "const: make file_lock_operations const\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": "6e1d5dcc2bbbe71dbf010c747e15739bef6b7218",
      "tree": "2edb0f6cc65acbae95e42df1bc763ec048e6c2e0",
      "parents": [
        "7f09410bbc4306f592cfb43812389ea1c7905a20"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining inode_operations as const\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": "7f09410bbc4306f592cfb43812389ea1c7905a20",
      "tree": "18f179435f70c4ec9231883501062d5ea0357af5",
      "parents": [
        "ac4cfdd6d141c319a7af8655f750ed504c187a74"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining address_space_operations const\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": "ac4cfdd6d141c319a7af8655f750ed504c187a74",
      "tree": "2143509e0d585667203892a5036676e955273e52",
      "parents": [
        "b87221de6a4934eda856475a0065688d12973a04"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining export_operations const\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": "b87221de6a4934eda856475a0065688d12973a04",
      "tree": "6bcf0628e106c4833538f4c23d710fbbe3d7609a",
      "parents": [
        "0d54b217a247f39605361f867fefbb9e099a5432"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining super_operations const\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": "0d54b217a247f39605361f867fefbb9e099a5432",
      "tree": "5af6a2cc4cbc6c327e735ac5edb642d47a1f0013",
      "parents": [
        "61e225dc341107be304fd1088146c2a5e88ff9e0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: make struct super_block::s_qcop const\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": "61e225dc341107be304fd1088146c2a5e88ff9e0",
      "tree": "e6d3e1dc5506e232497f17721175a081a5306b5b",
      "parents": [
        "00d3803b656a5f0935518d746f6bb27d5181d29d"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: make struct super_block::dq_op const\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": "580be0837a7a59b207c3d5c661d044d8dd0a6a30",
      "tree": "4a659c92ed738367c1ed4d9b1b50fe018f401b81",
      "parents": [
        "5be461657be65460ad92be3527e3bb1dd11c49ea"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Sep 21 17:01:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "fs: make sure data stored into inode is properly seen before unlocking new inode\n\nIn theory it could happen that on one CPU we initialize a new inode but\nclearing of I_NEW | I_LOCK gets reordered before some of the\ninitialization.  Thus on another CPU we return not fully uptodate inode\nfrom iget_locked().\n\nThis seems to fix a corruption issue on ext3 mounted over NFS.\n\n[akpm@linux-foundation.org: add some commentary]\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\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": "3c394ddaa7ea4205f933fd9b481166b2669368a9",
      "tree": "6c1cfe2fefe0959c4eeb5b43e1c9f151ee1e2df3",
      "parents": [
        "285a0f00c27a02f1223a198c88de2130e9bab059"
      ],
      "author": {
        "name": "Steve Dickson",
        "email": "SteveD@redhat.com",
        "time": "Wed Sep 09 15:02:40 2009 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 21 16:02:25 2009 -0400"
      },
      "message": "nfsd4: nfsv4 clients should cross mountpoints\n\nAllow NFS v4 clients to seamlessly cross mount point without\nhave to set either the \u0027crossmnt\u0027 or the \u0027nohide\u0027 export\noptions.\n\nSigned-Off-By: Steve Dickson \u003csteved@redhat.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "43c1266ce4dc06bfd236cec31e11e9ecd69c0bef",
      "tree": "40a86739ca4c36200f447f655b01c57cfe646e26",
      "parents": [
        "b8c7f1dc5ca4e0d10709182233cdab932cef593d",
        "57c0c15b5244320065374ad2c54f4fbec77a6428"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:15:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:15:07 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-rename-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-rename-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Tidy up after the big rename\n  perf: Do the big rename: Performance Counters -\u003e Performance Events\n  perf_counter: Rename \u0027event\u0027 to event_id/hw_event\n  perf_counter: Rename list_entry -\u003e group_entry, counter_list -\u003e group_list\n\nManually resolved some fairly trivial conflicts with the tracing tree in\ninclude/trace/ftrace.h and kernel/trace/trace_syscalls.c.\n"
    },
    {
      "commit": "58e75a09732be9b850357ba3489bcfb103230b27",
      "tree": "60f1a6f9fa208fd627845a795e739c5ccf01d6bd",
      "parents": [
        "c720f5655df159a630fa0290a0bd67c93e92b0bf",
        "48d0764998ad4ab7570afab8bb3bee0fbfa55b2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:04:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:04:30 2009 -0700"
      },
      "message": "Merge branch \u0027writeback\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027writeback\u0027 of git://git.kernel.dk/linux-2.6-block:\n  nfs: initialize the backing_dev_info when creating the server\n  writeback: make balance_dirty_pages() gradually back more off\n  writeback: don\u0027t use schedule_timeout() without setting runstate\n  nfs: nfs_kill_super() should call bdi_unregister() after killing super\n"
    },
    {
      "commit": "48d0764998ad4ab7570afab8bb3bee0fbfa55b2a",
      "tree": "7ad93edfbba609f7f7a730d66d47950630e203d3",
      "parents": [
        "87c6a9b253520b66e7f5e8f67a37a701eaa51cee"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Sep 21 09:59:39 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Sep 21 15:40:33 2009 +0200"
      },
      "message": "nfs: initialize the backing_dev_info when creating the server\n\nNFS may free the server structure without ever having used the\nbdi, so we either need to flag the bdi as being uninitialized or\ninitialize it up front. This does the latter.\n\nThis fixes a crash with mounting more than one NFS file system,\nshould people ever need that kind of obscure NFS functionality.\n\nTested-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "92f25053c0189f8d2887f837d3936cdca1cdf730",
      "tree": "42cb0d38ee8983fa31290c5c80322574c04f4d5a",
      "parents": [
        "6952b61de9984073289859073e8195ad0bee8fd5"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Sep 17 14:51:44 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Sep 21 15:40:32 2009 +0200"
      },
      "message": "nfs: nfs_kill_super() should call bdi_unregister() after killing super\n\nOtherwise we could be attempting to flush data for a writeback\nthread and bdi that have already disappeared.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a419aef8b858a2bdb98df60336063d28df4b272f",
      "tree": "1736f6650ec0bfc01074c489fc47396114099c5e",
      "parents": [
        "2944fcbe03d65a704f07e43efe14adb0d226fd09"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Aug 18 11:18:35 2009 -0700"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:58 2009 +0200"
      },
      "message": "trivial: remove unnecessary semicolons\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "fd589a8f0a13f53a2dd580b1fe170633cf6b095f",
      "tree": "942c50188ca58041b0453189e710eafcfebaea57",
      "parents": [
        "4f37940d64a155c025968118849b596f6aaa8128"
      ],
      "author": {
        "name": "Anand Gadiyar",
        "email": "gadiyar@ti.com",
        "time": "Thu Jul 16 17:13:03 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:55 2009 +0200"
      },
      "message": "trivial: fix typo \"to to\" in multiple files\n\nSigned-off-by: Anand Gadiyar \u003cgadiyar@ti.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "411c94038594b2a3fd123d09bdec3fe2500e383d",
      "tree": "44b991786c7f4806b1b88f40439945b3835b6292",
      "parents": [
        "786d8ca341a30296264bc6cebac52d37b0851647"
      ],
      "author": {
        "name": "Anand Gadiyar",
        "email": "gadiyar@ti.com",
        "time": "Tue Jul 07 15:24:23 2009 +0530"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:54 2009 +0200"
      },
      "message": "trivial: fix typo \"for for\" in multiple files\n\ntrivial: fix typo \"for for\" in multiple files\n\nSigned-off-by: Anand Gadiyar \u003cgadiyar@ti.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "cdd6c482c9ff9c55475ee7392ec8f672eddb7be6",
      "tree": "81f98a3ab46c589792057fe2392c1e10f8ad7893",
      "parents": [
        "dfc65094d0313cc48969fa60bcf33d693aeb05a7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 12:02:48 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 14:28:04 2009 +0200"
      },
      "message": "perf: Do the big rename: Performance Counters -\u003e Performance Events\n\nBye-bye Performance Counters, welcome Performance Events!\n\nIn the past few months the perfcounters subsystem has grown out its\ninitial role of counting hardware events, and has become (and is\nbecoming) a much broader generic event enumeration, reporting, logging,\nmonitoring, analysis facility.\n\nNaming its core object \u0027perf_counter\u0027 and naming the subsystem\n\u0027perfcounters\u0027 has become more and more of a misnomer. With pending\ncode like hw-breakpoints support the \u0027counter\u0027 name is less and\nless appropriate.\n\nAll in one, we\u0027ve decided to rename the subsystem to \u0027performance\nevents\u0027 and to propagate this rename through all fields, variables\nand API names. (in an ABI compatible fashion)\n\nThe word \u0027event\u0027 is also a bit shorter than \u0027counter\u0027 - which makes\nit slightly more convenient to write/handle as well.\n\nThanks goes to Stephane Eranian who first observed this misnomer and\nsuggested a rename.\n\nUser-space tooling and ABI compatibility is not affected - this patch\nshould be function-invariant. (Also, defconfigs were not touched to\nkeep the size down.)\n\nThis patch has been generated via the following script:\n\n  FILES\u003d$(find * -type f | grep -vE \u0027oprofile|[^K]config\u0027)\n\n  sed -i \\\n    -e \u0027s/PERF_EVENT_/PERF_RECORD_/g\u0027 \\\n    -e \u0027s/PERF_COUNTER/PERF_EVENT/g\u0027 \\\n    -e \u0027s/perf_counter/perf_event/g\u0027 \\\n    -e \u0027s/nb_counters/nb_events/g\u0027 \\\n    -e \u0027s/swcounter/swevent/g\u0027 \\\n    -e \u0027s/tpcounter_event/tp_event/g\u0027 \\\n    $FILES\n\n  for N in $(find . -name perf_counter.[ch]); do\n    M\u003d$(echo $N | sed \u0027s/perf_counter/perf_event/g\u0027)\n    mv $N $M\n  done\n\n  FILES\u003d$(find . -name perf_event.*)\n\n  sed -i \\\n    -e \u0027s/COUNTER_MASK/REG_MASK/g\u0027 \\\n    -e \u0027s/COUNTER/EVENT/g\u0027 \\\n    -e \u0027s/\\\u003cevent\\\u003e/event_id/g\u0027 \\\n    -e \u0027s/counter/event/g\u0027 \\\n    -e \u0027s/Counter/Event/g\u0027 \\\n    $FILES\n\n... to keep it as correct as possible. This script can also be\nused by anyone who has pending perfcounters patches - it converts\na Linux kernel tree over to the new naming. We tried to time this\nchange to the point in time where the amount of pending patches\nis the smallest: the end of the merge window.\n\nNamespace clashes were fixed up in a preparatory patch - and some\nstylistic fallout will be fixed up in a subsequent patch.\n\n( NOTE: \u0027counters\u0027 are still the proper terminology when we deal\n  with hardware registers - and these sed scripts are a bit\n  over-eager in renaming them. I\u0027ve undone some of that, but\n  in case there\u0027s something left where \u0027counter\u0027 would be\n  better than \u0027event\u0027 we can undo that on an individual basis\n  instead of touching an otherwise nicely automated patch. )\n\nSuggested-by: Stephane Eranian \u003ceranian@google.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nReviewed-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7cce2f4cb7f5f641f78c8e3eea4e7b1b96cb71c0",
      "tree": "b064d077928cf224660ab1e1841cdab2c9fd8b08",
      "parents": [
        "e055f7e873d900925c222cf2d1ec955af4a9ca90",
        "ebc79c4f8da0f92efa968e0328f32334a2ce80cf"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Sep 21 12:09:22 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Sep 21 12:09:22 2009 +0300"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into linux-next\n\nConflicts:\n\tfs/ubifs/super.c\n\nMerge the upstream tree in order to resolve a conflict with the\nper-bdi writeback changes from the linux-2.6-block tree.\n"
    },
    {
      "commit": "3530c1886291df061e3972c55590777ef1cb67f8",
      "tree": "bd6755e533eb5a0f37ff600da6bc0d9d1ba33c17",
      "parents": [
        "6952b61de9984073289859073e8195ad0bee8fd5",
        "1358870deaf11a752a84fbd89201749aa62498e8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 10:56:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 10:56:26 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (64 commits)\n  ext4: Update documentation about quota mount options\n  ext4: replace MAX_DEFRAG_SIZE with EXT_MAX_BLOCK\n  ext4: Fix the alloc on close after a truncate hueristic\n  ext4: Add a tracepoint for ext4_alloc_da_blocks()\n  ext4: store EXT4_EXT_MIGRATE in i_state instead of i_flags\n  ext4: limit block allocations for indirect-block files to \u003c 2^32\n  ext4: Fix different block exchange issue in EXT4_IOC_MOVE_EXT\n  ext4: Add null extent check to ext_get_path\n  ext4: Replace BUG_ON() with ext4_error() in move_extents.c\n  ext4: Replace get_ext_path macro with an inline funciton\n  ext4: Fix include/trace/events/ext4.h to work with Systemtap\n  ext4: Fix initalization of s_flex_groups\n  ext4: Always set dx_node\u0027s fake_dirent explicitly.\n  ext4: Fix async commit mode to be safe by using a barrier\n  ext4: Don\u0027t update superblock write time when filesystem is read-only\n  ext4: Clarify the locking details in mballoc\n  ext4: check for need init flag in ext4_mb_load_buddy\n  ext4: move ext4_mb_init_group() function earlier in the mballoc.c\n  ext4: Make non-journal fsync work properly\n  ext4: Assure that metadata blocks are written during fsync in no journal mode\n  ...\n"
    },
    {
      "commit": "9eead2a8115d2a6aecf267c292f751f7761fa5f8",
      "tree": "133cc2c9616bbc53b92fdf68137621a11e3c80c6",
      "parents": [
        "6f130478e24d810078c3f0ee292bcc4ec034dcce",
        "79a9d99434b104c562f30f21b75317667f444793"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 09:23:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 09:23:03 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:\n  fuse: add fusectl interface to max_background\n  fuse: limit user-specified values of max background requests\n  fuse: use drop_nlink() instead of direct nlink manipulation\n  fuse: document protocol version negotiation\n  fuse: make the number of max background requests and congestion threshold tunable\n"
    },
    {
      "commit": "5ce00289875a853280985aee671258795b77e089",
      "tree": "c88e4ec62cad3e83dadb49dddbcde81a2808a3c1",
      "parents": [
        "2511817cf9b1cf2506f47e20bb128e2da231c150",
        "1329e3f2c898cfabb6ed236d3fb8c1725197af53"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 09:19:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 09:19:10 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:\n  dlm: use kernel_sendpage\n  dlm: fix connection close handling\n  dlm: fix double-release of socket in error exit path\n"
    },
    {
      "commit": "2511817cf9b1cf2506f47e20bb128e2da231c150",
      "tree": "26b0cd6b9491bcb1284e6c60f64ea1dbd25f2aa7",
      "parents": [
        "714af0693863dfb6f075f4465053976d2d076a21",
        "56fcad29d4b3cbcbb2ed47a9d3ceca3f57175417"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 09:18:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 09:18:52 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  ext3: Flush disk caches on fsync when needed\n  ext3: Add locking to ext3_do_update_inode\n  ext3: Fix possible deadlock between ext3_truncate() and ext3_get_blocks()\n  jbd: Annotate transaction start also for journal_restart()\n  jbd: Journal block numbers can ever be only 32-bit use unsigned int for them\n  ext3: Update MAINTAINERS for ext3 and JBD\n  JBD: round commit timer up to avoid uncommitted transaction\n"
    },
    {
      "commit": "79b520e87e1214cfa107bdc8528b5d6c055a8b82",
      "tree": "1500dd29a6e7485e34458ff4969dcb1fa51568bd",
      "parents": [
        "abf5940dad78dde95edd7f6ba6e329cd10a92a5c",
        "fdec29c5fcd2705d61c1d14a1d4c74be03e9627c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 17 09:54:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 17 09:54:37 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs: (39 commits)\n  xfs: includecheck fix for fs/xfs/xfs_iops.c\n  xfs: switch to seq_file\n  xfs: Record new maintainer information\n  xfs: use correct log reservation when handling ENOSPC in xfs_create\n  xfs: xfs_showargs() reports group *and* project quotas enabled\n  xfs: un-static xfs_inobt_lookup\n  xfs: actually enable the swapext compat handler\n  xfs: simplify xfs_trans_iget\n  xfs: merge fsync and O_SYNC handling\n  xfs: speed up free inode search\n  xfs: rationalize xfs_inobt_lookup*\n  xfs: untangle xfs_dialloc\n  xfs: factor out debug checks from xfs_dialloc and xfs_difree\n  xfs: improve xfs_inobt_update prototype\n  xfs: improve xfs_inobt_get_rec prototype\n  xfs: factor out inode initialisation\n  fs/xfs: Correct redundant test\n  xfs: remove XFS_INO64_OFFSET\n  un-static xfs_read_agf\n  xfs: add more statics \u0026 drop some unused functions\n  ...\n"
    },
    {
      "commit": "0a80e9867db154966b2a771042e10452ac110e1e",
      "tree": "51f43830b3c0dd733b0d446399eb3ea2b6bc84ed",
      "parents": [
        "5534fb5bb35a62a94e0bd1fa2421f7fb6e894f10"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Sep 17 11:55:58 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Sep 17 11:55:58 2009 -0400"
      },
      "message": "ext4: replace MAX_DEFRAG_SIZE with EXT_MAX_BLOCK\n\nThere\u0027s no reason to redefine the maximum allowable offset\nin an extent-based file just for defrag; \nEXT_MAX_BLOCK already does this.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "5534fb5bb35a62a94e0bd1fa2421f7fb6e894f10",
      "tree": "1a9da05279129a9331494c1faab6cfa22cd10ce8",
      "parents": [
        "fb40ba0d98968bc3454731360363d725b4f1064c"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Sep 17 09:34:16 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Sep 17 09:34:16 2009 -0400"
      },
      "message": "ext4: Fix the alloc on close after a truncate hueristic\n\nIn an attempt to avoid doing an unneeded flush after opening a\n(previously non-existent) file with O_CREAT|O_TRUNC, the code only\ntriggered the hueristic if ei-\u003edisksize was non-zero.  Turns out that\nthe VFS doesn\u0027t call -\u003etruncate() if the file doesn\u0027t exist, and\nei-\u003edisksize is always zero even if the file previously existed.  So\nremove the test, since it isn\u0027t necessary and in fact disabled the\nhueristic.\n\nThanks to Clemens Eisserer that he was seeing problems with files\nwritten using kwrite and eclipse after sudden crashes caused by a\nbuggy Intel video driver.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "e055f7e873d900925c222cf2d1ec955af4a9ca90",
      "tree": "9696d7bcf60f35140b10a2c0ecf421991623c430",
      "parents": [
        "be9e62a7307583594d88f6ccf57a4e30308e7b21"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Sep 17 15:08:31 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Sep 17 15:08:31 2009 +0300"
      },
      "message": "UBIFS: fix debugging dump\n\nIn \u0027dbg_check_space_info()\u0027 we want to dump current lprops statistics,\nbut actually dump old statistics. Fix this.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "fb40ba0d98968bc3454731360363d725b4f1064c",
      "tree": "08e8bb15b49bc6310e4c41653889e055d9594d9a",
      "parents": [
        "1b9c12f44c1eb614fd3b8822bfe8f1f5d8e53737"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 16 19:30:40 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 16 19:30:40 2009 -0400"
      },
      "message": "ext4: Add a tracepoint for ext4_alloc_da_blocks()\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "1b9c12f44c1eb614fd3b8822bfe8f1f5d8e53737",
      "tree": "5de0737dd71557dadaa5e3f98d6e62bd3b9d7c51",
      "parents": [
        "fb0a387dcdcd21aab1b09ee7fd80b7c979bdbbfd"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Sep 17 08:32:22 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Sep 17 08:32:22 2009 -0400"
      },
      "message": "ext4: store EXT4_EXT_MIGRATE in i_state instead of i_flags\n\nEXT4_EXT_MIGRATE is only intended to be used for an in-memory flag,\nand the hex value assigned to it collides with FS_DIRECTIO_FL (which\nis also stored in i_flags).  There\u0027s no reason for the\nEXT4_EXT_MIGRATE bit to be stored in i_flags, so we switch it to use\ni_state instead.\n\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "fb0a387dcdcd21aab1b09ee7fd80b7c979bdbbfd",
      "tree": "dcb12c5fce8f7ccb8b183936ea71a29aba3f3846",
      "parents": [
        "c40ce3c9ea97425a12d7e44031a98fe50add6fc1"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Sep 16 14:45:10 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 16 14:45:10 2009 -0400"
      },
      "message": "ext4: limit block allocations for indirect-block files to \u003c 2^32\n\nToday, the ext4 allocator will happily allocate blocks past\n2^32 for indirect-block files, which results in the block\nnumbers getting truncated, and corruption ensues.\n\nThis patch limits such allocations to \u003c 2^32, and adds\nBUG_ONs if we do get blocks larger than that.\n\nThis should address RH Bug 519471, ext4 bitmap allocator \nmust limit blocks to \u003c 2^32\n\n* ext4_find_goal() is modified to choose a goal \u003c UINT_MAX,\n  so that our starting point is in an acceptable range.\n\n* ext4_xattr_block_set() is modified such that the goal block\n  is \u003c UINT_MAX, as above.\n\n* ext4_mb_regular_allocator() is modified so that the group\n  search does not continue into groups which are too high\n\n* ext4_mb_use_preallocated() has a check that we don\u0027t use\n  preallocated space which is too far out\n\n* ext4_alloc_blocks() and ext4_xattr_block_set() add some BUG_ONs\n\nNo attempt has been made to limit inode locations to \u003c 2^32,\nso we may wind up with blocks far from their inodes.  Doing\nthis much already will lead to some odd ENOSPC issues when the\n\"lower 32\" gets full, and further restricting inodes could\nmake that even weirder.\n\nFor high inodes, choosing a goal of the original, % UINT_MAX,\nmay be a bit odd, but then we\u0027re in an odd situation anyway,\nand I don\u0027t know of a better heuristic.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "c40ce3c9ea97425a12d7e44031a98fe50add6fc1",
      "tree": "2150e1dbbcbf42c8293a887976a648fceaf8da73",
      "parents": [
        "347fa6f1c7cb5df2b38d3c9167cfe242ce0cd1da"
      ],
      "author": {
        "name": "Akira Fujita",
        "email": "a-fujita@rs.jp.nec.com",
        "time": "Wed Sep 16 14:25:39 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 16 14:25:39 2009 -0400"
      },
      "message": "ext4: Fix different block exchange issue in EXT4_IOC_MOVE_EXT\n\nIf logical block offset of original file which is passed to\nEXT4_IOC_MOVE_EXT is different from donor file\u0027s,\na calculation error occurs in ext4_calc_swap_extents(),\ntherefore wrong block is exchanged between original file and donor file.\nAs a result, we hit ext4_error() in check_block_validity().\nTo detect the logical offset difference in EXT4_IOC_MOVE_EXT,\nadd checks to mext_calc_swap_extents() and handle it as error,\nsince data exchange must be done between the same blocks in EXT4_IOC_MOVE_EXT.\n\nReported-by: Peng Tao \u003cbergwolf@gmail.com\u003e\nSigned-off-by: Akira Fujita \u003ca-fujita@rs.jp.nec.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "347fa6f1c7cb5df2b38d3c9167cfe242ce0cd1da",
      "tree": "1e4b467f7baa6c5fe291b0f53d6483776b2d5a54",
      "parents": [
        "2147b1a6a48e28399120ca51d4a91840a278611f"
      ],
      "author": {
        "name": "Akira Fujita",
        "email": "a-fujita@rs.jp.nec.com",
        "time": "Wed Sep 16 14:25:07 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 16 14:25:07 2009 -0400"
      },
      "message": "ext4: Add null extent check to ext_get_path\n\nThere is the possibility that path structure which is taken\nby ext4_ext_find_extent() indicates null extents.\nBecause during data block exchanging in ext4_move_extents(),\nconstitution of an extent tree may be changed.\nAs a solution, the patch adds null extent check\nto ext_get_path().\n\nReported-by: Peng Tao \u003cbergwolf@gmail.com\u003e\nSigned-off-by: Akira Fujita \u003ca-fujita@rs.jp.nec.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "2147b1a6a48e28399120ca51d4a91840a278611f",
      "tree": "bf60185face40e3a482998f489348afef0e72086",
      "parents": [
        "e8505970af46658ece2545e9bc1fe594998fdcdf"
      ],
      "author": {
        "name": "Akira Fujita",
        "email": "a-fujita@rs.jp.nec.com",
        "time": "Wed Sep 16 13:46:35 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 16 13:46:35 2009 -0400"
      },
      "message": "ext4: Replace BUG_ON() with ext4_error() in move_extents.c\n\nReplace BUG_ON calls with a call to ext4_error()\nto print an error message if EXT4_IOC_MOVE_EXT failed\nwith some kind of reasons.  This will help to debug.\nTed pointed this out, thanks.\n\nSigned-off-by: Akira Fujita \u003ca-fujita@rs.jp.nec.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "e8505970af46658ece2545e9bc1fe594998fdcdf",
      "tree": "14a26c8f120667c70d2925c756ee518fc56453aa",
      "parents": [
        "3661d28615ea580c1db02a972fd4d3898df1cb01"
      ],
      "author": {
        "name": "Akira Fujita",
        "email": "a-fujita@rs.jp.nec.com",
        "time": "Wed Sep 16 13:46:38 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 16 13:46:38 2009 -0400"
      },
      "message": "ext4: Replace get_ext_path macro with an inline funciton\n\nReplace get_ext_path macro with an inline function,\nsince this macro looks like a function call but its arguments\nget modified. Ted pointed this out, thanks.\n\nSigned-off-by: Akira Fujita \u003ca-fujita@rs.jp.nec.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "56fcad29d4b3cbcbb2ed47a9d3ceca3f57175417",
      "tree": "4ad4816b11706e350760a3e206126105a7bf9a5c",
      "parents": [
        "4f003fd32bc54ec438b8691795279844df27ce38"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Sep 08 14:59:42 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Sep 16 17:44:11 2009 +0200"
      },
      "message": "ext3: Flush disk caches on fsync when needed\n\nIn case we fsync() a file and inode is not dirty, we don\u0027t force a transaction\nto disk and hence don\u0027t flush disk caches. Thus file data could be just in disk\ncaches and not on persistent storage. Fix the problem by flushing disk caches\nif we didn\u0027t force a transaction commit.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "4f003fd32bc54ec438b8691795279844df27ce38",
      "tree": "2fe0a97307f9b3fe481f07713a271630951eb51b",
      "parents": [
        "00171d3c7e3b738ba582c7a9b37408e796f49046"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Sep 08 00:22:14 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Sep 16 17:44:11 2009 +0200"
      },
      "message": "ext3: Add locking to ext3_do_update_inode\n\nI\u0027ve been struggling with this off and on while I\u0027ve been testing the\ndata\u003dguarded work.  The symptom is corrupted orphan lists and inodes\nwith the wrong i_size stored on disk.  I was convinced the\ndata\u003dguarded code was just missing a call to ext3_mark_inode_dirty, but\ntracing showed the i_disksize I was sending to ext3_mark_inode_dirty\nwasn\u0027t actually making it to the drive.\n\next3_mark_inode_dirty can be called without locks held (atime updates\nand a few others), so the data\u003dguarded code uses locks while updating\nthe in-memory inode, and then calls ext3_mark_inode_dirty\nwithout any locks held.\n\nBut, ext3_mark_inode_dirty has no internal locking to make sure that\nonly one CPU is updating the buffer head at a time.  Generally this\nworks out ok because everyone that changes the inode then calls\next3_mark_inode_dirty themselves.  Even though it races, eventually\nsomeone updates the buffer heads and things move on.\n\nBut there is still a risk of the wrong values getting in, and the\ndata\u003dguarded code seems to hit the race very often.\n\nSince everyone that changes the inode also logs it, it should be\npossible to fix this with some memory barriers.  I\u0027ll leave that as an\nexercise to the reader and lock the buffer head instead.\n\nIt it probably a good idea to have a different patch series for lockless\nbit flipping on the ext3 i_state field.  ext3_do_update_inode \u0026\u003d clears\nEXT3_STATE_NEW without any locks held.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "00171d3c7e3b738ba582c7a9b37408e796f49046",
      "tree": "4c43c59666d78ccb1522a99dd7966252d5878ccf",
      "parents": [
        "3adae9da0b35d2ca908039f42a1e90395c335181"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 11 19:06:10 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Sep 16 17:44:11 2009 +0200"
      },
      "message": "ext3: Fix possible deadlock between ext3_truncate() and ext3_get_blocks()\n\nDuring truncate we are sometimes forced to start a new transaction as the\namount of blocks to be journaled is both quite large and hard to predict. So\nfar we restarted a transaction while holding truncate_mutex and that violates\nlock ordering because truncate_mutex ranks below transaction start (and it\ncan lead to a real deadlock with ext3_get_blocks() allocating new blocks\nfrom ext3_writepage()).\n\nLuckily, the problem is easy to fix: We just drop the truncate_mutex before\nrestarting the transaction and acquire it afterwards. We are safe to do this as\nby the time ext3_truncate() is called, all the page cache for the truncated\npart of the file is dropped and so writepage() cannot come and allocate new\nblocks in the part of the file we are truncating. The rest of writers is\nstopped by us holding i_mutex.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "3adae9da0b35d2ca908039f42a1e90395c335181",
      "tree": "bc7d971ffb673dab926a4c3d02411a2b78b58f6a",
      "parents": [
        "9c28cbccec66a5ca292c6659bf5a0fe0c8459fa7"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 11 17:27:21 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Sep 16 17:44:10 2009 +0200"
      },
      "message": "jbd: Annotate transaction start also for journal_restart()\n\nlockdep annotation for a transaction start has been at the end of\njournal_start(). But a transaction is also started from journal_restart(). Move\nthe lockdep annotation to start_this_handle() which covers both cases.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "9c28cbccec66a5ca292c6659bf5a0fe0c8459fa7",
      "tree": "d43540ca30413ac8b3717e29f15ccbbe789a76c5",
      "parents": [
        "19003c18e9b41f5c3aeb81c92356f90958e1f22f"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 03 19:21:00 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Sep 16 17:44:10 2009 +0200"
      },
      "message": "jbd: Journal block numbers can ever be only 32-bit use unsigned int for them\n\nIt does not make sense to store block number for journal as unsigned long\nsince they can be only 32-bit (because of on-disk format limitation). So\nchange in-memory structures and variables to use unsigned int instead.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "b449fc6fcc07a392c69f3c1db9a4ad4dda8cbcba",
      "tree": "cc748936233e62cb8ae3325505e84805fb08b5ad",
      "parents": [
        "ab86e5765d41a5eb4239a1c04d613db87bea5ed8"
      ],
      "author": {
        "name": "Andreas Dilger",
        "email": "adilger@sun.com",
        "time": "Thu Jul 30 20:09:46 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Sep 16 17:44:10 2009 +0200"
      },
      "message": "JBD: round commit timer up to avoid uncommitted transaction\n\nFix jiffie rounding in jbd commit timer setup code.  Rounding down could cause\nthe timer to be fired before the corresponding transaction has expired.  That\ntransaction can stay not committed forever if no new transaction is created or\nexplicit sync/umount happens.\n\nSigned-off-by: Andreas Dilger \u003cadilger@sun.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "ab86e5765d41a5eb4239a1c04d613db87bea5ed8",
      "tree": "a41224d4874c2f90e0b423786f00bedf6f3e8bfa",
      "parents": [
        "7ea61767e41e2baedd6a968d13f56026522e1207",
        "2b2af54a5bb6f7e80ccf78f20084b93c398c3a8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 16 08:27:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 16 08:27:10 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev\n  debugfs: Modify default debugfs directory for debugging pktcdvd.\n  debugfs: Modified default dir of debugfs for debugging UHCI.\n  debugfs: Change debugfs directory of IWMC3200\n  debugfs: Change debuhgfs directory of trace-events-sample.h\n  debugfs: Fix mount directory of debugfs by default in events.txt\n  hpilo: add poll f_op\n  hpilo: add interrupt handler\n  hpilo: staging for interrupt handling\n  driver core: platform_device_add_data(): use kmemdup()\n  Driver core: Add support for compatibility classes\n  uio: add generic driver for PCI 2.3 devices\n  driver-core: move dma-coherent.c from kernel to driver/base\n  mem_class: fix bug\n  mem_class: use minor as index instead of searching the array\n  driver model: constify attribute groups\n  UIO: remove \u0027default n\u0027 from Kconfig\n  Driver core: Add accessor for device platform data\n  Driver core: move dev_get/set_drvdata to drivers/base/dd.c\n  Driver core: add new device to bus\u0027s list before probing\n"
    },
    {
      "commit": "1ef7d9aa32a8ee054c4d4fdcd2ea537c04d61b2f",
      "tree": "69c570a78f37760ead0c8cad2eda25991c3fcd4c",
      "parents": [
        "77b9d059cb3ddb8b1246d5878e81d52926550b23"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Sep 15 21:37:55 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:53 2009 +0200"
      },
      "message": "writeback: fix possible bdi writeback refcounting problem\n\nwb_clear_pending AFAIKS should not be called after the item has been\nput on the list, except by the worker threads. It could lead to the\nsituation where the refcount is decremented below 0 and cause lots of\nproblems.\n\nPresumably the !wb_has_dirty_io case is not a common one, so it can\nbe discovered when the thread wakes up to check?\n\nAlso add a comment in bdi_work_clear.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "77b9d059cb3ddb8b1246d5878e81d52926550b23",
      "tree": "6d6a894d91097aec9e589d22f48d7ec387e062d9",
      "parents": [
        "77fad5e625e56eb31a343ae1d489979fdc61a2aa"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Sep 15 21:34:51 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:52 2009 +0200"
      },
      "message": "writeback: Fix bdi use after free in wb_work_complete()\n\nBy the time bdi_work_on_stack gets evaluated again in bdi_work_free, it\ncan already have been deallocated and used for something else in the\n!on stack case, giving a false positive in this test and causing\ncorruption.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "77fad5e625e56eb31a343ae1d489979fdc61a2aa",
      "tree": "e0b881a38be27d0c4d8523289f51b70ffb98c080",
      "parents": [
        "deed62edffe600bc5b379c872d3004116e001b66"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Sep 15 21:34:12 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:52 2009 +0200"
      },
      "message": "writeback: improve scalability of bdi writeback work queues\n\nIf you\u0027re going to do an atomic RMW on each list entry, there\u0027s not much\npoint in all the RCU complexities of the list walking. This is only going\nto help the multi-thread case I guess, but it doesn\u0027t hurt to do now.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "deed62edffe600bc5b379c872d3004116e001b66",
      "tree": "2c1837366be7dac9986a250d8b5cebf6f54fdea0",
      "parents": [
        "49db041430e8a856dbc3af15430bf068f1c74655"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Sep 15 21:32:58 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:52 2009 +0200"
      },
      "message": "writeback: remove smp_mb(), it\u0027s not needed with list_add_tail_rcu()\n\nlist_add_tail_rcu contains required barriers.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "49db041430e8a856dbc3af15430bf068f1c74655",
      "tree": "f6ea57fc200d6584bcaef88b0ac032da0ee5c459",
      "parents": [
        "8010c3b6349b407f8f11b3f4d7e9f94cb00fe528"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Sep 15 21:27:40 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:52 2009 +0200"
      },
      "message": "writeback: use schedule_timeout_interruptible()\n\nGets rid of a manual set_current_state().\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "8010c3b6349b407f8f11b3f4d7e9f94cb00fe528",
      "tree": "eecf594bec286f582c0b9709a87a0edb82dc034b",
      "parents": [
        "ce5f8e7795195edb6f84f74aa9d72e739df38486"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Sep 15 20:04:57 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:52 2009 +0200"
      },
      "message": "writeback: add comments to bdi_work structure\n\nAnd document its retriever, get_next_work_item().\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b6e51316daede0633e9274e1e30391cfa4747877",
      "tree": "664476bb4e7c05dcce3ad908363b482134c68429",
      "parents": [
        "bcddc3f01c9122882c8b9f12ab94a934e55aef97"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:13:54 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:52 2009 +0200"
      },
      "message": "writeback: separate starting of sync vs opportunistic writeback\n\nbdi_start_writeback() is currently split into two paths, one for\nWB_SYNC_NONE and one for WB_SYNC_ALL. Add bdi_sync_writeback()\nfor WB_SYNC_ALL writeback and let bdi_start_writeback() handle\nonly WB_SYNC_NONE.\n\nPush down the writeback_control allocation and only accept the\nparameters that make sense for each function. This cleans up\nthe API considerably.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "bcddc3f01c9122882c8b9f12ab94a934e55aef97",
      "tree": "db642f05ec083f49c4e32cf8d93c9f14028d8ec5",
      "parents": [
        "cfc4ba5365449cb6b5c9f68d755a142f17da1e47"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sun Sep 13 20:07:36 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:52 2009 +0200"
      },
      "message": "writeback: inline allocation failure handling in bdi_alloc_queue_work()\n\nThis gets rid of work \u003d\u003d NULL in bdi_queue_work() and puts the\nOOM handling where it belongs.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "cfc4ba5365449cb6b5c9f68d755a142f17da1e47",
      "tree": "08770de9bb0e658f2e65abd4d10187b3e9f6bb1b",
      "parents": [
        "f11fcae8401a3175f528e2f7917362645d570111"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Sep 14 13:12:40 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:51 2009 +0200"
      },
      "message": "writeback: use RCU to protect bdi_list\n\nNow that bdi_writeback_all() no longer handles integrity writeback,\nit doesn\u0027t have to block anymore. This means that we can switch\nbdi_list reader side protection to RCU.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f11fcae8401a3175f528e2f7917362645d570111",
      "tree": "1d0cf5d256ab40405582f5b459856cff41938c56",
      "parents": [
        "32a88aa1b6dfb901cec64e1898cac78d0f25028a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Sep 15 09:53:35 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:51 2009 +0200"
      },
      "message": "writeback: only use bdi_writeback_all() for WB_SYNC_NONE writeout\n\nData integrity writeback must use bdi_start_writeback() and ensure\nthat wbc-\u003esb and wbc-\u003ebdi are set.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "32a88aa1b6dfb901cec64e1898cac78d0f25028a",
      "tree": "51aa6f56ccfca53f495d015645373317bdee3647",
      "parents": [
        "c4a77a6c7dcff04a2abc7fe4b6b2ae605be41c5b"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:02:33 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:51 2009 +0200"
      },
      "message": "fs: Assign bdi in super_block\n\nWe do this automatically in get_sb_bdev() from the set_bdev_super()\ncallback. Filesystems that have their own private backing_dev_info\nmust assign that in -\u003efill_super().\n\nNote that -\u003es_bdi assignment is required for proper writeback!\n\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c4a77a6c7dcff04a2abc7fe4b6b2ae605be41c5b",
      "tree": "2e0a4097cab5b94249f69fae7ebbcb22d6c8f225",
      "parents": [
        "f0fad8a530e7cbad5f686dbca3079d1a626a3882"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:25 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:25 2009 +0200"
      },
      "message": "writeback: make wb_writeback() take an argument structure\n\nWe need to be able to pass in range_cyclic as well, so instead\nof growing yet another argument, split the arguments into a\nstruct wb_writeback_args structure that we can use internally.\nAlso makes it easier to just copy all members to an on-stack\nstruct, since we can\u0027t access work after clearing the pending\nbit.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f0fad8a530e7cbad5f686dbca3079d1a626a3882",
      "tree": "8e2260cd493a9088c6523dcd0a9f00e34d34a328",
      "parents": [
        "1fe06ad89255c211fe100d7f690d10b161398df8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Sep 11 09:47:56 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:16:18 2009 +0200"
      },
      "message": "writeback: merely wakeup flusher thread if work allocation fails for WB_SYNC_NONE\n\nSince it\u0027s an opportunistic writeback and not a data integrity action,\ndon\u0027t punt to blocking writeback. Just wakeup the thread and it will\nflush old data.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1fe06ad89255c211fe100d7f690d10b161398df8",
      "tree": "826d32bf081a6729aeaa08fe42422e49a9b86f6f",
      "parents": [
        "2c96ce9f2084c1e04d02883e622f74a537a63aea"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Sep 15 15:10:20 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:16:18 2009 +0200"
      },
      "message": "writeback: get rid of wbc-\u003efor_writepages\n\nIt\u0027s only set, it\u0027s never checked. Kill it.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2c96ce9f2084c1e04d02883e622f74a537a63aea",
      "tree": "cad3c6773d2886103b05f7b090b3385d23076a03",
      "parents": [
        "0cb583fd2862f19ea88b02eb307d11c09e51e2f8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Sep 15 09:43:56 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:16:18 2009 +0200"
      },
      "message": "fs: remove bdev-\u003ebd_inode_backing_dev_info\n\nIt has been unused since it was introduced in:\n\ncommit 520808bf20e90fdbdb320264ba7dd5cf9d47dcac\nAuthor: Andrew Morton \u003cakpm@osdl.org\u003e\nDate:   Fri May 21 00:46:17 2004 -0700\n\n    [PATCH] block device layer: separate backing_dev_info infrastructure\n\nSo lets just kill it.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "79a9d99434b104c562f30f21b75317667f444793",
      "tree": "181900c493e9aa0322b47dbcf2aa8251a956dd30",
      "parents": [
        "487ea5af6358cb27c994e2cf056d4ee0872e43c3"
      ],
      "author": {
        "name": "Csaba Henk",
        "email": "csaba@gluster.com",
        "time": "Wed Aug 26 19:18:24 2009 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Sep 16 14:15:29 2009 +0200"
      },
      "message": "fuse: add fusectl interface to max_background\n\nMake the max_background and congestion_threshold parameters of a FUSE\nmount tunable at runtime by adding the respective knobs to its directory\nwithin the fusectl filesystem.\n\nSigned-off-by: Csaba Henk \u003ccsaba@gluster.com\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "487ea5af6358cb27c994e2cf056d4ee0872e43c3",
      "tree": "26db6260934ad1743db6da6319cb7a502dd775e2",
      "parents": [
        "d6db07ded51c5fb4df2f4a32e6a41e9bb5db7fc4"
      ],
      "author": {
        "name": "Csaba Henk",
        "email": "csaba@gluster.com",
        "time": "Wed Aug 26 19:17:22 2009 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Sep 16 14:15:29 2009 +0200"
      },
      "message": "fuse: limit user-specified values of max background requests\n\nAn untrusted user could DoS the system if s/he were allowed to accumulate an\narbitrary number of pending background requests by setting the above limits\nto extremely high values in INIT. This patch excludes this possibility by\nimposing global upper limits on the possible values of per-mount \"max\nbackground requests\" and \"congestion threshold\" parameters for unprivileged\nFUSE filesystems.\n\nThese global limits are implemented as module parameters.\n\nSigned-off-by: Csaba Henk \u003ccsaba@gluster.com\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "d6db07ded51c5fb4df2f4a32e6a41e9bb5db7fc4",
      "tree": "149cc06d32038b9ba56cb1b54197b649af36083b",
      "parents": [
        "37d217f029a56a6d385f99773fb27dfcb51f9a46"
      ],
      "author": {
        "name": "Csaba Henk",
        "email": "csaba@gluster.com",
        "time": "Mon Aug 24 06:14:07 2009 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Sep 16 14:15:28 2009 +0200"
      },
      "message": "fuse: use drop_nlink() instead of direct nlink manipulation\n\ndrop_nlink() is the API function to decrease the link count of an inode.\nHowever, at a place the control filesystem used the decrement operator\non i_nlink directly. Fix this.\n\nCc: Anand Avati \u003cavati@gluster.com\u003e\nSigned-off-by: Csaba Henk \u003ccsaba@gluster.com\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "fdec29c5fcd2705d61c1d14a1d4c74be03e9627c",
      "tree": "bcf5d4dd46b4945f3b4bec6b763ff9a9484e4e59",
      "parents": [
        "0cb583fd2862f19ea88b02eb307d11c09e51e2f8",
        "9ef96da6ec5e1b4cf7eb8e30852cd88ec7d5fdc0"
      ],
      "author": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Tue Sep 15 21:37:47 2009 -0500"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Tue Sep 15 21:37:47 2009 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://oss.sgi.com/xfs/xfs into for-linus\n\nConflicts:\n\tfs/xfs/linux-2.6/xfs_lrw.c\n"
    },
    {
      "commit": "b09333c4644d173d95b8f3fd4f1dc4375d91be2a",
      "tree": "221ff0f07f8845775e550282e26abbc60773ee35",
      "parents": [
        "3ddc8bf5f31c906c558ce3da4856208a864d2fc1"
      ],
      "author": {
        "name": "Ricardo Labiaga",
        "email": "Ricardo.Labiaga@netapp.com",
        "time": "Thu Sep 10 12:27:34 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:52:13 2009 -0400"
      },
      "message": "nfsd41: Refactor create_client()\n\nMove common initialization of \u0027struct nfs4_client\u0027 inside create_client().\n\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\n\n[nfsd41: Remember the auth flavor to use for callbacks]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "3ddc8bf5f31c906c558ce3da4856208a864d2fc1",
      "tree": "dc0e56c769fee36ea66b724826d6112382e22bb3",
      "parents": [
        "0421b5c55acd0e88920cb9a5bcea6ed738186853"
      ],
      "author": {
        "name": "Alexandros Batsakis",
        "email": "batsakis@netapp.com",
        "time": "Thu Sep 10 12:27:21 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:52:13 2009 -0400"
      },
      "message": "nfsd41: modify nfsd4.1 backchannel to use new xprt class\n\nThis patch enables the use of the nfsv4.1 backchannel.\n\nSigned-off-by: Alexandros Batsakis \u003cbatsakis@netapp.com\u003e\n[initialize rpc_create_args.bc_xprt too]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "0421b5c55acd0e88920cb9a5bcea6ed738186853",
      "tree": "d19e8b22635ba8caa36d9ac1cddf6ab3176c7fb7",
      "parents": [
        "2af73580b7d7b687175f47ba092640761602b221"
      ],
      "author": {
        "name": "Ricardo Labiaga",
        "email": "Ricardo.Labiaga@netapp.com",
        "time": "Thu Sep 10 12:27:04 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:52:12 2009 -0400"
      },
      "message": "nfsd41: Backchannel: Implement cb_recall over NFSv4.1\n\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\n[nfsd41: cb_recall callback]\n[Share v4.0 and v4.1 back channel xdr]\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Ricardo Labiaga \u003cricardo.labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[Share v4.0 and v4.1 back channel xdr]\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfsd41: use nfsd4_cb_sequence for callback minorversion]\n[nfsd41: conditionally decode_sequence in nfs4_xdr_dec_cb_recall]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfsd41: Backchannel: Add sequence arguments to callback RPC arguments]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\n[pulled-in definition of nfsd4_cb_done]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "2af73580b7d7b687175f47ba092640761602b221",
      "tree": "6136af3800ff00204b8a07b4f7b07472b8b06206",
      "parents": [
        "2a1d1b593803d7c18a369bf148f3b48c5a3260fc"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Thu Sep 10 12:26:51 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:49:56 2009 -0400"
      },
      "message": "nfsd41: Backchannel: cb_sequence callback\n\nImplement the cb_sequence callback conforming to draft-ietf-nfsv4-minorversion1\n\nNote: highest slot id and target highest slot id do not have to be 0\nas was previously implemented.  They can be greater than what the\nnfs server sent if the client supports a larger slot table on the\nbackchannel.  At this point we just ignore that.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\n[Rework the back channel xdr using the shared v4.0 and v4.1 framework.]\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\n[fixed indentation]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfsd41: use nfsd4_cb_sequence for callback minorversion]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfsd41: fix verification of CB_SEQUENCE highest slot id[\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfsd41: Backchannel: Remove old backchannel serialization]\n[nfsd41: Backchannel: First callback sequence ID should be 1]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfsd41: decode_cb_sequence does not need to actually decode ignored fields]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "2a1d1b593803d7c18a369bf148f3b48c5a3260fc",
      "tree": "40cd8e5498ad680eec740923d512c0bf5fe114b3",
      "parents": [
        "199ff35e1c8724871e157c2e48556c2794946e82"
      ],
      "author": {
        "name": "Ricardo Labiaga",
        "email": "Ricardo.Labiaga@netapp.com",
        "time": "Thu Sep 10 12:26:38 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:49:56 2009 -0400"
      },
      "message": "nfsd41: Backchannel: Setup sequence information\n\nFollows the model used by the NFS client.  Setup the RPC prepare and done\nfunction pointers so that we can populate the sequence information if\nminorversion \u003d\u003d 1.  rpc_run_task() is then invoked directly just like\nexisting NFS client operations do.\n\nnfsd4_cb_prepare() determines if the sequence information needs to be setup.\nIf the slot is in use, it adds itself to the wait queue.\n\nnfsd4_cb_done() wakes anyone sleeping on the callback channel wait queue\nafter our RPC reply has been received.  It also sets the task message\nresult pointer to NULL to clearly indicate we\u0027re done using it.\n\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\n[define and initialize cl_cb_seq_nr here]\n[pulled out unused defintion of nfsd4_cb_done]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "199ff35e1c8724871e157c2e48556c2794946e82",
      "tree": "18bcf50bef1ad405013e4da1c1d76c9d153f153a",
      "parents": [
        "132f97715c098393fb8de3c26b07b9fdbd2334f1"
      ],
      "author": {
        "name": "Ricardo Labiaga",
        "email": "Ricardo.Labiaga@netapp.com",
        "time": "Thu Sep 10 12:26:25 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:49:55 2009 -0400"
      },
      "message": "nfsd41: Backchannel: Server backchannel RPC wait queue\n\nRPC callback requests will wait on this wait queue if the backchannel\nis out of slots.\n\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "132f97715c098393fb8de3c26b07b9fdbd2334f1",
      "tree": "293a4cfc826e8597aeafcb64e8452a57fea25f08",
      "parents": [
        "38524ab38f2752beee262a97403d871665838172"
      ],
      "author": {
        "name": "Ricardo Labiaga",
        "email": "Ricardo.Labiaga@netapp.com",
        "time": "Thu Sep 10 12:26:12 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:49:55 2009 -0400"
      },
      "message": "nfsd41: Backchannel: Add sequence arguments to callback RPC arguments\n\nFollow the model we use in the client. Make the sequence arguments\npart of the regular RPC arguments.  None of the callbacks that are\nsoon to be implemented expect results that need to be passed back\nto the caller, so we don\u0027t define a separate RPC results structure.\nFor session validation, the cb_sequence decoding will use a pointer\nto the sequence arguments that are part of the RPC argument.\n\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\n[define struct nfsd4_cb_sequence here]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "38524ab38f2752beee262a97403d871665838172",
      "tree": "cbccd7de004d2ad437bd514fc3baefefd6a711f5",
      "parents": [
        "80fc015bdfe1f5b870c1e1ee02d78e709523fee7"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Thu Sep 10 12:25:59 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:49:55 2009 -0400"
      },
      "message": "nfsd41: Backchannel: callback infrastructure\n\nKeep the xprt used for create_session in cl_cb_xprt.\nMark cl_callback.cb_minorversion \u003d 1 and remember\nthe client provided cl_callback.cb_prog rpc program number.\nUse it to probe the callback path.\n\nUse the client\u0027s network address to initialize as the\ncallback\u0027s address as expected by the xprt creation\nroutines.\n\nDefine xdr sizes and code nfs4_cb_compound header to be able\nto send a null callback rpc.\n\nSigned-off-by: Andy Adamson\u003candros@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\n[get callback minorversion from fore channel\u0027s]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfsd41: change bc_sock to bc_xprt]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[pulled definition for cl_cb_xprt]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfsd41: set up backchannel\u0027s cb_addr]\n[moved rpc_create_args init to \"nfsd: modify nfsd4.1 backchannel to use new xprt class\"]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "80fc015bdfe1f5b870c1e1ee02d78e709523fee7",
      "tree": "f56fd466add111a4c6bcc29d127325e3e77b4669",
      "parents": [
        "29ab23cc5d351658d01a4327d55e9106a73fd04f"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 18:07:35 2009 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:49:34 2009 -0400"
      },
      "message": "nfsd4: use common rpc_cred for all callbacks\n\nCallbacks are always made using the machine\u0027s identity, so we can use a\nsingle auth_generic credential shared among callbacks to all clients and\nlet the rpc code take care of the rest.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "29ab23cc5d351658d01a4327d55e9106a73fd04f",
      "tree": "8df00000a93e783f4bc152c20a437338a4f57fde",
      "parents": [
        "5d351754fcf58d1a604aa7cf95c2805e8a098ad9"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 15:56:50 2009 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:49:33 2009 -0400"
      },
      "message": "nfsd4: allow nfs4 state startup to fail\n\nThe failure here is pretty unlikely, but we should handle it anyway.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "886e3b7fe6054230c89ae078a09565ed183ecc73",
      "tree": "95978914331e3b9f4e2f22f7c645ec039f6d77aa",
      "parents": [
        "4be36ca0cefc09725f52a9590d061399d3e524d7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 12:22:42 2009 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Sep 15 20:49:33 2009 -0400"
      },
      "message": "nfsd4: fix null dereference creating nfsv4 callback client\n\nOn setting up the callback to the client, we attempt to use the same\nauthentication flavor the client did.  We find an rpc cred to use by\ncalling rpcauth_lookup_credcache(), which assumes that the given\nauthentication flavor has a credentials cache.  However, this is not\nrequired to be true--in particular, auth_null does not use one.\nInstead, we should call the auth\u0027s lookup_cred() method.\n\nWithout this, a client attempting to mount using nfsv4 and auth_null\ntriggers a null dereference.\n\nCc: stable@kernel.org\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "9ef96da6ec5e1b4cf7eb8e30852cd88ec7d5fdc0",
      "tree": "c6f289939c371628a6bd0a4da945a0993e37c882",
      "parents": [
        "361735fd8ff8f7d8b9f0e134d0d99d99ee193d92"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinder@kernel.org",
        "time": "Sun Aug 09 20:23:12 2009 +0530"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Tue Sep 15 12:30:30 2009 -0500"
      },
      "message": "xfs: includecheck fix for fs/xfs/xfs_iops.c\n\nfix the following \u0027make includecheck\u0027 warning:\n\n  fs/xfs/linux-2.6/xfs_iops.c: xfs_acl.h is included more than once.\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "361735fd8ff8f7d8b9f0e134d0d99d99ee193d92",
      "tree": "16cc89f80380bc6d7fec6dee0c3553039fc671da",
      "parents": [
        "f08a59f1467b92cd9b8c78961506f69c74bb01a5"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Aug 28 23:55:00 2009 +0400"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Tue Sep 15 12:29:24 2009 -0500"
      },
      "message": "xfs: switch to seq_file\n\ncreate_proc_read_entry() is getting deprecated.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "a4dbd6740df0872cdf0a86841f75beec8381964d",
      "tree": "1093687845d89f8397d61e7df1ad8546a5a25225",
      "parents": [
        "5b2ea2f10dbb2fa91d8033993000f8664309395f"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Jun 24 10:06:31 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:47 2009 -0700"
      },
      "message": "driver model: constify attribute groups\n\nLet attribute group vectors be declared \"const\".  We\u0027d\nlike to let most attribute metadata live in read-only\nsections... this is a start.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "be9e62a7307583594d88f6ccf57a4e30308e7b21",
      "tree": "b30b5ccb97f583c4bbc2095923f6f5f9fd18890a",
      "parents": [
        "055da1b704e95fea39597bd84d64cea7d4f7d2aa"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Dec 28 10:17:23 2008 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 17:09:48 2009 +0300"
      },
      "message": "UBIFS: improve lprops dump\n\nImprove \u0027dbg_dump_lprop()\u0027 and print dark and dead space there,\ndecode flags, and journal heads.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "055da1b704e95fea39597bd84d64cea7d4f7d2aa",
      "tree": "296a357e17a1deb3f36ae363ae723efde5d34c1f",
      "parents": [
        "77a7ae580c6cc8a0f0d5d7a7d61eb7e9fe8d99dc"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 17:09:24 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 17:09:24 2009 +0300"
      },
      "message": "UBIFS: various minor commentary fixes\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "77a7ae580c6cc8a0f0d5d7a7d61eb7e9fe8d99dc",
      "tree": "299adfb136ca146d9bbfd7e171351ab971c1b93d",
      "parents": [
        "d6d140097beb554daa967d3fb576e94ad2f82dcd"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 15:03:51 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 17:05:06 2009 +0300"
      },
      "message": "UBIFS: improve journal head debugging prints\n\nConvert the journal head integer into the head name when printing\ndebugging information.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "d6d140097beb554daa967d3fb576e94ad2f82dcd",
      "tree": "b29f202923cd194f92cf896c3431509dddd26fee",
      "parents": [
        "873a64c762f0c52cdf95dcee59bd416bbf9688e6"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 14:44:06 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 14:45:35 2009 +0300"
      },
      "message": "UBIFS: define journal head numbers in ubifs-media.h\n\nThe journal head names and numbers are part of the UBIFS format, so\nthey should be in the ubifs-media.h.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "3661d28615ea580c1db02a972fd4d3898df1cb01",
      "tree": "35b5ee30b88913c3e0711f763f0fa4d3bca27807",
      "parents": [
        "7ad9bb651fc2036ea94bed94da76a4b08959a911"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 14 22:59:50 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 14 22:59:50 2009 -0400"
      },
      "message": "ext4: Fix include/trace/events/ext4.h to work with Systemtap\n\nUsing relative pathnames in #include statements interacts badly with\nSystemTap, since the fs/ext4/*.h header files are not packaged up as\npart of a distribution kernel\u0027s header files.  Since systemtap doesn\u0027t\nuse TP_fast_assign(), we can use a blind structure definition and then\nmake sure the needed header files are defined before the ext4 source\nfiles #include the trace/events/ext4.h header file.\n\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d512478\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "355bbd8cb82e60a592f6cd86ce6dbe5677615cf4",
      "tree": "23678e50ad4687f1656edc972388ee8014e7b89d",
      "parents": [
        "39695224bd84dc4be29abad93a0ec232a16fc519",
        "746cd1e7e4a555ddaee53b19a46e05c9c61eaf09"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:55:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 17:55:15 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.32\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.32\u0027 of git://git.kernel.dk/linux-2.6-block: (29 commits)\n  block: use blkdev_issue_discard in blk_ioctl_discard\n  Make DISCARD_BARRIER and DISCARD_NOBARRIER writes instead of reads\n  block: don\u0027t assume device has a request list backing in nr_requests store\n  block: Optimal I/O limit wrapper\n  cfq: choose a new next_req when a request is dispatched\n  Seperate read and write statistics of in_flight requests\n  aoe: end barrier bios with EOPNOTSUPP\n  block: trace bio queueing trial only when it occurs\n  block: enable rq CPU completion affinity by default\n  cfq: fix the log message after dispatched a request\n  block: use printk_once\n  cciss: memory leak in cciss_init_one()\n  splice: update mtime and atime on files\n  block: make blk_iopoll_prep_sched() follow normal 0/1 return convention\n  cfq-iosched: get rid of must_alloc flag\n  block: use interrupts disabled version of raise_softirq_irqoff()\n  block: fix comment in blk-iopoll.c\n  block: adjust default budget for blk-iopoll\n  block: fix long lines in block/blk-iopoll.c\n  block: add blk-iopoll, a NAPI like approach for block devices\n  ...\n"
    },
    {
      "commit": "4142e0d1def2c0176c27fd2e810243045a62eb6d",
      "tree": "a21f76fafcd7609419a3ce610d8b9360748ccd76",
      "parents": [
        "33f1de69312432baecb997a570b7d77c4d02d1ed",
        "2daea67e966dc0c42067ebea015ddac6834cef88"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:36:47 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:36:47 2009 -0700"
      },
      "message": "Merge branch \u0027osync_cleanup\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027osync_cleanup\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  fsync: wait for data writeout completion before calling -\u003efsync\n  vfs: Remove generic_osync_inode() and sync_page_range{_nolock}()\n  fat: Opencode sync_page_range_nolock()\n  pohmelfs: Use new syncing helper\n  xfs: Convert sync_page_range() to simple filemap_write_and_wait_range()\n  ocfs2: Update syncing after splicing to match generic version\n  ntfs: Use new syncing helpers and update comments\n  ext4: Remove syncing logic from ext4_file_write\n  ext3: Remove syncing logic from ext3_file_write\n  ext2: Update comment about generic_osync_inode\n  vfs: Introduce new helpers for syncing after writing to O_SYNC file or IS_SYNC inode\n  vfs: Rename generic_file_aio_write_nolock\n  ocfs2: Use __generic_file_aio_write instead of generic_file_aio_write_nolock\n  pohmelfs: Use __generic_file_aio_write instead of generic_file_aio_write_nolock\n  vfs: Remove syncing from generic_file_direct_write() and generic_file_buffered_write()\n  vfs: Export __generic_file_aio_write() and add some comments\n  vfs: Introduce filemap_fdatawait_range\n"
    },
    {
      "commit": "33f1de69312432baecb997a570b7d77c4d02d1ed",
      "tree": "24e9e7487ec3b892e120409aa2ac1b1263794373",
      "parents": [
        "041d6d0be82bed7e0b87181dba5d10b8ab14afd9",
        "86d006365610fe6cda243d89b67d5047dca44656"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:35:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:35:56 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw:\n  GFS2: Whitespace fixes\n  GFS2: Remove unused sysfs file\n  GFS2: Be extra careful about deallocating inodes\n  GFS2: Remove no_formal_ino generating code\n  GFS2: Rename eattr.[ch] as xattr.[ch]\n  GFS2: Clean up of extended attribute support\n  GFS2: Add explanation of extended attr on-disk format\n  GFS2: Add \"-o errors\u003dpanic|withdraw\" mount options\n  GFS2: jumping to wrong label?\n  GFS2: free disk inode which is deleted by remote node -V2\n  GFS2: Add a document explaining GFS2\u0027s uevents\n  GFS2: Add sysfs link to device\n  GFS2: Replace assertion with proper error handling\n  GFS2: Improve error handling in inode allocation\n  GFS2: Add some more info to uevents\n  GFS2: Add online uevent to GFS2\n"
    },
    {
      "commit": "041d6d0be82bed7e0b87181dba5d10b8ab14afd9",
      "tree": "b7af53fa7ca104d30b9759c1f951439af7df3734",
      "parents": [
        "af8cb8aa38296ecc43aca7fae9e574db7b8ae0c4",
        "cbc8cc33529b0e0e55ae0ff077b8cb0b71d54c7a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:35:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:35:07 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6:\n  udf: Fix possible corruption when close races with write\n  udf: Perform preallocation only for regular files\n  udf: Remove wrong assignment in udf_symlink\n  udf: Remove dead code\n"
    },
    {
      "commit": "af8cb8aa38296ecc43aca7fae9e574db7b8ae0c4",
      "tree": "636090652a055bff0930ad713e315ff185282330",
      "parents": [
        "6cdb5930a6fa0e35b236f4aa0e056001fe1384b4",
        "41f4db0f48c72db3a93cc1a0b18368d9a9aca700"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:34:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 14:34:33 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: (21 commits)\n  fs/Kconfig: move nilfs2 outside misc filesystems\n  nilfs2: convert nilfs_bmap_lookup to an inline function\n  nilfs2: allow btree code to directly call dat operations\n  nilfs2: add update functions of virtual block address to dat\n  nilfs2: remove individual gfp constants for each metadata file\n  nilfs2: stop zero-fill of btree path just before free it\n  nilfs2: remove unused btree argument from btree functions\n  nilfs2: remove nilfs_dat_abort_start and nilfs_dat_abort_free\n  nilfs2: shorten freeze period due to GC in write operation v3\n  nilfs2: add more check routines in mount process\n  nilfs2: An unassigned variable is assigned to a never used structure member\n  nilfs2: use GFP_NOIO for bio_alloc instead of GFP_NOWAIT\n  nilfs2: stop using periodic write_super callback\n  nilfs2: clean up nilfs_write_super\n  nilfs2: fix disorder of nilfs_write_super in nilfs_sync_fs\n  nilfs2: remove redundant super block commit\n  nilfs2: implement nilfs_show_options to display mount options in /proc/mounts\n  nilfs2: always lookup disk block address before reading metadata block\n  nilfs2: use semaphore to protect pointer to a writable FS-instance\n  nilfs2: fix format string compile warning (ino_t)\n  ...\n"
    }
  ],
  "next": "6cdb5930a6fa0e35b236f4aa0e056001fe1384b4"
}
