)]}'
{
  "log": [
    {
      "commit": "8a9f47ddb1d5cc3cda2d1f26f8da74e059fa7b87",
      "tree": "7bc28bbf668d6e20d30fa23c40f9eb16705bc0ae",
      "parents": [
        "562787a5c32ccdf182de27793a83a9f2ee86cd77"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Sep 22 16:43:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "ntfs: remove ntfs_file_write\n\ndo_sync_write() does the right thing for turning the aio_writev method\ninto a normal non-vectored synchronous write, no need to duplicate it in\nntfs.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "562787a5c32ccdf182de27793a83a9f2ee86cd77",
      "tree": "3308afd59d3b7449afa3d6a6cd624d06ce035e88",
      "parents": [
        "515350b6fd041396f425180589e08812dd13615f"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Tue Sep 22 16:43:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "anonfd: split interface into file creation and install\n\nSplit the anonfd interface into a bare file pointer creation one, and a\nfile pointer creation plus install one.\n\nThere are cases, like the usage of eventfds inside other kernel\ninterfaces, where the file pointer created by anonfd needs to be used\ninside the initialization of other structures.\n\nAs it is right now, as soon as anon_inode_getfd() returns, the kenrle can\nrace with userspace closing the newly installed file descriptor.\n\nThis patch, while keeping the old anon_inode_getfd(), introduces a new\nanon_inode_getfile() (whose services are reused in anon_inode_getfd())\nthat allows to split the file creation phase and the fd install one.\n\nOnce all the kernel structures are initialized, the code can call the\nproper fd_install().\n\nGregory manifested the need for something like this inside KVM.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Gregory Haskins \u003cghaskins@novell.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "515350b6fd041396f425180589e08812dd13615f",
      "tree": "70f88e8ba20e589e51aa02e1f5284fbf00599306",
      "parents": [
        "385773e04806e8903e9ec683f5c4bd14926a86dc"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Sep 22 16:43:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "MAINTAINERS: remove dead ncpfs list\n\nOn Saturday 01 August 2009 00:30:39 Mail Delivery Subsystem wrote:\n\u003e Delivery to the following recipient failed permanently:\n\u003e\n\u003e      linware@sh.cvut.cz\n\u003e\n\u003e Technical details of permanent failure:\n\u003e Google tried to deliver your message, but it was rejected by the recipient\n\u003e domain. We recommend contacting the other email provider for further\n\u003e information about the cause of this error. The error that the other server\n\u003e returned was: 450 450 \u003clinware@sh.cvut.cz\u003e: Recipient address rejected:\n\u003e undeliverable address: unknown user: \"linware\" (state 14).\n\nCc: Petr Vandrovec \u003cvandrove@vc.cvut.cz\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@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": "385773e04806e8903e9ec683f5c4bd14926a86dc",
      "tree": "4e883e55117d7e3955800fd220f9f7a4704eb78a",
      "parents": [
        "8c87df457cb58fe75b9b893007917cf8095660a0"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Tue Sep 22 16:43:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "aio.c: move EXPORT* macros to line after function\n\nAs mentioned in Documentation/CodingStyle, move EXPORT* macro\u0027s\nto the line immediately after the closing function brace line.\n\nAlso, move the __initcall() similarly.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c87df457cb58fe75b9b893007917cf8095660a0",
      "tree": "32446b329e4b83ae6158fa1505c36634a75dbfe8",
      "parents": [
        "1fe72eaa0f46a0fa4cdcd8f3f7853b6d39469784"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Tue Sep 22 16:43:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "BUILD_BUG_ON(): fix it and a couple of bogus uses of it\n\ngcc permitting variable length arrays makes the current construct used for\nBUILD_BUG_ON() useless, as that doesn\u0027t produce any diagnostic if the\ncontrolling expression isn\u0027t really constant.  Instead, this patch makes\nit so that a bit field gets used here.  Consequently, those uses where the\ncondition isn\u0027t really constant now also need fixing.\n\nNote that in the gfp.h, kmemcheck.h, and virtio_config.h cases\nMAYBE_BUILD_BUG_ON() really just serves documentation purposes - even if\nthe expression is compile time constant (__builtin_constant_p() yields\ntrue), the array is still deemed of variable length by gcc, and hence the\nwhole expression doesn\u0027t have the intended effect.\n\n[akpm@linux-foundation.org: make arch/sparc/include/asm/vio.h compile]\n[akpm@linux-foundation.org: more nonsensical assertions in tpm.c..]\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Rajiv Andrade \u003csrajiv@linux.vnet.ibm.com\u003e\nCc: Mimi Zohar \u003czohar@us.ibm.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1fe72eaa0f46a0fa4cdcd8f3f7853b6d39469784",
      "tree": "1bcaa65c0011cf329d5dd2a06be519460d06e434",
      "parents": [
        "88e0fbc452ed94393bf89585c2b90edb94749b45"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Tue Sep 22 16:43:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "fs/buffer.c: clean up EXPORT* macros\n\nAccording to Documentation/CodingStyle the EXPORT* macro should follow\nimmediately after the closing function brace line.\n\nAlso, mark_buffer_async_write_endio() and do_thaw_all() are not used\nelsewhere so they should be marked as static.\n\nIn addition, file_fsync() is actually in fs/sync.c so move the EXPORT* to\nthat file.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88e0fbc452ed94393bf89585c2b90edb94749b45",
      "tree": "374b7c8f397609da7a7b22ddee77a9c70956fcb1",
      "parents": [
        "70867453092297be9afb2249e712a1f960ec0a09"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Sep 22 16:43:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "fs: turn iprune_mutex into rwsem\n\nWe have had a report of bad memory allocation latency during DVD-RAM (UDF)\nwriting.  This is causing the user\u0027s desktop session to become unusable.\n\nJan tracked the cause of this down to UDF inode reclaim blocking:\n\ngnome-screens D ffff810006d1d598     0 20686      1\n ffff810006d1d508 0000000000000082 ffff810037db6718 0000000000000800\n ffff810006d1d488 ffffffff807e4280 ffffffff807e4280 ffff810006d1a580\n ffff8100bccbc140 ffff810006d1a8c0 0000000006d1d4e8 ffff810006d1a8c0\nCall Trace:\n [\u003cffffffff804477f3\u003e] io_schedule+0x63/0xa5\n [\u003cffffffff802c2587\u003e] sync_buffer+0x3b/0x3f\n [\u003cffffffff80447d2a\u003e] __wait_on_bit+0x47/0x79\n [\u003cffffffff80447dc6\u003e] out_of_line_wait_on_bit+0x6a/0x77\n [\u003cffffffff802c24f6\u003e] __wait_on_buffer+0x1f/0x21\n [\u003cffffffff802c442a\u003e] __bread+0x70/0x86\n [\u003cffffffff88de9ec7\u003e] :udf:udf_tread+0x38/0x3a\n [\u003cffffffff88de0fcf\u003e] :udf:udf_update_inode+0x4d/0x68c\n [\u003cffffffff88de26e1\u003e] :udf:udf_write_inode+0x1d/0x2b\n [\u003cffffffff802bcf85\u003e] __writeback_single_inode+0x1c0/0x394\n [\u003cffffffff802bd205\u003e] write_inode_now+0x7d/0xc4\n [\u003cffffffff88de2e76\u003e] :udf:udf_clear_inode+0x3d/0x53\n [\u003cffffffff802b39ae\u003e] clear_inode+0xc2/0x11b\n [\u003cffffffff802b3ab1\u003e] dispose_list+0x5b/0x102\n [\u003cffffffff802b3d35\u003e] shrink_icache_memory+0x1dd/0x213\n [\u003cffffffff8027ede3\u003e] shrink_slab+0xe3/0x158\n [\u003cffffffff8027fbab\u003e] try_to_free_pages+0x177/0x232\n [\u003cffffffff8027a578\u003e] __alloc_pages+0x1fa/0x392\n [\u003cffffffff802951fa\u003e] alloc_page_vma+0x176/0x189\n [\u003cffffffff802822d8\u003e] __do_fault+0x10c/0x417\n [\u003cffffffff80284232\u003e] handle_mm_fault+0x466/0x940\n [\u003cffffffff8044b922\u003e] do_page_fault+0x676/0xabf\n\nThis blocks with iprune_mutex held, which then blocks other reclaimers:\n\nX             D ffff81009d47c400     0 17285  14831\n ffff8100844f3728 0000000000000086 0000000000000000 ffff81000000e288\n ffff81000000da00 ffffffff807e4280 ffffffff807e4280 ffff81009d47c400\n ffffffff805ff890 ffff81009d47c740 00000000844f3808 ffff81009d47c740\nCall Trace:\n [\u003cffffffff80447f8c\u003e] __mutex_lock_slowpath+0x72/0xa9\n [\u003cffffffff80447e1a\u003e] mutex_lock+0x1e/0x22\n [\u003cffffffff802b3ba1\u003e] shrink_icache_memory+0x49/0x213\n [\u003cffffffff8027ede3\u003e] shrink_slab+0xe3/0x158\n [\u003cffffffff8027fbab\u003e] try_to_free_pages+0x177/0x232\n [\u003cffffffff8027a578\u003e] __alloc_pages+0x1fa/0x392\n [\u003cffffffff8029507f\u003e] alloc_pages_current+0xd1/0xd6\n [\u003cffffffff80279ac0\u003e] __get_free_pages+0xe/0x4d\n [\u003cffffffff802ae1b7\u003e] __pollwait+0x5e/0xdf\n [\u003cffffffff8860f2b4\u003e] :nvidia:nv_kern_poll+0x2e/0x73\n [\u003cffffffff802ad949\u003e] do_select+0x308/0x506\n [\u003cffffffff802adced\u003e] core_sys_select+0x1a6/0x254\n [\u003cffffffff802ae0b7\u003e] sys_select+0xb5/0x157\n\nNow I think the main problem is having the filesystem block (and do IO) in\ninode reclaim.  The problem is that this doesn\u0027t get accounted well and\npenalizes a random allocator with a big latency spike caused by work\ngenerated from elsewhere.\n\nI think the best idea would be to avoid this.  By design if possible, or\nby deferring the hard work to an asynchronous context.  If the latter,\nthen the fs would probably want to throttle creation of new work with\nqueue size of the deferred work, but let\u0027s not get into those details.\n\nAnyway, the other obvious thing we looked at is the iprune_mutex which is\ncausing the cascading blocking.  We could turn this into an rwsem to\nimprove concurrency.  It is unreasonable to totally ban all potentially\nslow or blocking operations in inode reclaim, so I think this is a cheap\nway to get a small improvement.\n\nThis doesn\u0027t solve the whole problem of course.  The process doing inode\nreclaim will still take the latency hit, and concurrent processes may end\nup contending on filesystem locks.  So fs developers should keep these\nproblems in mind.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "70867453092297be9afb2249e712a1f960ec0a09",
      "tree": "cf753b5467e3a93fafd6bb452292e6ec60c3de86",
      "parents": [
        "02b51df1b07b4e9ca823c89284e704cadb323cd1"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Tue Sep 22 16:43:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "printk_once(): use bool for boolean flag\n\nUsing the type bool (instead of int) for the __print_once flag in the\nprintk_once() macro matches the intent of the code better, and allows the\ncompiler to generate smaller code; eg a typical callsite with gcc 4.3.3 on\ni386:\n\nadd/remove: 0/0 grow/shrink: 0/2 up/down: 0/-6 (-6)\nfunction                                     old     new   delta\nstatic.__print_once                            4       1      -3\nget_cpu_vendor                               146     143      -3\n\nSaving 6 bytes of object size per callsite by slightly improving the\nreadability of the source seems like a win to me.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02b51df1b07b4e9ca823c89284e704cadb323cd1",
      "tree": "c68de4809f261d742f597c686826cdc9d047fb4a",
      "parents": [
        "88e9d34c727883d7d6f02cf1475b3ec98b8480c7"
      ],
      "author": {
        "name": "Scott James Remnant",
        "email": "scott@ubuntu.com",
        "time": "Tue Sep 22 16:43:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "proc connector: add event for process becoming session leader\n\nThe act of a process becoming a session leader is a useful signal to a\nsupervising init daemon such as Upstart.\n\nWhile a daemon will normally do this as part of the process of becoming a\ndaemon, it is rare for its children to do so.  When the children do, it is\nnearly always a sign that the child should be considered detached from the\nparent and not supervised along with it.\n\nThe poster-child example is OpenSSH; the per-login children call setsid()\nso that they may control the pty connected to them.  If the primary daemon\ndies or is restarted, we do not want to consider the per-login children\nand want to respawn the primary daemon without killing the children.\n\nThis patch adds a new PROC_SID_EVENT and associated structure to the\nproc_event event_data union, it arranges for this to be emitted when the\nspecial PIDTYPE_SID pid is set.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Scott James Remnant \u003cscott@ubuntu.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nAcked-by: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88e9d34c727883d7d6f02cf1475b3ec98b8480c7",
      "tree": "475f544536d52739e0929e7727cab5124e855a06",
      "parents": [
        "b7ed698cc9d556306a4088c238e2ea9311ea2cb3"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Sep 22 16:43:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "seq_file: constify seq_operations\n\nMake all seq_operations structs const, to help mitigate against\nrevectoring user-triggerable function pointers.\n\nThis is derived from the grsecurity patch, although generated from scratch\nbecause it\u0027s simpler than extracting the changes from there.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7ed698cc9d556306a4088c238e2ea9311ea2cb3",
      "tree": "b0aadfcf2d2c1c1454bdf8f194f7ff94e5d21c46",
      "parents": [
        "912e837aef72a3dd263dafc3717d92bbc1211a53"
      ],
      "author": {
        "name": "Ladinu Chandrasinghe",
        "email": "ladinu.pub@gmail.com",
        "time": "Tue Sep 22 16:43:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "Documentation/: fix warnings from -Wmissing-prototypes in HOSTCFLAGS\n\nFix up -Wmissing-prototypes in compileable userspace code, mainly under\nDocumentation/.\n\nSigned-off-by: Ladinu Chandrasinghe \u003cladinu.pub@gmail.com\u003e\nSigned-off-by: Trevor Keith \u003ctsrk@tsrk.net\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "912e837aef72a3dd263dafc3717d92bbc1211a53",
      "tree": "7872171305a3518b6536754be0d597885e3d2792",
      "parents": [
        "54fdade1c3332391948ec43530c02c4794a38172"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Sep 22 16:43:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "dme1737: Keep index within pwm_config[]\n\nThe static code scanner \"Parfait\" reported this because pwm_config is\nonly 3 bytes - pwm_config[3] is out of range.\n\nSince this code path is never called with ix \u003d\u003d 3 (the device has no PWM4\noutput) this doesn\u0027t change anything in practice.  But to encourage\ntesting with Parfait, lets make the warning go away...\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54fdade1c3332391948ec43530c02c4794a38172",
      "tree": "a44cfa6888bbe702321e4d4737786e5292d72eaa",
      "parents": [
        "5c725138437837291db5c25f4a076ee852e806e3"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Tue Sep 22 16:43:39 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "generic-ipi: make struct call_function_data lockless\n\nThis patch can remove spinlock from struct call_function_data, the\nreasons are below:\n\n1: add a new interface for cpumask named cpumask_test_and_clear_cpu(),\n   it can atomically test and clear specific cpu, we can use it instead\n   of cpumask_test_cpu() and cpumask_clear_cpu() and no need data-\u003elock\n   to protect those in generic_smp_call_function_interrupt().\n\n2: in smp_call_function_many(), after csd_lock() return, the current\u0027s\n   cfd_data is deleted from call_function list, so it not have race\n   between other cpus, then cfs_data is only used in\n   smp_call_function_many() that must disable preemption and not from\n   a hardware interrupthandler or from a bottom half handler to call,\n   only the correspond cpu can use it, so it not have race in current\n   cpu, no need cfs_data-\u003elock to protect it.\n\n3: after 1 and 2, cfs_data-\u003elock is only use to protect cfs_data-\u003erefs in\n   generic_smp_call_function_interrupt(), so we can define cfs_data-\u003erefs\n   to atomic_t, and no need cfs_data-\u003elock any more.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n[akpm@linux-foundation.org: use atomic_dec_return()]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5c725138437837291db5c25f4a076ee852e806e3",
      "tree": "ddd05a26b2aa65a7508546b22235dffa2f41f54f",
      "parents": [
        "e898893399335514b10dfbd75598f8308976abe4"
      ],
      "author": {
        "name": "Trevor Keith",
        "email": "tsrk@tsrk.net",
        "time": "Tue Sep 22 16:43:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "Fix all -Wmissing-prototypes warnings in x86 defconfig\n\nSigned-off-by: Trevor Keith \u003ctsrk@tsrk.net\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e898893399335514b10dfbd75598f8308976abe4",
      "tree": "af829247f12aed6e9371dcee8ed119ce54a3e0c3",
      "parents": [
        "c02e3f361c75da04ca3025b4d19e947e9cc62ed3"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mb@bu3sch.de",
        "time": "Tue Sep 22 16:43:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "dac960: fix undefined behavior on empty string\n\nFix undefined behavior due to a buffer underrun if an empty string is\nwritten to the proc file.\n\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c02e3f361c75da04ca3025b4d19e947e9cc62ed3",
      "tree": "92605809366dda20430fa9dc7d0b9b9f2f3c0bd9",
      "parents": [
        "1fd7317d02ec03c6fdf072317841287933d06d24"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Sep 22 16:43:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "kmod: fix race in usermodehelper code\n\nThe user mode helper code has a race in it.  call_usermodehelper_exec()\ntakes an allocated subprocess_info structure, which it passes to a\nworkqueue, and then passes it to a kernel thread which it creates, after\nwhich it calls complete to signal to the caller of\ncall_usermodehelper_exec() that it can free the subprocess_info struct.\n\nBut since we use that structure in the created thread, we can\u0027t call\ncomplete from __call_usermodehelper(), which is where we create the kernel\nthread.  We need to call complete() from within the kernel thread and then\nnot use subprocess_info afterward in the case of UMH_WAIT_EXEC.  Tested\nsuccessfully by me.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.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": "1fd7317d02ec03c6fdf072317841287933d06d24",
      "tree": "b7ac4d511896dbb21c1b76a27f6c4d5b4cb6c7bb",
      "parents": [
        "af91322ef3f29ae4114e736e2a72e28b4d619cf9"
      ],
      "author": {
        "name": "Nick Black",
        "email": "dank@qemfd.net",
        "time": "Tue Sep 22 16:43:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "Move magic numbers into magic.h\n\nMove various magic-number definitions into magic.h.\n\nSigned-off-by: Nick Black \u003cdank@qemfd.net\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "af91322ef3f29ae4114e736e2a72e28b4d619cf9",
      "tree": "debba08531c7dd78b90b5d8f2c03f6bf7c9e7877",
      "parents": [
        "3a3b6ed2235f2f619889dd6096e24b6d93bf3339"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Tue Sep 22 16:43:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "printk: add printk_delay to make messages readable for some scenarios\n\nWhen syslog is not possible, at the same time there\u0027s no serial/net\nconsole available, it will be hard to read the printk messages.  For\nexample oops/panic/warning messages in shutdown phase.\n\nAdd a printk delay feature, we can make each printk message delay some\nmilliseconds.\n\nSetting the delay by proc/sysctl interface: /proc/sys/kernel/printk_delay\n\nThe value range from 0 - 10000, default value is 0\n\n[akpm@linux-foundation.org: fix a few things]\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3a3b6ed2235f2f619889dd6096e24b6d93bf3339",
      "tree": "f187d60c22a00a5aeea9df9483ae0182d265704f",
      "parents": [
        "5ae87e79ecb5baa65e9cf48be874098fafad0668"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Tue Sep 22 16:43:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "printk boot_delay: rename printk_delay_msec to loops_per_msec\n\nRename `printk_delay_msec\u0027 to `loops_per_msec\u0027, because the patch \"printk:\nadd printk_delay to make messages readable for some scenarios\" wishes to\nmore appropriately use the `printk_delay_msec\u0027 identifier.\n\n[akpm@linux-foundation.org: add a comment]\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ae87e79ecb5baa65e9cf48be874098fafad0668",
      "tree": "47dceb61ead03159e93ca998a6f88777474db4f3",
      "parents": [
        "f58f2fa9286db0ce9124ca9986d56aa5420b7f59"
      ],
      "author": {
        "name": "Guillaume Knispel",
        "email": "gknispel@proformatique.com",
        "time": "Tue Sep 22 16:43:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:27 2009 -0700"
      },
      "message": "poll/select: avoid arithmetic overflow in __estimate_accuracy()\n\n__estimate_accuracy() was prone to integer overflow, for example if *tv \u003d\u003d\n{2147, 483648000} on a 32 bit computer (or even for delays as small as\n{429, 500000000} if the task is niced).\n\nBecause the result was already forced between 0 and 100ms, the effect of\nthe overflow was not too problematic, but the use of the hrtimer range\nfeature was not optimal in overflow cases.\n\nThis patch ensures that there can not be an integer overflow in this\nfunction.\n\nSigned-off-by: Guillaume Knispel \u003cgknispel@proformatique.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Tejun Heo \u003ctj@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": "f58f2fa9286db0ce9124ca9986d56aa5420b7f59",
      "tree": "5157013d48d77a69f9dfe80f6fdca818320ba647",
      "parents": [
        "ca976c53de0c33160083d36f70bd18d7970f6969"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Tue Sep 22 16:43:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:27 2009 -0700"
      },
      "message": "kprobes: use do_IRQ() in lkdtm\n\nCurrent lkdtm code puts a probe on __do_IRQ for some of the kdump test\ncases.  Since __do_IRQ is deprecated, change lkdtm code to use do_IRQ\nfunction.\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nCc: Ankita Garg \u003cankita@in.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Masami Hiramatsu \u003cmhiramat@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": "ca976c53de0c33160083d36f70bd18d7970f6969",
      "tree": "efd3abdc12b0c636a4dba94dbcab4bafc78423b8",
      "parents": [
        "fa081b00a80ef3f4575c99af6e97d29e1628cf51"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Sep 22 16:43:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:27 2009 -0700"
      },
      "message": "smbfs: read buffer overflow\n\nThis function uses signed integers for the unix_date and local variables -\nif a negative number is supplied and the leap-year condition is not met,\nmonth will be 0, leading to a read of day_n[-1]\n\nSigned-off-by: Roel Kluin \u003croel.kluin@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": "fa081b00a80ef3f4575c99af6e97d29e1628cf51",
      "tree": "7124419e4f0bb4789d2c2e3b909dc1046c2bbe20",
      "parents": [
        "7fa07729e439a6184bd824746d06a49cca553f15"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Sep 22 16:43:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:27 2009 -0700"
      },
      "message": "include/linux/kmemcheck.h: fix a trillion warnings\n\nof the form\n\ninclude/net/inet_sock.h:208: warning: ISO C90 forbids mixed declarations and code\n\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7fa07729e439a6184bd824746d06a49cca553f15",
      "tree": "9037f5c36d64f842a030a1284f76a354ef6f76e6",
      "parents": [
        "991d79b0d1255f89267a350b0048eca59f100cbb",
        "a8f90e906783f1f815120eefe813b23cb396e9bd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 08:11:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 08:11:04 2009 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf_event, powerpc: Fix compilation after big perf_counter rename\n"
    },
    {
      "commit": "991d79b0d1255f89267a350b0048eca59f100cbb",
      "tree": "65ddf4160f959952d9f4955fda8844374768b83e",
      "parents": [
        "a87e84b5cdfacf11af4e8a85c4bca9793658536f",
        "181f7c5dd3832763bdf2756b6d2d8a49bdf12791"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 08:07:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 08:07:54 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vegard/kmemcheck\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vegard/kmemcheck:\n  kmemcheck: add missing braces to do-while in kmemcheck_annotate_bitfield\n  kmemcheck: update documentation\n  kmemcheck: depend on HAVE_ARCH_KMEMCHECK\n  kmemcheck: remove useless check\n  kmemcheck: remove duplicated #include\n"
    },
    {
      "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": "50223e486cabdcf7e540e519da1f26bab3084e5d",
      "tree": "c5eedda167c7ea83e342f80a9344646c7a99ba35",
      "parents": [
        "e258b80e691f1f3ae83a60aa80eaf7322bd55ec4",
        "a2d693cf650f000ea22351484ee66cf4c2651eef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:28 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:\n  HID: Remove duplicate Kconfig entry\n  HID: consolidate connect and disconnect into core code\n  HID: fix non-atomic allocation in hid_input_report\n"
    },
    {
      "commit": "e258b80e691f1f3ae83a60aa80eaf7322bd55ec4",
      "tree": "2233f4d43dede000a210db87733e04c912fdcb31",
      "parents": [
        "abd6633c67925f90775bb74755f9c547e30f1f20"
      ],
      "author": {
        "name": "David Härdeman",
        "email": "david@hardeman.nu",
        "time": "Mon Sep 21 17:04:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "input: add a driver for the Winbond WPCD376I Consumer IR hardware\n\nAdd a driver for the the Consumer IR (CIR) functionality of the Winbond\nWPCD376I chipset (found on e.g. Intel DG45FC motherboards).\n\nSigned-off-by: David Härdeman \u003cdavid@hardeman.nu\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "abd6633c67925f90775bb74755f9c547e30f1f20",
      "tree": "9cb974febc1a30e3914720655cd406cea84c063e",
      "parents": [
        "a976f150a6953da5ccbd40fa6dba3bd7d56f9f67"
      ],
      "author": {
        "name": "David Härdeman",
        "email": "david@hardeman.nu",
        "time": "Mon Sep 21 17:04:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "pnp: add a shutdown method to pnp drivers\n\nThe shutdown method is used by the winbond cir driver to setup the\nhardware for wake-from-S5.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: David Härdeman \u003cdavid@hardeman.nu\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a976f150a6953da5ccbd40fa6dba3bd7d56f9f67",
      "tree": "36c0c1b9d424649421dde1f1d553bd17179a5264",
      "parents": [
        "560a64a2b501add585b494b2b9cd9f68c0636b50"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Mon Sep 21 17:04:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "hwmon: applesmc: restore accelerometer and keyboard backlight on resume\n\nOn resume from suspend, the driver currently resets the logical state as\nif it was brought up from halt.  This patch uses the\ndev_pm_ops.resume/restore methods to synchronize the hardware with the\nmemorized logical state, in effect bringing back the accelerometer and\nbacklight to the state prior to suspend.  Works for both suspend to ram\nand hibernation.  The patch has zero effect on the running state.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nCc: Nicolas Boichat \u003cnicolas@boichat.ch\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "560a64a2b501add585b494b2b9cd9f68c0636b50",
      "tree": "76ff9e60110a388e551f17b2071405eeea5f1c71",
      "parents": [
        "905ffdc35e50844ab45bbc59d5302238844f8526"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Sep 21 17:04:48 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "hwmon: fix freeing of gpio_data and irq\n\nIf already requested, gpio_data and irq should be freed in the case of an\nerror.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "905ffdc35e50844ab45bbc59d5302238844f8526",
      "tree": "13f5fcb88fe9b8f049181234749ea715b509e34b",
      "parents": [
        "f266889517252bc697e7103bcd6ed46bdf2c1579"
      ],
      "author": {
        "name": "Michael Abbott",
        "email": "michael@araneidae.co.uk",
        "time": "Mon Sep 21 17:04:47 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "drivers/hwmon/adm1021.c: add low_power support for adm1021 driver\n\nOccasionally it is helpful to be able to turn a temperature sensor off\n(for example if it\u0027s making unwanted electrical noise).  This patch\nadds a sysfs node to put any adm1021 compatible device into low power mode.\n\nSigned-off-by: Michael Abbott \u003cmichael.abbott@diamond.ac.uk\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f266889517252bc697e7103bcd6ed46bdf2c1579",
      "tree": "008a9f272f14e1f3b8e6009dc2509d274cf3155a",
      "parents": [
        "dc791f8aeeeea4314beede83d6ee74e6af5f627b"
      ],
      "author": {
        "name": "Michael Abbott",
        "email": "michael@araneidae.co.uk",
        "time": "Mon Sep 21 17:04:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "drivers/hwmon/adm1021.c: support high precision ADM1023 remote sensor\n\nThe ADM1023 temperature sensor supports higher resolution for its external\nsensor (sensitivity of 1/8 deg C).  This patch makes this higher\nresolution available through the appropriate temperature sysfs nodes.\n\nCuriously, this functionality was available in the 2.4 kernel driver (but\nformatted in a less helpful manner).\n\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Michael Abbott \u003cmichael.abbott@diamond.ac.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dc791f8aeeeea4314beede83d6ee74e6af5f627b",
      "tree": "15dff38707ba1991a0e822e43ec15a3923c13fef",
      "parents": [
        "2cd9645e2f0d60ed12268fe1738e79c119e2fe5a"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Sep 21 17:04:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "lis3_spi: code cleanups\n\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2cd9645e2f0d60ed12268fe1738e79c119e2fe5a",
      "tree": "91e335cd90f62f1de5acbd1c220f80cad50227db",
      "parents": [
        "8873c33483e62988ed886230aab71ef4c678f710"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Sep 21 17:04:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "lis3: add power management functions\n\nThis enabled power management functions for the SPI transport layer of the\nlis3 devices.  The device\u0027s suspend mode is only entered in case no wakeup\nthreshold has been given.  In this case, the device is supposed to wake up\nthe system and must thus not be put to deep sleep.\n\n[randy.dunlap@oracle.com: fix lis3-spi for CONFIG_PM\u003dn]\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8873c33483e62988ed886230aab71ef4c678f710",
      "tree": "441cdc48497b84c823330241ecff147642e136a4",
      "parents": [
        "0ec48915e8bbb37dea3df85c41e4c3498b95664b"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Sep 21 17:04:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "lis3: add free-fall/wakeup function via platform_data\n\nThis offers a way for platforms to define flags and thresholds for the\nfree-fall/wakeup functions of the lis302d chips.\n\nMore registers needed to be seperated as they are specific to the\n\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ec48915e8bbb37dea3df85c41e4c3498b95664b",
      "tree": "33818fe22473c3019f10ce1f58f83e003ea4c5af",
      "parents": [
        "0bf41d9f414a5cf558aff234a0ff486257537574"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Sep 21 17:04:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "lis3: fix typo\n\nBit 0x80 in CTRL_REG3 is an ACTIVE_LOW rather than an ACTIVE_HIGH\nfunction, I got that wrong during my last change.\n\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0bf41d9f414a5cf558aff234a0ff486257537574",
      "tree": "0ee03f5c5d245f7abedd9be49cef04a9e9d5bd25",
      "parents": [
        "42e41c54d61e32e8a349943607daa53205324d7f"
      ],
      "author": {
        "name": "Michael Riepe",
        "email": "michael.riepe@googlemail.com",
        "time": "Mon Sep 21 17:04:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "drivers/hwmon/coretemp.c: enable the Intel Atom\n\nEnable the coretemp driver on an Intel Atom.\n\nI\u0027m not sure if the readings are correct, however - on my 330, the driver\nreports values between 27 and 41 °C (with core1 being about 8°C hotter\nthan core0, given the same load).  Maybe the maximum temperature of 100 °C\nis wrong for Atom CPUs.\n\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Rudolf Marek \u003cr.marek@assembler.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42e41c54d61e32e8a349943607daa53205324d7f",
      "tree": "a38050a0b2e716100372601262273cdbd195baf8",
      "parents": [
        "0487683096decad0720dfaf80b9d28173d5f6662"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Mon Sep 21 17:04:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: add some common Blackfin checks\n\nAdd checks for Blackfin-specific issues that seem to crop up from time to\ntime.  In particular, we have helper macros to break a 32bit address into\nthe hi/lo parts, and we want to make sure people use the csync/ssync\nvariant that includes fun anomaly workarounds.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Bryan Wu \u003ccooloney@kernel.org\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0487683096decad0720dfaf80b9d28173d5f6662",
      "tree": "506241fcace0596fb4cf1e752d7f8aaa19295c8d",
      "parents": [
        "fb9e9096ba94385b738a8ad6c5864b5778285957"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:39 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: version 0.29\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb9e9096ba94385b738a8ad6c5864b5778285957",
      "tree": "b066899e4c5a4ca033babb068acdc7d0132186c5",
      "parents": [
        "ea71a0a019f913bdf506103bd90140d93a2b83f0"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: limit sN/uN matches to actual bit sizes\n\nLimit our type matcher to the s/u/le/be etc sizes that actually exist to\nprevent miss categorising s2 as a type.  Fix up the spelling of the error\nalso.\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ea71a0a019f913bdf506103bd90140d93a2b83f0",
      "tree": "0d5cf1171809bf012054c7a028beb93450a664fa",
      "parents": [
        "77f5b10a82bbd832c99ec4b120d5645342a5b140"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: format strings should not have brackets in macros\n\nWe should not recommend braces for the following:\n\n    #define pr_fmt(fmt)    \"%s: \" fmt, __func__\n\nallow things with double quotes round them to avoid this check.\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "77f5b10a82bbd832c99ec4b120d5645342a5b140",
      "tree": "13359c9798da6babc144262b59f777e664ac195e",
      "parents": [
        "30dad6ebecffebddf6b9947d11e31377fa900ff3"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "hannes@hanneseder.net",
        "time": "Mon Sep 21 17:04:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: make -f alias --file, add --help, more verbose help message\n\nImpact:\n  - More verbose help/usage message.\n  - Make the option -f an alias for --file.\n  - On -h, --help, and --version display help message and exit(0).\n  - With no FILE(s) given, exit(1) with \"no input files\".\n  - On invalid options display help/usage and exit(1).\n\nBased on a patch by Pavel Machek.\n\nSigned-off-by: Hannes Eder \u003channes@hanneseder.net\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30dad6ebecffebddf6b9947d11e31377fa900ff3",
      "tree": "105febf76a8f69f2194383bf027cad7e8d257d1f",
      "parents": [
        "113f04a836481e9ecc26e8dee8b0e4d52878a288"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: indent checks -- stop when we run out of continuation lines\n\nEnsure we terminate when there are no futher continuation lines when\ntrying to determine relative indent of conditionals and their blocks.\n\nReported-by: John Daiker \u003cdaikerjohn@gmail.com\u003e\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "113f04a836481e9ecc26e8dee8b0e4d52878a288",
      "tree": "3f6261a456fd09d2219bb2fe80d90fd0c093f753",
      "parents": [
        "463f28648586721c2191130c9b3c27589dcc11a0"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@fifo99.com",
        "time": "Mon Sep 21 17:04:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "checkpatch: handle C99 comments correctly (performance issue)\n\nThis fixes the sanitation process in checkpatch.pl so that it blocks out\nthe text after a C99 style comment the same way it does with block style\ncomments.  This prevents the text from getting processed as regular code.\n\nSigned-off-by: Daniel Walker \u003cdwalker@fifo99.com\u003e\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "463f28648586721c2191130c9b3c27589dcc11a0",
      "tree": "6b9ae0d46a17cd4cd904168e5e818ef68b6c7a04",
      "parents": [
        "fc0d8d944df0c58cd810f33db82f87dcf5dcc190"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:34 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "checkpatch: possible types -- else cannot start a type\n\nAn else cannot start a type, it would have to be within a block after the\nelse.  This can trigger false modifier matching.\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc0d8d944df0c58cd810f33db82f87dcf5dcc190",
      "tree": "2fb3f712ce4ef5ddd615e145ec1f4afe8f03a689",
      "parents": [
        "45b588d6e5cc172704bac0c998ce54873b149b22"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: add missing kerneldoc annotations\n\nAdd kerneldoc annotations for function formals of type struct flex_array\nand gfp_t which are currently lacking.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45b588d6e5cc172704bac0c998ce54873b149b22",
      "tree": "57a9d3478af60fcf6932c1f61b083b9203ef1ee8",
      "parents": [
        "4af5a2f770cc8575840ccb1514ec76ecb592985c"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: introduce DEFINE_FLEX_ARRAY\n\nFLEX_ARRAY_INIT(element_size, total_nr_elements) cannot determine if\neither parameter is valid, so flex arrays which are statically allocated\nwith this interface can easily become corrupted or reference beyond its\nallocated memory.\n\nThis removes FLEX_ARRAY_INIT() as a struct flex_array initializer since no\ninitializer may perform the required checking.  Instead, the array is now\ndefined with a new interface:\n\n\tDEFINE_FLEX_ARRAY(name, element_size, total_nr_elements)\n\nThis may be prefixed with `static\u0027 for file scope.\n\nThis interface includes compile-time checking of the parameters to ensure\nthey are valid.  Since the validity of both element_size and\ntotal_nr_elements depend on FLEX_ARRAY_BASE_SIZE and FLEX_ARRAY_PART_SIZE,\nthe kernel build will fail if either of these predefined values changes\nsuch that the array parameters are no longer valid.\n\nSince BUILD_BUG_ON() requires compile time constants, several of the\nstatic inline functions that were once local to lib/flex_array.c had to be\nmoved to include/linux/flex_array.h.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4af5a2f770cc8575840ccb1514ec76ecb592985c",
      "tree": "7af18234d7d171a946925e65e987fd51648be3aa",
      "parents": [
        "19da3dd157f8db6fe727ff268dab4791d55a6371"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: add flex_array_shrink function\n\nAdd a new function to the flex_array API:\n\n\tint flex_array_shrink(struct flex_array *fa)\n\nThis function will free all unused second-level pages.  Since elements are\nnow poisoned if they are not allocated with __GFP_ZERO, it\u0027s possible to\nidentify parts that consist solely of unused elements.\n\nflex_array_shrink() returns the number of pages freed.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19da3dd157f8db6fe727ff268dab4791d55a6371",
      "tree": "4259074638b384e765c73542d74dd8f44750068b",
      "parents": [
        "e6de3988aa52debb25a427d085061f3bf1181d54"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: poison free elements\n\nNewly initialized flex_array\u0027s and/or flex_array_part\u0027s are now poisoned\nwith a new poison value, FLEX_ARRAY_FREE.  It\u0027s value is similar to\nPOISON_FREE used in the various slab allocators, but is different to\ndistinguish between flex array\u0027s poisoned kmem and slab allocator poisoned\nkmem.\n\nThis will allow us to identify flex_array_part\u0027s that only contain free\nelements (and free them with an addition to the flex_array API).  This\ncould also be extended in the future to identify `get\u0027 uses on elements\nthat have not been `put\u0027.\n\nIf __GFP_ZERO is passed for a part\u0027s gfp mask, the poisoning is avoided.\nThese elements are considered to be in-use since they have been\ninitialized.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6de3988aa52debb25a427d085061f3bf1181d54",
      "tree": "4a5dd6acac3e73049918c646bd977894335e5560",
      "parents": [
        "2f30b1f9e1b612cdd1a17daeecf514229e8d6a5f"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: add flex_array_clear function\n\nAdd a new function to the flex_array API:\n\n\tint flex_array_clear(struct flex_array *fa,\n\t\t\t\tunsigned int element_nr)\n\nThis function will zero the element at element_nr in the flex_array.\n\nAlthough this is equivalent to using flex_array_put() and passing a\npointer to zero\u0027d memory, flex_array_clear() does not require such a\npointer to memory that would most likely need to be allocated on the\ncaller\u0027s stack which could be significantly large depending on\nelement_size.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2f30b1f9e1b612cdd1a17daeecf514229e8d6a5f",
      "tree": "78be4b31e0fee84c34bcd53270257290098ee058",
      "parents": [
        "efc03ecb9d674588a13aee27289c2af2afe5e6b4"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Mon Sep 21 17:04:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "vsprintf: use WARN_ON_ONCE\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nReviewed-by: Frederic Weisbecker \u003cfweisbec@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": "efc03ecb9d674588a13aee27289c2af2afe5e6b4",
      "tree": "b56e72a17bc11c548eeb31a6dd8a593dbab104f2",
      "parents": [
        "076cfaaece1c4e57ea7d924f38b911b9a5502365"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "MAINTAINERS: move ARM lists to infradead\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nCc: Krzysztof Halasa \u003ckhc@pm.waw.pl\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "076cfaaece1c4e57ea7d924f38b911b9a5502365",
      "tree": "a3a69b96fd5e7ec37c98ee89b732e0ea02a76251",
      "parents": [
        "4e04d5a3d57accb0b05d381aa84d93d3749b15e2"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "MAINTAINERS: integrate P:/M: lines\n\nA couple of new uses of separate \"P: name\" \"M: address\" lines are\nconverted to single line \"M: name \u003caddress\u003e\"\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Anil Ravindranath \u003canil_ravindranath@pmc-sierra.com\u003e\nCc: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4e04d5a3d57accb0b05d381aa84d93d3749b15e2",
      "tree": "a77c1f4160ae54042cba85780768b8a400521697",
      "parents": [
        "43368e74d126f8e874fce2c248f094edfcf0baa6"
      ],
      "author": {
        "name": "Felipe Contreras",
        "email": "felipe.contreras@gmail.com",
        "time": "Mon Sep 21 17:04:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "MAINTAINERS: omap: fix regex\n\nOtherwise \u0027arch/arm/*omap*/foo.c\u0027 wouldn\u0027t match\n\nSigned-off-by: Felipe Contreras \u003cfelipe.contreras@gmail.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43368e74d126f8e874fce2c248f094edfcf0baa6",
      "tree": "0a252d2981c8d968a05ca7d1498360c543aee2fe",
      "parents": [
        "b781655a6f6d15bdcc96f2cc1d56b0658f9cf0b4"
      ],
      "author": {
        "name": "Felipe Contreras",
        "email": "felipe.contreras@gmail.com",
        "time": "Mon Sep 21 17:04:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "MAINTAINERS: acpi: add \u0027include/acpi\u0027\n\nSigned-off-by: Felipe Contreras \u003cfelipe.contreras@gmail.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b781655a6f6d15bdcc96f2cc1d56b0658f9cf0b4",
      "tree": "b2b2b1f0cc825333160b929aa48546b587cc4ace",
      "parents": [
        "11ecf53c97863a0609db3816d82f1d0ddf3d2bc2"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add maintainers in order listed in matched section\n\nPrevious behavior was \"bottom-up\" in each section from the pattern \"F:\"\nentry that matched.  Now information is entered into the various lists in\nthe \"as entered\" order for each matched section.\n\nThis also allows the F: entry to be put anywhere in a section, not just as\nthe last entries in the section.\n\nAnd a couple of improvements:\n\nDon\u0027t alphabetically sort before outputting the matched scm, status,\nsubsystem and web sections.\n\nIgnore content after a single email address so these entries are acceptable\nM:\tname \u003caddress\u003e whatever other comment\n\nAnd a fix:\n\nMake an M: entry without a name again use the name from an immediately\npreceding P: line if it exists.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "11ecf53c97863a0609db3816d82f1d0ddf3d2bc2",
      "tree": "bea4e471f97f7a5535e03c1e38cdbd588b1a747e",
      "parents": [
        "42498316132e89ca2835b977a7cfb32a83e97b35"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add --remove-duplicates\n\nAllow control over the elimination of duplicate email names and addresses\n\n--remove-duplicates will use the first email name or address presented\n--noremove-duplicates will emit all names and addresses\n\n--remove-duplicates is enabled by default\n\nFor instance:\n\n$ ./scripts/get_maintainer.pl -f drivers/char/tty_ioctl.c\nGreg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAlan Cox \u003calan@linux.intel.com\u003e\nMike Frysinger \u003cvapier@gentoo.org\u003e\nAlexey Dobriyan \u003cadobriyan@gmail.com\u003e\nlinux-kernel@vger.kernel.org\n\n$ ./scripts/get_maintainer.pl -f --noremove-duplicates drivers/char/tty_ioctl.c\nGreg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAlan Cox \u003calan@redhat.com\u003e\nAlan Cox \u003calan@linux.intel.com\u003e\nAlan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nMike Frysinger \u003cvapier@gentoo.org\u003e\nAlexey Dobriyan \u003cadobriyan@gmail.com\u003e\nlinux-kernel@vger.kernel.org\n\nUsing --remove-duplicates could eliminate multiple maintainers that\nshare the same name but not the same email address.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42498316132e89ca2835b977a7cfb32a83e97b35",
      "tree": "1854b2321f90fc546c135b11adcded4429fe299c",
      "parents": [
        "8cbb3a77e1a91073fb279a495a11d5093461dfe5"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:21 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: using --separator implies --nomultiline\n\nIf a person sets a separator, it\u0027s only used if --nomultiline is set.\nDon\u0027t make the command line also include --nomultiline in that case.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8cbb3a77e1a91073fb279a495a11d5093461dfe5",
      "tree": "847d483a9605e0974df243a4de45487aa31b2aa0",
      "parents": [
        "0e70e83dfd40cac47e1fc3e2f1c7b893ea0cd2f8"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:21 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add .mailmap use, shell and email cleanups\n\nAdd reading and using .mailmap file if it exists\nConvert address entries in .mailmap to first encountered address\nDon\u0027t terminate shell commands with \\n\nStrip characters found after sign-offs by: name \u003caddress\u003e [stripped]\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e70e83dfd40cac47e1fc3e2f1c7b893ea0cd2f8",
      "tree": "119b588cff1fb709402dd88be1204e5b7795c70e",
      "parents": [
        "3fb55652b9f754990e286723f209ce3c07c96d69"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:20 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: better email routines, use perl not shell where possible\n\nAdded format_email and parse_email routines to reduce inline use.\n\nAdded email_address_inuse to eliminate multiple maintainer entries\nfor the same email address, the first name encountered is used.\n\nUsed internal perl equivalents of shell cmd use of grep|cut|sort|uniq\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3fb55652b9f754990e286723f209ce3c07c96d69",
      "tree": "6578fa841ae3207a3bb88d2d2c40356f53d637a6",
      "parents": [
        "1d606b4e0bf8fe45e3f88543dfce83207ae0027d"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add --pattern-depth\n\n--pattern-depth is used to control how many levels of directory traversal\nshould be performed to find maintainers.  default is 0 (all directory levels).\n\nFor instance:\n\nMAINTAINERS currently has multiple M: and F: entries that match\nnet/netfilter/ipvs/ip_vs_app.c\n\nIPVS\nM:\tWensong Zhang \u003cwensong@linux-vs.org\u003e\nM:\tSimon Horman \u003chorms@verge.net.au\u003e\nM:\tJulian Anastasov \u003cja@ssi.bg\u003e\n[...]\nF:\tnet/netfilter/ipvs/\n\nNETFILTER/IPTABLES/IPCHAINS\n[...]\nM:\tPatrick McHardy \u003ckaber@trash.net\u003e\n[...]\nF:\tnet/netfilter/\n\nNETWORKING [GENERAL]\nM:\t\"David S. Miller\" \u003cdavem@davemloft.net\u003e\n[...]\nF:\tnet/\n\nTHE REST\nM:\tLinus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n[...]\nF:\t*/\n\nUsing this command will return all of those maintainers:\n(except Linus unless --git-chief-maintainers is specified)\n\n$ ./scripts/get_maintainer.pl --nogit -nol \\\n\t-f net/netfilter/ipvs/ip_vs_app.c\nJulian Anastasov \u003cja@ssi.bg\u003e\nSimon Horman \u003chorms@verge.net.au\u003e\nWensong Zhang \u003cwensong@linux-vs.org\u003e\nPatrick McHardy \u003ckaber@trash.net\u003e\nDavid S. Miller \u003cdavem@davemloft.net\u003e\n\nAdding --pattern-depth\u003d1 will match at the deepest level\n$ ./scripts/get_maintainer.pl --nogit -nol --pattern-depth\u003d1 \\\n\t-f net/netfilter/ipvs/ip_vs_app.c\nJulian Anastasov \u003cja@ssi.bg\u003e\nSimon Horman \u003chorms@verge.net.au\u003e\nWensong Zhang \u003cwensong@linux-vs.org\u003e\n\nAdding --pattern-depth\u003d2 will match at the deepest level and 1 higher\n$ ./scripts/get_maintainer.pl --nogit -nol --pattern-depth\u003d2 \\\n\t-f net/netfilter/ipvs/ip_vs_app.c\nJulian Anastasov \u003cja@ssi.bg\u003e\nSimon Horman \u003chorms@verge.net.au\u003e\nWensong Zhang \u003cwensong@linux-vs.org\u003e\nPatrick McHardy \u003ckaber@trash.net\u003e\n\nand so on.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d606b4e0bf8fe45e3f88543dfce83207ae0027d",
      "tree": "3ce6a2d59ce2240b21d60afc929d58999e9efbc7",
      "parents": [
        "f5492666a3b62344de9026a960c11888160362c9"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add sections in pattern match depth order\n\nBefore this change, matched sections were added in the order\nof appearance in the normally alphabetic section order of\nthe MAINTAINERS file.\n\nFor instance, finding the maintainer for drivers/scsi/wd7000.c\nwould first find \"SCSI SUBSYSTEM\", then \"WD7000 SCSI SUBSYSTEM\",\nthen \"THE REST\".\n\nbefore patch:\n\n$ ./scripts/get_maintainer.pl --nogit -f drivers/scsi/wd7000.c\nJames E.J. Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nMiroslav Zagorac \u003czaga@fly.cc.fer.hr\u003e\nlinux-scsi@vger.kernel.org\nlinux-kernel@vger.kernel.org\n\nget_maintainer.pl now selects matched sections by longest pattern match.\nLongest is the number of \"/\"s and any specific file pattern.\n\nThis changes the example output order of MAINTAINERS to whatever is\nselected in \"WD7000 SUBSYSTEM\", then \"SCSI SYSTEM\", then \"THE REST\".\n\nafter patch:\n\n$ ./scripts/get_maintainer.pl --nogit -f drivers/scsi/wd7000.c\nMiroslav Zagorac \u003czaga@fly.cc.fer.hr\u003e\nJames E.J. Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nlinux-scsi@vger.kernel.org\nlinux-kernel@vger.kernel.org\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f5492666a3b62344de9026a960c11888160362c9",
      "tree": "e9f491186ac1f778817c8b493857d9c84478cb85",
      "parents": [
        "b61d4a71e483fe1aa1c4b170c28d85be77edce4f"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add --git-blame\n\nJulia Lawall suggested that get_maintainers.pl should have the\nability to include signatories of commits that are modified by\na particular patch.\n\nVegard Nossum did something similar once.\nhttp://lkml.org/lkml/2008/5/29/449\n\nThe modified script looks the commits for all lines in the\npatch, and includes the \"-by:\" signatories for those commits.\nIt uses the same git-min-percent, git-max-maintainers, and\ngit-min-signatures options.  git-since is ignored.\n\nIt can be used independently from the --git default, so\n        ./scripts/get_maintainers.pl --nogit --git-blame \u003cpatch\u003e\nor\n        ./scripts/get_maintainers.pl --nogit --git-blame -f \u003cfile\u003e\nis acceptable.\n\nIf used with -f \u003cfile\u003e, all lines/commits for the file are\nchecked.\n\n--git-blame can be slow if used with -f \u003cfile\u003e\n--git-blame does not work with -f \u003cdirectory\u003e\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b61d4a71e483fe1aa1c4b170c28d85be77edce4f",
      "tree": "125f223e8f97c1ebbeadc8d5b0681c4d535092ea",
      "parents": [
        "4d04c70754eec6d0fd342a5bc3f684db69cc2226"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "heder@google.com",
        "time": "Mon Sep 21 17:04:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "MAINTAINERS: add IPVS include files\n\nSigned-off-by: Hannes Eder \u003cheder@google.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d04c70754eec6d0fd342a5bc3f684db69cc2226",
      "tree": "4001855784fddcec748e2f9754933a537d04c7d4",
      "parents": [
        "db4e5cbe2f201c6abd51f7dfe41dbd2589affeba"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Sep 21 17:04:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "uml: fix order of pud and pmd_free()\n\nIf pmd_alloc() fails we should only free the prior allocated pud, if\npte_alloc_map() fails, we should free pmd as well.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db4e5cbe2f201c6abd51f7dfe41dbd2589affeba",
      "tree": "e1db462b358d7242faae23e46bd74fd3f246d7bb",
      "parents": [
        "672917dcc781ead7652a8b11b1fba14e38ac15b8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 21 17:04:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "um: convert to asm-generic/hardirq.h\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "672917dcc781ead7652a8b11b1fba14e38ac15b8",
      "tree": "c504b7f60737ba8d82eabfa662585d463ae5ea66",
      "parents": [
        "69d25870f20c4b2563304f2b79c5300dd60a067e"
      ],
      "author": {
        "name": "Corrado Zoccolo",
        "email": "czoccolo@gmail.com",
        "time": "Mon Sep 21 17:04:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "cpuidle: menu governor: reduce latency on exit\n\nMove the state residency accounting and statistics computation off the hot\nexit path.\n\nOn exit, the need to recompute statistics is recorded, and new statistics\nwill be computed when menu_select is called again.\n\nThe expected effect is to reduce processor wakeup latency from sleep\n(C-states).  We are speaking of few hundreds of cycles reduction out of a\nseveral microseconds latency (determined by the hardware transition), so\nit is difficult to measure.\n\nSigned-off-by: Corrado Zoccolo \u003cczoccolo@gmail.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Adam Belay \u003cabelay@novell.com\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69d25870f20c4b2563304f2b79c5300dd60a067e",
      "tree": "cda2b2d65c1be95420c6ba92ae2d40fade4232c4",
      "parents": [
        "45d80eea87c9f8292d2d33173d6866c0ec57238a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Mon Sep 21 17:04:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "cpuidle: fix the menu governor to boost IO performance\n\nFix the menu idle governor which balances power savings, energy efficiency\nand performance impact.\n\nThe reason for a reworked governor is that there have been serious\nperformance issues reported with the existing code on Nehalem server\nsystems.\n\nTo show this I\u0027m sure Andrew wants to see benchmark results:\n(benchmark is \"fio\", \"no cstates\" is using \"idle\u003dpoll\")\n\n\t\tno cstates\tcurrent linux\tnew algorithm\n1 disk\t\t107 Mb/s\t85 Mb/s\t\t105 Mb/s\n2 disks\t\t215 Mb/s\t123 Mb/s\t209 Mb/s\n12 disks\t590 Mb/s\t320 Mb/s\t585 Mb/s\n\nIn various power benchmark measurements, no degredation was found by our\nmeasurement\u0026diagnostics team.  Obviously a small percentage more power was\nused in the \"fio\" benchmark, due to the much higher performance.\n\nWhile it would be a novel idea to describe the new algorithm in this\ncommit message, I cheaped out and described it in comments in the code\ninstead.\n\n[changes since first post: spelling fixes from akpm, review feedback,\nfolded menu-tng into menu.c]\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Yanmin Zhang \u003cyanmin_zhang@linux.intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45d80eea87c9f8292d2d33173d6866c0ec57238a",
      "tree": "2286da07cdadfb600200679cf9d0090278a39230",
      "parents": [
        "4ad4c76b7afb71774b846b322ad2ae42f814331a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 21 17:04:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:44 2009 -0700"
      },
      "message": "m68k: convert to asm-generic/hardirq.h\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ad4c76b7afb71774b846b322ad2ae42f814331a",
      "tree": "eae834caeb70f70c1112113628cf6f94a0bdfd14",
      "parents": [
        "ef187fd799c50e15dbb56a0286c81bf467bd0201"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Mon Sep 21 17:04:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "m68k: convert to use arch_gettimeoffset()\n\nConvert m68k to use GENERIC_TIME via the arch_getoffset() infrastructure,\nreducing the amount of arch specific code we need to maintain.\n\nI\u0027ve taken my best swing at converting this, but I\u0027m not 100% confident\nI got it right. My cross-compiler is now out of date (gcc4.2) so I\nwasn\u0027t able to  check if it compiled. Any assistance from arch\nmaintainers or testers to get this merged would be great.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ef187fd799c50e15dbb56a0286c81bf467bd0201",
      "tree": "34753f6f10b3bd07c0d832c06338bfbdd73342b2",
      "parents": [
        "95ad759c6b0f30ad9aa5efbdbcecb9597238c00f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 21 17:04:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "m32r: convert to asm-generic/hardirq.h\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95ad759c6b0f30ad9aa5efbdbcecb9597238c00f",
      "tree": "596e961f86340694d205b652de02c90a16546b90",
      "parents": [
        "d5a6d1739526ed8c383db3dabc232bc15603439a"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Mon Sep 21 17:04:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "m32r: convert to use arch_gettimeoffset()\n\nConvert m32r to use GENERIC_TIME via the arch_getoffset() infrastructure,\nreducing the amount of arch specific code we need to maintain.\n\nI also noted that m32r doesn\u0027t seem to be taking the xtime write lock\nbefore calling do_timer()!  That looks like a pretty bad bug to me.  If\nfolks agree, let me know and I can move the lock grab to the correct spot.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5a6d1739526ed8c383db3dabc232bc15603439a",
      "tree": "8562c06469f310df7cdd8fe46be428207be839da",
      "parents": [
        "1f693665457539e919856149151b7a7e96550d70"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Sep 21 17:04:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "m32r: remove redundant tests on unsigned\n\n`off\u0027 and `max_cpus\u0027 are unsigned.  When negative they are wrapped and\ncaught by the other test.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f693665457539e919856149151b7a7e96550d70",
      "tree": "20e042535ff01d419dd981845bcd2820fac63d28",
      "parents": [
        "621731980fe1b19f0a107e17e2af5f8d4411db3e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 21 17:04:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "alpha: convert to asm-generic/hardirq.h\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "621731980fe1b19f0a107e17e2af5f8d4411db3e",
      "tree": "3c1168b17a32a5134bf23cce93341149020676e4",
      "parents": [
        "27258e448eb301cf89e351df87aa8cb916653bf2"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Mon Sep 21 17:04:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "alpha: use printk_once\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27258e448eb301cf89e351df87aa8cb916653bf2",
      "tree": "02ac13d99be71f0f623d176e6ee5125e9507d965",
      "parents": [
        "4f543fa41e78bd366123424a3378f2f4918c0f33"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Sep 21 17:04:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "arch/alpha/boot/tools/objstrip.c: wrong variable tested after open()\n\nThe incorrect variable is tested. fd is used for another open()\nand is already tested.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4f543fa41e78bd366123424a3378f2f4918c0f33",
      "tree": "bf6e9fdb30c41de9833dcf2a363177ea0dc28a5d",
      "parents": [
        "6e0c9e77771e08b171c4abeb073285d8fb03f528"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Mon Sep 21 17:04:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "alpha: convert to use arch_gettimeoffset()\n\nConverts alpha to use GENERIC_TIME via the arch_getoffset()\ninfrastructure, reducing the amount of arch specific code we need to\nmaintain.\n\nI suspect the alpha arch could even be further improved to provide and\nrpcc() based clocksource, but not having the hardware, I don\u0027t feel\ncomfortable attempting the more complicated conversion (but I\u0027d be glad to\nhelp if anyone else is interested).\n\n[akpm@linux-foundation.org: fix build]\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6e0c9e77771e08b171c4abeb073285d8fb03f528",
      "tree": "826c32f5e9e346e68b53e070284d06d1641f58db",
      "parents": [
        "eb8cdec4a984fde123a91250dcc9e0bddf5eafdc"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 21 17:03:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "h8300: convert to asm-generic/hardirq.h\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb8cdec4a984fde123a91250dcc9e0bddf5eafdc",
      "tree": "9f97b5949e6e63ae947363149b62ed224dad5ab9",
      "parents": [
        "02e87d1a934c70e3599eb7a29db783806d329e17"
      ],
      "author": {
        "name": "Bernd Schmidt",
        "email": "bernds_cb1@t-online.de",
        "time": "Mon Sep 21 17:03:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "nommu: add support for Memory Protection Units (MPU)\n\nSome architectures (like the Blackfin arch) implement some of the\n\"simpler\" features that one would expect out of a MMU such as memory\nprotection.\n\nIn our case, we actually get read/write/exec protection down to the page\nboundary so processes can\u0027t stomp on each other let alone the kernel.\n\nThere is a performance decrease (which depends greatly on the workload)\nhowever as the hardware/software interaction was not optimized at design\ntime.\n\nSigned-off-by: Bernd Schmidt \u003cbernds_cb1@t-online.de\u003e\nSigned-off-by: Bryan Wu \u003ccooloney@kernel.org\u003e\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02e87d1a934c70e3599eb7a29db783806d329e17",
      "tree": "74e469003183fb3cbea4ce8081e7b186c656179b",
      "parents": [
        "e6be4a8c26d0a9bacd811084c468e25863e3d069"
      ],
      "author": {
        "name": "Kristoffer Ericson",
        "email": "kristoffer.ericson@gmail.com",
        "time": "Mon Sep 21 17:03:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "pcmcia: cleanup/fixup patch for sa1100_jornada_pcmcia driver\n\nClean up the /drivers/pcmcia/sa1100_jornada.c file with respect to\nformatting.  It also changes a build warning into a code comment (since\nits a pain to watch every build and havent seen any problems with driver\nin 3.5years).\n\nSigned-off-by: Kristoffer Ericson \u003ckristoffer.ericson@gmail.com\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6be4a8c26d0a9bacd811084c468e25863e3d069",
      "tree": "51f0e91aab763fc2af3235336ab501dc7c24263d",
      "parents": [
        "470967dc6c38696f853b7f338eb9d743c28a9e11"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:03:55 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "pcmcia: switch /proc/bus/pccard/drivers to seq_file\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "470967dc6c38696f853b7f338eb9d743c28a9e11",
      "tree": "9dac40e966a5bb4a902f9cdb8ea0701fe964b85f",
      "parents": [
        "734f3fa18d460995c8621cf2331b7fba88c977ce"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Sep 21 17:03:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "pcmcia: fix read buffer overflow\n\nIf count \u003e 0 and dev-\u003erlen \u003d\u003d dev-\u003erpos and dev-\u003eproto \u003d\u003d 0 then we read\nand write dev-\u003erbuf[-1];\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Harald Welte \u003claforge@gnumonks.org\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "734f3fa18d460995c8621cf2331b7fba88c977ce",
      "tree": "64efcf651bcb43ce6d361fa1accffbf07056422d",
      "parents": [
        "f68e14805085972b4e0b0ab684af37f713b9c262"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Mon Sep 21 17:03:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "pcmcia: yenta: add missing __devexit marking\n\nThe remove member of the pci_driver yenta_cardbus_driver uses\n__devexit_p(), so the remove function itself should be marked with\n__devexit.  Even more so considering the probe function is marked with\n__devinit.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Daniel Ritz \u003cdaniel.ritz-ml@swissonline.ch\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f68e14805085972b4e0b0ab684af37f713b9c262",
      "tree": "6e0cc9e1e3f29b36ec3d7acfaf863cf9bb39ea5b",
      "parents": [
        "3d2d827f5ca5e32816194119d5c980c7e04474a6"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Mon Sep 21 17:03:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "mm: reduce atomic use on use_mm fast path\n\nWhen the mm being switched to matches the active mm, we don\u0027t need to\nincrement and then drop the mm count.  In a simple benchmark this happens\nin about 50% of time.  Making that conditional reduces contention on that\ncacheline on SMP systems.\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": "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": "425fbf047cc70bb30dff368a6da02c8c2d229318",
      "tree": "7e71fc7a73c799debba250998ab3b3f56c124e90",
      "parents": [
        "6e17b17f1fc7b2f24383a693d63550d9e1460081"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Mon Sep 21 17:03:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "shmem: initialize struct shmem_sb_info to zero\n\nFixes the following kmemcheck false positive (the compiler is using\na 32-bit mov to load the 16-bit sbinfo-\u003emode in shmem_fill_super):\n\n[    0.337000] Total of 1 processors activated (3088.38 BogoMIPS).\n[    0.352000] CPU0 attaching NULL sched-domain.\n[    0.360000] WARNING: kmemcheck: Caught 32-bit read from uninitialized\nmemory (9f8020fc)\n[    0.361000]\na44240820000000041f6998100000000000000000000000000000000ff030000\n[    0.368000]  i i i i i i i i i i i i i i i i u u u u i i i i i i i i i i u\nu\n[    0.375000]                                                          ^\n[    0.376000]\n[    0.377000] Pid: 9, comm: khelper Not tainted (2.6.31-tip #206) P4DC6\n[    0.378000] EIP: 0060:[\u003c810a3a95\u003e] EFLAGS: 00010246 CPU: 0\n[    0.379000] EIP is at shmem_fill_super+0xb5/0x120\n[    0.380000] EAX: 00000000 EBX: 9f845400 ECX: 824042a4 EDX: 8199f641\n[    0.381000] ESI: 9f8020c0 EDI: 9f845400 EBP: 9f81af68 ESP: 81cd6eec\n[    0.382000]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068\n[    0.383000] CR0: 8005003b CR2: 9f806200 CR3: 01ccd000 CR4: 000006d0\n[    0.384000] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000\n[    0.385000] DR6: ffff4ff0 DR7: 00000400\n[    0.386000]  [\u003c810c25fc\u003e] get_sb_nodev+0x3c/0x80\n[    0.388000]  [\u003c810a3514\u003e] shmem_get_sb+0x14/0x20\n[    0.390000]  [\u003c810c207f\u003e] vfs_kern_mount+0x4f/0x120\n[    0.392000]  [\u003c81b2849e\u003e] init_tmpfs+0x7e/0xb0\n[    0.394000]  [\u003c81b11597\u003e] do_basic_setup+0x17/0x30\n[    0.396000]  [\u003c81b11907\u003e] kernel_init+0x57/0xa0\n[    0.398000]  [\u003c810039b7\u003e] kernel_thread_helper+0x7/0x10\n[    0.400000]  [\u003cffffffff\u003e] 0xffffffff\n[    0.402000] khelper used greatest stack depth: 2820 bytes left\n[    0.407000] calling  init_mmap_min_addr+0x0/0x10 @ 1\n[    0.408000] initcall init_mmap_min_addr+0x0/0x10 returned 0 after 0 usecs\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAnalysed-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: 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": "6e17b17f1fc7b2f24383a693d63550d9e1460081",
      "tree": "146a9921760755dfd5398c3fd56df918e391fe0d",
      "parents": [
        "94bf5ceac095c7d4cb5e4d40fa7e2dd81d722b75"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Mon Sep 21 17:03:48 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "mm: remove duplicate asm/mman.h files\n\nA number of architectures have identical asm/mman.h files so they can all\nbe merged by using the new generic file.\n\nThe remaining asm/mman.h files are substantially different from each\nother.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "94bf5ceac095c7d4cb5e4d40fa7e2dd81d722b75",
      "tree": "5e41a60cbc7281cb68df1d4a2139933877096616",
      "parents": [
        "4e52780d41a741fb4861ae1df2413dd816ec11b1"
      ],
      "author": {
        "name": "Eric B Munson",
        "email": "ebmunson@us.ibm.com",
        "time": "Mon Sep 21 17:03:48 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "hugetlb: add MAP_HUGETLB example\n\nAdd an example of how to use the MAP_HUGETLB flag to the vm documentation\ndirectory and a reference to the example in hugetlbpage.txt.\n\nSigned-off-by: Eric B 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": "4e52780d41a741fb4861ae1df2413dd816ec11b1",
      "tree": "b3722349661ed0ce87841b110f568616892cf719",
      "parents": [
        "90f72aa58bbf076b68e289fbd71eb829bc505923"
      ],
      "author": {
        "name": "Eric B Munson",
        "email": "ebmunson@us.ibm.com",
        "time": "Mon Sep 21 17:03:47 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:42 2009 -0700"
      },
      "message": "hugetlb: add MAP_HUGETLB for mmaping pseudo-anonymous huge page regions\n\nAdd a flag for mmap that will be used to request a huge page region that\nwill look like anonymous memory to userspace.  This is accomplished by\nusing a file on the internal vfsmount.  MAP_HUGETLB is a modifier of\nMAP_ANONYMOUS and so must be specified with it.  The region will behave\nthe same as a MAP_ANONYMOUS region using small pages.\n\n[akpm@linux-foundation.org: fix arch definitions of MAP_HUGETLB]\nSigned-off-by: Eric B 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\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "90f72aa58bbf076b68e289fbd71eb829bc505923",
      "tree": "992e5f59086cc77581fa10b52fb4a46fb3baf3f0",
      "parents": [
        "6bfde05bf5c9682e255c6a2c669dc80f91af6296"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Mon Sep 21 17:03:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "mm: add MAP_HUGETLB for mmaping pseudo-anonymous huge page regions\n\nAdd a flag for mmap that will be used to request a huge page region that\nwill look like anonymous memory to user space.  This is accomplished by\nusing a file on the internal vfsmount.  MAP_HUGETLB is a modifier of\nMAP_ANONYMOUS and so must be specified with it.  The region will behave\nthe same as a MAP_ANONYMOUS region using small pages.\n\nThe patch also adds the MAP_STACK flag, which was previously defined only\non some architectures but not on others.  Since MAP_STACK is meant to be a\nhint only, architectures can define it without assigning a specific\nmeaning to it.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Eric B Munson \u003cebmunson@us.ibm.com\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "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": "f8dbf0a7a4c5d98e8b70da9f7f4f6a89f3b7a7bb",
      "tree": "1f40d51f39965017999c36e3a5ae78b67e43f5d5",
      "parents": [
        "252c5f94d944487e9f50ece7942b0fbf659c5c31"
      ],
      "author": {
        "name": "Huang Shijie",
        "email": "shijie8@gmail.com",
        "time": "Mon Sep 21 17:03:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "mmap: save some cycles for the shared anonymous mapping\n\nshmem_zero_setup() does not change vm_start, pgoff or vm_flags, only some\ndrivers change them (such as /driver/video/bfin-t350mcqb-fb.c).\n\nMove these codes to a more proper place to save cycles for shared\nanonymous mapping.\n\nSigned-off-by: Huang Shijie \u003cshijie8@gmail.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nAcked-by: 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": "252c5f94d944487e9f50ece7942b0fbf659c5c31",
      "tree": "0dd21bdb968ce5bd3f30fadce261984d3b1abf98",
      "parents": [
        "3f96b79ad96263cc0ece7bb340cddf9b2ddfb1b3"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "Lee.Schermerhorn@hp.com",
        "time": "Mon Sep 21 17:03:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "mmap: avoid unnecessary anon_vma lock acquisition in vma_adjust()\n\nWe noticed very erratic behavior [throughput] with the AIM7 shared\nworkload running on recent distro [SLES11] and mainline kernels on an\n8-socket, 32-core, 256GB x86_64 platform.  On the SLES11 kernel\n[2.6.27.19+] with Barcelona processors, as we increased the load [10s of\nthousands of tasks], the throughput would vary between two \"plateaus\"--one\nat ~65K jobs per minute and one at ~130K jpm.  The simple patch below\ncauses the results to smooth out at the ~130k plateau.\n\nBut wait, there\u0027s more:\n\nWe do not see this behavior on smaller platforms--e.g., 4 socket/8 core.\nThis could be the result of the larger number of cpus on the larger\nplatform--a scalability issue--or it could be the result of the larger\nnumber of interconnect \"hops\" between some nodes in this platform and how\nthe tasks for a given load end up distributed over the nodes\u0027 cpus and\nmemories--a stochastic NUMA effect.\n\nThe variability in the results are less pronounced [on the same platform]\nwith Shanghai processors and with mainline kernels.  With 31-rc6 on\nShanghai processors and 288 file systems on 288 fibre attached storage\nvolumes, the curves [jpm vs load] are both quite flat with the patched\nkernel consistently producing ~3.9% better throughput [~80K jpm vs ~77K\njpm] than the unpatched kernel.\n\nProfiling indicated that the \"slow\" runs were incurring high[er]\ncontention on an anon_vma lock in vma_adjust(), apparently called from the\nsbrk() system call.\n\nThe patch:\n\nA comment in mm/mmap.c:vma_adjust() suggests that we don\u0027t really need the\nanon_vma lock when we\u0027re only adjusting the end of a vma, as is the case\nfor brk().  The comment questions whether it\u0027s worth while to optimize for\nthis case.  Apparently, on the newer, larger x86_64 platforms, with\ninteresting NUMA topologies, it is worth while--especially considering\nthat the patch [if correct!] is quite simple.\n\nWe can detect this condition--no overlap with next vma--by noting a NULL\n\"importer\".  The anon_vma pointer will also be NULL in this case, so\nsimply avoid loading vma-\u003eanon_vma to avoid the lock.\n\nHowever, we DO need to take the anon_vma lock when we\u0027re inserting a vma\n[\u0027insert\u0027 non-NULL] even when we have no overlap [NULL \"importer\"], so we\nneed to check for \u0027insert\u0027, as well.  And Hugh points out that we should\nalso take it when adjusting vm_start (so that rmap.c can rely upon\nvma_address() while it holds the anon_vma lock).\n\nakpm: Zhang Yanmin reprts a 150% throughput improvement with aim7, so it\nmight be -stable material even though thiss isn\u0027t a regression: \"this\nissue is not clear on dual socket Nehalem machine (2*4*2 cpu), but is\nsevere on large machine (4*8*2 cpu)\"\n\n[hugh.dickins@tiscali.co.uk: test vma start too]\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Eric Whitney \u003ceric.whitney@hp.com\u003e\nTested-by: \"Zhang, Yanmin\" \u003cyanmin_zhang@linux.intel.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "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": "cdf7b3418ad5a8783efe8f9124023d9b869fec0f",
      "tree": "0504a26ba5d7cbbaa71bdd2911d55c6934de8be5",
      "parents": [
        "03f6462a3ae78f36eb1f0ee8b4d5ae2f7859c1d5"
      ],
      "author": {
        "name": "Huang Shijie",
        "email": "shijie8@gmail.com",
        "time": "Mon Sep 21 17:03:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "mmap: remove unnecessary code\n\nIf (flags \u0026 MAP_LOCKED) is true, it means vm_flags has already contained\nthe bit VM_LOCKED which is set by calc_vm_flag_bits().\n\nSo there is no need to reset it again, just remove it.\n\nSigned-off-by: Huang Shijie \u003cshijie8@gmail.com\u003e\nAcked-by: 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": "03f6462a3ae78f36eb1f0ee8b4d5ae2f7859c1d5",
      "tree": "bf19c5019705796e90ef592233aca5f09025a92f",
      "parents": [
        "62eede62dafb4a6633eae7ffbeb34c60dba5e7b1"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Mon Sep 21 17:03:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "mm: move highest_memmap_pfn\n\nMove highest_memmap_pfn __read_mostly from page_alloc.c next to zero_pfn\n__read_mostly in memory.c: to help them share a cacheline, since they\u0027re\nvery often tested together in vm_normal_page().\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: 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": "62eede62dafb4a6633eae7ffbeb34c60dba5e7b1",
      "tree": "e55a0ca4ad0c55ad162443146268cfb4c473750f",
      "parents": [
        "3ae77f43b1118a76ea37952d444319c15e002c03"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Mon Sep 21 17:03:34 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "mm: ZERO_PAGE without PTE_SPECIAL\n\nReinstate anonymous use of ZERO_PAGE to all architectures, not just to\nthose which __HAVE_ARCH_PTE_SPECIAL: as suggested by Nick Piggin.\n\nContrary to how I\u0027d imagined it, there\u0027s nothing ugly about this, just a\nzero_pfn test built into one or another block of vm_normal_page().\n\nBut the MIPS ZERO_PAGE-of-many-colours case demands is_zero_pfn() and\nmy_zero_pfn() inlines.  Reinstate its mremap move_pte() shuffling of\nZERO_PAGEs we did from 2.6.17 to 2.6.19?  Not unless someone shouts for\nthat: it would have to take vm_flags to weed out some cases.\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: 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\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ae77f43b1118a76ea37952d444319c15e002c03",
      "tree": "78152c28d4c8be8da36148e2e38e87e1b08b839b",
      "parents": [
        "6e919717c82c5773ac671816c8392c70d261685f"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Mon Sep 21 17:03:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:41 2009 -0700"
      },
      "message": "mm: hugetlbfs_pagecache_present\n\nRename hugetlbfs_backed() to hugetlbfs_pagecache_present()\nand add more comments, as suggested by Mel Gorman.\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: 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"
    }
  ],
  "next": "6e919717c82c5773ac671816c8392c70d261685f"
}
