)]}'
{
  "log": [
    {
      "commit": "e7b384043e27bed4f23b108481b99c518dd01a01",
      "tree": "52f944bf39d3a7b329f4e38d619d7949e35510a0",
      "parents": [
        "92fe15a3d24fa53e7e961c549c488d0bb642d895"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Jun 30 01:56:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:38 2006 -0700"
      },
      "message": "[PATCH] cond_resched() fix\n\nFix a bug identified by Zou Nan hai \u003cnanhai.zou@intel.com\u003e:\n\nIf the system is in state SYSTEM_BOOTING, and need_resched() is true,\ncond_resched() returns true even though it didn\u0027t reschedule.  Consequently\nneed_resched() remains true and JBD locks up.\n\nFix that by teaching cond_resched() to only return true if it really did call\nschedule().\n\ncond_resched_lock() and cond_resched_softirq() have a problem too.  If we\u0027re\nin SYSTEM_BOOTING state and need_resched() is true, these functions will drop\nthe lock and will then try to call schedule(), but the SYSTEM_BOOTING state\nwill prevent schedule() from being called.  So on return, need_resched() will\nstill be true, but cond_resched_lock() has to return 1 to tell the caller that\nthe lock was dropped.  The caller will probably lock up.\n\nBottom line: if these functions dropped the lock, they _must_ call schedule()\nto clear need_resched().   Make it so.\n\nAlso, uninline __cond_resched().  It\u0027s largeish, and slowpath.\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "92fe15a3d24fa53e7e961c549c488d0bb642d895",
      "tree": "168020a6356ce53e52d1e22211c11c3262966c55",
      "parents": [
        "ff23db5373f66a818c296f4d58adaaa10f515fd3"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Jun 30 01:55:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:38 2006 -0700"
      },
      "message": "[PATCH] uml: add __raw_writeq definition\n\nThe x86_64 build requires a definition for __raw_writeq.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ff23db5373f66a818c296f4d58adaaa10f515fd3",
      "tree": "46ac9d4e0cbee290324c8efc9bf389bd503c3b08",
      "parents": [
        "d115ec0f0f094683dc2588818cb28134dd75e6d1"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Jun 30 01:55:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:38 2006 -0700"
      },
      "message": "[PATCH] uml: fix biarch gcc build on x86_64\n\nI run an x86_64 kernel with i386 userspace (Ubuntu Dapper) and decided to try\nout UML today.  I found that UML wasn\u0027t quite aware of biarch compilers (which\nUbuntu i386 ships).  A fix similar to what was done for x86_64 should probably\nbe committed (see\nhttp://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113425940204010\u0026w\u003d2).  Without\nthe FLAGS changes, the build will fail at a number of places and without the\nLINK change, the final link will fail.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d115ec0f0f094683dc2588818cb28134dd75e6d1",
      "tree": "c59c47992cda54a97baa0c5cdbb4af834c96366f",
      "parents": [
        "30df49191cf8c7a3d86ccea956ba0de911c1dc36"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Jun 30 01:55:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:38 2006 -0700"
      },
      "message": "[PATCH] uml: remove stray file\n\nForgot to remove arch/um/kernel/time.c when it was mostly moved to\narch/um/os-Linux.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "30df49191cf8c7a3d86ccea956ba0de911c1dc36",
      "tree": "015e377c4475e56558de5bc9352d880e79efe6a1",
      "parents": [
        "572e614750c3ed27da1ec6b75dc486066a11fffd"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Jun 30 01:55:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:38 2006 -0700"
      },
      "message": "[PATCH] uml: remove unneeded time definitions\n\nRemove um_time() and um_stime() syscalls since they are identical to\nsystem-wide ones.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "572e614750c3ed27da1ec6b75dc486066a11fffd",
      "tree": "50459d715a5145e43c7da1e0d87a85582258ca94",
      "parents": [
        "6edb08620fbeeeba81ab63c7129a51cdb3acd8b3"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Jun 30 01:55:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] uml: add locking to xtime accesses\n\ndo_timer must be called with xtime_lock held.  I\u0027m not sure boot_timer_handler\nneeds this, however I don\u0027t think it hurts: it simply disables irq and takes a\nspinlock.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6edb08620fbeeeba81ab63c7129a51cdb3acd8b3",
      "tree": "86b5227a41b7829ae32d0fe37eed395aea9c94f1",
      "parents": [
        "190f4939222b8c07cd62a20e1ce0c7a97fffde99"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Jun 30 01:55:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] uml: unregister useless console when it\u0027s not needed\n\n-mm in combination with an FC5 init started dying with \u0027stderr\u003d1\u0027 because init\ndidn\u0027t like the lack of /dev/console and exited.  The problem was that the\nstderr console, which is intended to dump printk output to the terminal before\nthe regular console is initialized, isn\u0027t a tty, and so can\u0027t make\n/dev/console operational.\n\nHowever, since it is registered first, the normal console, when it is\nregistered, doesn\u0027t become the preferred console, and isn\u0027t attached to\n/dev/console.  Thus, /dev/console is never operational.\n\nThis patch makes the stderr console unregister itself in an initcall, which is\nlate enough that the normal console is registered.  When that happens, the\nnormal console will become the preferred console and will be able to run\n/dev/console.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "190f4939222b8c07cd62a20e1ce0c7a97fffde99",
      "tree": "f3de1035774a1c6358231903d847f1313db7bf0b",
      "parents": [
        "c2b7a4bb30008dc256d63802e02b6fb950958443"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Jun 30 01:55:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] uml: fix off-by-one bug in VM file creation\n\nFix an off-by-one bug in temp file creation.  Seeking to the desired length\nand writing a byte resulted in the file being one byte longer than expected.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c2b7a4bb30008dc256d63802e02b6fb950958443",
      "tree": "355e20a2295099dad5878c2034d39739e984d9d1",
      "parents": [
        "dd673bca474a199fb8d1b6a311832592977ecb5f"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Jun 30 01:55:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] uml: fix /proc/mounts parsing boundary condition\n\nWhen parsing /proc/mounts looking for a tmpfs mount on /dev/shm, if a string\nthat we are looking for if split across reads, then it won\u0027t be recognized.\n\nFix this by refilling the buffer whenever we advance the cursor.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd673bca474a199fb8d1b6a311832592977ecb5f",
      "tree": "133bc25768485f6952c39b4553c5a3e712de23af",
      "parents": [
        "033ab7f8e5c655f49ec8039930b2efd412abbbd7"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 01:55:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] UML: fix the INIT_ENV_ARG_LIMIT dependencies\n\nFix the INIT_ENV_ARG_LIMIT dependencies to what seems to have been\nintended.\n\nSpotted by Jean-Luc Leger.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "033ab7f8e5c655f49ec8039930b2efd412abbbd7",
      "tree": "33fd8073e47d88731380d97be8ecdbdbd69b459e",
      "parents": [
        "a1836a42daf5ddfe9a891973734bd9a7d62eb504"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Jun 30 01:55:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] add smp_setup_processor_id()\n\nPresently, smp_processor_id() isn\u0027t necessarily set up until setup_arch().\nBut it\u0027s used in boot_cpu_init() and printk() and perhaps in other places,\nprior to setup_arch() being called.\n\nSo provide a new smp_setup_processor_id() which is called before anything\nelse, wire it up for Voyager (which boots on a CPU other than #0, and broke).\n\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a1836a42daf5ddfe9a891973734bd9a7d62eb504",
      "tree": "e8819aec40aff3fa0eecd2ef9d92df8213bce58b",
      "parents": [
        "7a01955f99b65622a00ba5c8b39202ddc6fa65f8"
      ],
      "author": {
        "name": "David Quigley",
        "email": "dpquigl@tycho.nsa.gov",
        "time": "Fri Jun 30 01:55:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] SELinux: Add security hook definition for getioprio and insert hooks\n\nAdd a new security hook definition for the sys_ioprio_get operation.  At\npresent, the SELinux hook function implementation for this hook is\nidentical to the getscheduler implementation but a separate hook is\nintroduced to allow this check to be specialized in the future if\nnecessary.\n\nThis patch also creates a helper function get_task_ioprio which handles the\naccess check in addition to retrieving the ioprio value for the task.\n\nSigned-off-by: David Quigley \u003cdpquigl@tycho.nsa.gov\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7a01955f99b65622a00ba5c8b39202ddc6fa65f8",
      "tree": "1dc0ce68a00ba3171097dc5da9875fc6ed5b5069",
      "parents": [
        "8f95dc58d0505516f5cc212a966aea2f2cdb5e44"
      ],
      "author": {
        "name": "David Quigley",
        "email": "dpquigl@tycho.nsa.gov",
        "time": "Fri Jun 30 01:55:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] SELinux: update USB code with new kill_proc_info_as_uid\n\nThis patch updates the USB core to save and pass the sending task secid when\nsending signals upon AIO completion so that proper security checking can be\napplied by security modules.\n\nSigned-off-by: David Quigley \u003cdpquigl@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f95dc58d0505516f5cc212a966aea2f2cdb5e44",
      "tree": "2a57ad36db88621ee079fffe34b1cf9bff62b1f4",
      "parents": [
        "f9008e4c5c525941967b67777945aa6266ab6326"
      ],
      "author": {
        "name": "David Quigley",
        "email": "dpquigl@tycho.nsa.gov",
        "time": "Fri Jun 30 01:55:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:37 2006 -0700"
      },
      "message": "[PATCH] SELinux: add security hook call to kill_proc_info_as_uid\n\nThis patch adds a call to the extended security_task_kill hook introduced by\nthe prior patch to the kill_proc_info_as_uid function so that these signals\ncan be properly mediated by security modules.  It also updates the existing\nhook call in check_kill_permission.\n\nSigned-off-by: David Quigley \u003cdpquigl@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f9008e4c5c525941967b67777945aa6266ab6326",
      "tree": "a0c9436485b80d548ef74d5f1aec0f6d0309af6e",
      "parents": [
        "ed11d9eb2228acc483c819ab353e3c41bcb158fa"
      ],
      "author": {
        "name": "David Quigley",
        "email": "dpquigl@tycho.nsa.gov",
        "time": "Fri Jun 30 01:55:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] SELinux: extend task_kill hook to handle signals sent by AIO completion\n\nThis patch extends the security_task_kill hook to handle signals sent by AIO\ncompletion.  In this case, the secid of the task responsible for the signal\nneeds to be obtained and saved earlier, so a security_task_getsecid() hook is\nadded, and then this saved value is passed subsequently to the extended\ntask_kill hook for use in checking.\n\nSigned-off-by: David Quigley \u003cdpquigl@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ed11d9eb2228acc483c819ab353e3c41bcb158fa",
      "tree": "fa6efec62228835be260ac55d9dd0480a9064c8a",
      "parents": [
        "f8891e5e1f93a128c3900f82035e8541357896a7"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] slab: consolidate code to free slabs from freelist\n\nPost and discussion:\nhttp://marc.theaimsgroup.com/?t\u003d115074342800003\u0026r\u003d1\u0026w\u003d2\n\nCode in __shrink_node() duplicates code in cache_reap()\n\nAdd a new function drain_freelist that removes slabs with objects that are\nalready free and use that in various places.\n\nThis eliminates the __node_shrink() function and provides the interrupt\nholdoff reduction from slab_free to code that used to call __node_shrink.\n\n[akpm@osdl.org: build fixes]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f8891e5e1f93a128c3900f82035e8541357896a7",
      "tree": "97b078ac97970962b17c85d39fd64cb48dc01168",
      "parents": [
        "ca889e6c45e0b112cb2ca9d35afc66297519b5d5"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] Light weight event counters\n\nThe remaining counters in page_state after the zoned VM counter patches\nhave been applied are all just for show in /proc/vmstat.  They have no\nessential function for the VM.\n\nWe use a simple increment of per cpu variables.  In order to avoid the most\nsevere races we disable preempt.  Preempt does not prevent the race between\nan increment and an interrupt handler incrementing the same statistics\ncounter.  However, that race is exceedingly rare, we may only loose one\nincrement or so and there is no requirement (at least not in kernel) that\nthe vm event counters have to be accurate.\n\nIn the non preempt case this results in a simple increment for each\ncounter.  For many architectures this will be reduced by the compiler to a\nsingle instruction.  This single instruction is atomic for i386 and x86_64.\n And therefore even the rare race condition in an interrupt is avoided for\nboth architectures in most cases.\n\nThe patchset also adds an off switch for embedded systems that allows a\nbuilding of linux kernels without these counters.\n\nThe implementation of these counters is through inline code that hopefully\nresults in only a single instruction increment instruction being emitted\n(i386, x86_64) or in the increment being hidden though instruction\nconcurrency (EPIC architectures such as ia64 can get that done).\n\nBenefits:\n- VM event counter operations usually reduce to a single inline instruction\n  on i386 and x86_64.\n- No interrupt disable, only preempt disable for the preempt case.\n  Preempt disable can also be avoided by moving the counter into a spinlock.\n- Handling is similar to zoned VM counters.\n- Simple and easily extendable.\n- Can be omitted to reduce memory use for embedded use.\n\nReferences:\n\nRFC http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113512330605497\u0026w\u003d2\nRFC http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114988082814934\u0026w\u003d2\nlocal_t http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114991748606690\u0026w\u003d2\nV2 http://marc.theaimsgroup.com/?t\u003d115014808400007\u0026r\u003d1\u0026w\u003d2\nV3 http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d115024767022346\u0026w\u003d2\nV4 http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d115047968808926\u0026w\u003d2\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca889e6c45e0b112cb2ca9d35afc66297519b5d5",
      "tree": "0a5efdec2a61540204d34bcbf56dc691d8f9c391",
      "parents": [
        "bab1846a0582f627f5ec22aa2dc5f4f3e82e8176"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] Use Zoned VM Counters for NUMA statistics\n\nThe numa statistics are really event counters.  But they are per node and\nso we have had special treatment for these counters through additional\nfields on the pcp structure.  We can now use the per zone nature of the\nzoned VM counters to realize these.\n\nThis will shrink the size of the pcp structure on NUMA systems.  We will\nhave some room to add additional per zone counters that will all still fit\nin the same cacheline.\n\n Bits\tPrior pcp size\t  \tSize after patch\tWe can add\n ------------------------------------------------------------------\n 64\t128 bytes (16 words)\t80 bytes (10 words)\t48\n 32\t 76 bytes (19 words)\t56 bytes (14 words)\t8 (64 byte cacheline)\n\t\t\t\t\t\t\t72 (128 byte)\n\nRemove the special statistics for numa and replace them with zoned vm\ncounters.  This has the side effect that global sums of these events now\nshow up in /proc/vmstat.\n\nAlso take the opportunity to move the zone_statistics() function from\npage_alloc.c into vmstat.c.\n\nDiscussions:\nV2 http://marc.theaimsgroup.com/?t\u003d115048227000002\u0026r\u003d1\u0026w\u003d2\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nAcked-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bab1846a0582f627f5ec22aa2dc5f4f3e82e8176",
      "tree": "79b6f31881f578a4db8a98ed97be4fc0db3f4ac1",
      "parents": [
        "c24f21bda88df4574de0a32a2a1558a23adae1b8"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Jun 30 01:55:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] zoned-vm-counters: remove read_page_state()\n\nNo callers.\n\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c24f21bda88df4574de0a32a2a1558a23adae1b8",
      "tree": "1cf2f0b69cc691c2e1a9ed569a7a98179cc9683e",
      "parents": [
        "d2c5e30c9a1420902262aa923794d2ae4e0bc391"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: remove useless struct wbs\n\nRemove writeback state\n\nWe can remove some functions now that were needed to calculate the page state\nfor writeback control since these statistics are now directly available.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d2c5e30c9a1420902262aa923794d2ae4e0bc391",
      "tree": "b8c42c189c2bc8dd4b6d808ee8ed2b28dbd70ddd",
      "parents": [
        "fd39fc8561be33065306bdac0e30414e1e8ac8e1"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: conversion of nr_bounce to per zone counter\n\nConversion of nr_bounce to a per zone counter\n\nnr_bounce is only used for proc output.  So it could be left as an event\ncounter.  However, the event counters may not be accurate and nr_bounce is\ncategorizing types of pages in a zone.  So we really need this to also be a\nper zone counter.\n\n[akpm@osdl.org: bugfix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fd39fc8561be33065306bdac0e30414e1e8ac8e1",
      "tree": "ae0740716eed3f850a8f7232c61caebe360bb5ae",
      "parents": [
        "ce866b34ae1b7f1ce60234cf65855886ac7e7d30"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: conversion of nr_unstable to per zone counter\n\nConversion of nr_unstable to a per zone counter\n\nWe need to do some special modifications to the nfs code since there are\nmultiple cases of disposition and we need to have a page ref for proper\naccounting.\n\nThis converts the last critical page state of the VM and therefore we need to\nremove several functions that were depending on GET_PAGE_STATE_LAST in order\nto make the kernel compile again.  We are only left with event type counters\nin page state.\n\n[akpm@osdl.org: bugfixes]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ce866b34ae1b7f1ce60234cf65855886ac7e7d30",
      "tree": "e9a2664f0abc5221b9a92e1417d8e02b94a634c4",
      "parents": [
        "b1e7a8fd854d2f895730e82137400012b509650e"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:35 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: conversion of nr_writeback to per zone counter\n\nConversion of nr_writeback to per zone counter.\n\nThis removes the last page_state counter from arch/i386/mm/pgtable.c so we\ndrop the page_state from there.\n\n[akpm@osdl.org: bugfix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b1e7a8fd854d2f895730e82137400012b509650e",
      "tree": "9fba87ff6b0146ebd4ee5bc7d5f0c8b037dbb3ad",
      "parents": [
        "df849a1529c106f7460e51479ca78fe07b07dc8c"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:39 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:35 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: conversion of nr_dirty to per zone counter\n\nThis makes nr_dirty a per zone counter.  Looping over all processors is\navoided during writeback state determination.\n\nThe counter aggregation for nr_dirty had to be undone in the NFS layer since\nwe summed up the page counts from multiple zones.  Someone more familiar with\nNFS should probably review what I have done.\n\n[akpm@osdl.org: bugfix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "df849a1529c106f7460e51479ca78fe07b07dc8c",
      "tree": "f0e52e4720160aa7540a57715c247dce44584cbc",
      "parents": [
        "9a865ffa34b6117a5e0b67640a084d8c2e198c93"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:35 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: conversion of nr_pagetables to per zone counter\n\nConversion of nr_page_table_pages to a per zone counter\n\n[akpm@osdl.org: bugfix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9a865ffa34b6117a5e0b67640a084d8c2e198c93",
      "tree": "c295d5a0831df81eeeded3834f32f513b9ae05c7",
      "parents": [
        "34aa1330f9b3c5783d269851d467326525207422"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:35 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: conversion of nr_slab to per zone counter\n\n- Allows reclaim to access counter without looping over processor counts.\n\n- Allows accurate statistics on how many pages are used in a zone by\n  the slab. This may become useful to balance slab allocations over\n  various zones.\n\n[akpm@osdl.org: bugfix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "34aa1330f9b3c5783d269851d467326525207422",
      "tree": "a47db4fa53527ea937dee9e763267ab21865ce11",
      "parents": [
        "f3dbd34460ff54962d3e3244b6bcb7f5295356e6"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:35 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: zone_reclaim: remove /proc/sys/vm/zone_reclaim_interval\n\nThe zone_reclaim_interval was necessary because we were not able to determine\nhow many unmapped pages exist in a zone.  Therefore we had to scan in\nintervals to figure out if any pages were unmapped.\n\nWith the zoned counters and NR_ANON_PAGES we now know the number of pagecache\npages and the number of mapped pages in a zone.  So we can simply skip the\nreclaim if there is an insufficient number of unmapped pages.  We use\nSWAP_CLUSTER_MAX as the boundary.\n\nDrop all support for /proc/sys/vm/zone_reclaim_interval.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f3dbd34460ff54962d3e3244b6bcb7f5295356e6",
      "tree": "91caae2b90d684a7640b5da451a9a2ff8a5c8fb8",
      "parents": [
        "bf02cf4b6cf931d060ad5c6ce9b960af6faefd2d"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:35 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: split NR_ANON_PAGES off from NR_FILE_MAPPED\n\nThe current NR_FILE_MAPPED is used by zone reclaim and the dirty load\ncalculation as the number of mapped pagecache pages.  However, that is not\ntrue.  NR_FILE_MAPPED includes the mapped anonymous pages.  This patch\nseparates those and therefore allows an accurate tracking of the anonymous\npages per zone.\n\nIt then becomes possible to determine the number of unmapped pages per zone\nand we can avoid scanning for unmapped pages if there are none.\n\nAlso it may now be possible to determine the mapped/unmapped ratio in\nget_dirty_limit.  Isnt the number of anonymous pages irrelevant in that\ncalculation?\n\nNote that this will change the meaning of the number of mapped pages reported\nin /proc/vmstat /proc/meminfo and in the per node statistics.  This may affect\nuser space tools that monitor these counters!  NR_FILE_MAPPED works like\nNR_FILE_DIRTY.  It is only valid for pagecache pages.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bf02cf4b6cf931d060ad5c6ce9b960af6faefd2d",
      "tree": "9856eceb13b2c86c7748f4060bbb3b35008b7ee0",
      "parents": [
        "347ce434d57da80fd5809c0c836f206a50999c26"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:35 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: remove NR_FILE_MAPPED from scan control structure\n\nWe can now access the number of pages in a mapped state in an inexpensive way\nin shrink_active_list.  So drop the nr_mapped field from scan_control.\n\n[akpm@osdl.org: bugfix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "347ce434d57da80fd5809c0c836f206a50999c26",
      "tree": "f730d151be77977f594e5cc083a93bbeb4c602cc",
      "parents": [
        "65ba55f500a37272985d071c9bbb35256a2f7c14"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:34 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: conversion of nr_pagecache to per zone counter\n\nCurrently a single atomic variable is used to establish the size of the page\ncache in the whole machine.  The zoned VM counters have the same method of\nimplementation as the nr_pagecache code but also allow the determination of\nthe pagecache size per zone.\n\nRemove the special implementation for nr_pagecache and make it a zoned counter\nnamed NR_FILE_PAGES.\n\nUpdates of the page cache counters are always performed with interrupts off.\nWe can therefore use the __ variant here.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "65ba55f500a37272985d071c9bbb35256a2f7c14",
      "tree": "e7735326ef2d2dca9d00a6c5ae47e9eb03c7834f",
      "parents": [
        "2244b95a7bcf8d24196f8a3a44187ba5dfff754c"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:34 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:34 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: convert nr_mapped to per zone counter\n\nnr_mapped is important because it allows a determination of how many pages of\na zone are not mapped, which would allow a more efficient means of determining\nwhen we need to reclaim memory in a zone.\n\nWe take the nr_mapped field out of the page state structure and define a new\nper zone counter named NR_FILE_MAPPED (the anonymous pages will be split off\nfrom NR_MAPPED in the next patch).\n\nWe replace the use of nr_mapped in various kernel locations.  This avoids the\nlooping over all processors in try_to_free_pages(), writeback, reclaim (swap +\nzone reclaim).\n\n[akpm@osdl.org: bugfix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2244b95a7bcf8d24196f8a3a44187ba5dfff754c",
      "tree": "771ef8eae45c2794fd73f870109c74d67c28888a",
      "parents": [
        "f6ac2354d791195ca40822b84d73d48a4e8b7f2b"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:34 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: basic ZVC (zoned vm counter) implementation\n\nPer zone counter infrastructure\n\nThe counters that we currently have for the VM are split per processor.  The\nprocessor however has not much to do with the zone these pages belong to.  We\ncannot tell f.e.  how many ZONE_DMA pages are dirty.\n\nSo we are blind to potentially inbalances in the usage of memory in various\nzones.  F.e.  in a NUMA system we cannot tell how many pages are dirty on a\nparticular node.  If we knew then we could put measures into the VM to balance\nthe use of memory between different zones and different nodes in a NUMA\nsystem.  For example it would be possible to limit the dirty pages per node so\nthat fast local memory is kept available even if a process is dirtying huge\namounts of pages.\n\nAnother example is zone reclaim.  We do not know how many unmapped pages exist\nper zone.  So we just have to try to reclaim.  If it is not working then we\npause and try again later.  It would be better if we knew when it makes sense\nto reclaim unmapped pages from a zone.  This patchset allows the determination\nof the number of unmapped pages per zone.  We can remove the zone reclaim\ninterval with the counters introduced here.\n\nFuthermore the ability to have various usage statistics available will allow\nthe development of new NUMA balancing algorithms that may be able to improve\nthe decision making in the scheduler of when to move a process to another node\nand hopefully will also enable automatic page migration through a user space\nprogram that can analyse the memory load distribution and then rebalance\nmemory use in order to increase performance.\n\nThe counter framework here implements differential counters for each processor\nin struct zone.  The differential counters are consolidated when a threshold\nis exceeded (like done in the current implementation for nr_pageache), when\nslab reaping occurs or when a consolidation function is called.\n\nConsolidation uses atomic operations and accumulates counters per zone in the\nzone structure and also globally in the vm_stat array.  VM functions can\naccess the counts by simply indexing a global or zone specific array.\n\nThe arrangement of counters in an array also simplifies processing when output\nhas to be generated for /proc/*.\n\nCounters can be updated by calling inc/dec_zone_page_state or\n_inc/dec_zone_page_state analogous to *_page_state.  The second group of\nfunctions can be called if it is known that interrupts are disabled.\n\nSpecial optimized increment and decrement functions are provided.  These can\navoid certain checks and use increment or decrement instructions that an\narchitecture may provide.\n\nWe also add a new CONFIG_DMA_IS_NORMAL that signifies that an architecture can\ndo DMA to all memory and therefore ZONE_NORMAL will not be populated.  This is\nonly currently set for IA64 SGI SN2 and currently only affects\nnode_page_state().  In the best case node_page_state can be reduced to\nretrieving a single counter for the one zone on the node.\n\n[akpm@osdl.org: cleanups]\n[akpm@osdl.org: export vm_stat[] for filesystems]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f6ac2354d791195ca40822b84d73d48a4e8b7f2b",
      "tree": "5f600175cf3591eac3d32bb8cebfd45d0aabf804",
      "parents": [
        "672b2714ae57af16fe7d760dc4e0918a7a6cb0fa"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:34 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: create vmstat.c/.h from page_alloc.c/.h\n\nNOTE: ZVC are *not* the lightweight event counters.  ZVCs are reliable whereas\nevent counters do not need to be.\n\nZone based VM statistics are necessary to be able to determine what the state\nof memory in one zone is.  In a NUMA system this can be helpful for local\nreclaim and other memory optimizations that may be able to shift VM load in\norder to get more balanced memory use.\n\nIt is also useful to know how the computing load affects the memory\nallocations on various zones.  This patchset allows the retrieval of that data\nfrom userspace.\n\nThe patchset introduces a framework for counters that is a cross between the\nexisting page_stats --which are simply global counters split per cpu-- and the\napproach of deferred incremental updates implemented for nr_pagecache.\n\nSmall per cpu 8 bit counters are added to struct zone.  If the counter exceeds\ncertain thresholds then the counters are accumulated in an array of\natomic_long in the zone and in a global array that sums up all zone values.\nThe small 8 bit counters are next to the per cpu page pointers and so they\nwill be in high in the cpu cache when pages are allocated and freed.\n\nAccess to VM counter information for a zone and for the whole machine is then\npossible by simply indexing an array (Thanks to Nick Piggin for pointing out\nthat approach).  The access to the total number of pages of various types does\nno longer require the summing up of all per cpu counters.\n\nBenefits of this patchset right now:\n\n- Ability for UP and SMP configuration to determine how memory\n  is balanced between the DMA, NORMAL and HIGHMEM zones.\n\n- loops over all processors are avoided in writeback and\n  reclaim paths. We can avoid caching the writeback information\n  because the needed information is directly accessible.\n\n- Special handling for nr_pagecache removed.\n\n- zone_reclaim_interval vanishes since VM stats can now determine\n  when it is worth to do local reclaim.\n\n- Fast inline per node page state determination.\n\n- Accurate counters in /sys/devices/system/node/node*/meminfo. Current\n  counters are counting simply which processor allocated a page somewhere\n  and guestimate based on that. So the counters were not useful to show\n  the actual distribution of page use on a specific zone.\n\n- The swap_prefetch patch requires per node statistics in order to\n  figure out when processors of a node can prefetch. This patch provides\n  some of the needed numbers.\n\n- Detailed VM counters available in more /proc and /sys status files.\n\nReferences to earlier discussions:\nV1 http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113511649910826\u0026w\u003d2\nV2 http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114980851924230\u0026w\u003d2\nV3 http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d115014697910351\u0026w\u003d2\nV4 http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d115024767318740\u0026w\u003d2\n\nPerformance tests with AIM7 did not show any regressions.  Seems to be a tad\nfaster even.  Tested on ia64/NUMA.  Builds fine on i386, SMP / UP.  Includes\nfixes for s390/arm/uml arch code.\n\nThis patch:\n\nMove counter code from page_alloc.c/page-flags.h to vmstat.c/h.\n\nCreate vmstat.c/vmstat.h by separating the counter code and the proc\nfunctions.\n\nMove the vm_stat_text array before zoneinfo_show.\n\n[akpm@osdl.org: s390 build fix]\n[akpm@osdl.org: HOTPLUG_CPU build fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "672b2714ae57af16fe7d760dc4e0918a7a6cb0fa",
      "tree": "d337918a69993af5cbfef46ed470f3e4482e9873",
      "parents": [
        "e09793bb9182115e6f5d15fd6571ac2b72d7a08a"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 01:55:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:34 2006 -0700"
      },
      "message": "[PATCH] fix ISTALLION\u003dy\n\ndrivers/char/istallion.c: In function âstli_initbrdsâ:\ndrivers/char/istallion.c:4150: error: implicit declaration of function âstli_parsebrdâ\ndrivers/char/istallion.c:4150: error: âstli_brdspâ undeclared (first use in this function)\ndrivers/char/istallion.c:4150: error: (Each undeclared identifier is reported only once\ndrivers/char/istallion.c:4150: error: for each function it appears in.)\ndrivers/char/istallion.c:4164: error: implicit declaration of function âstli_argbrdsâ\n\nWhile I was at it, I also removed the #ifdef MODULE around the initialation\ncode to allow it to perhaps work when built into the kernel and made a\nneedlessly global function static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e09793bb9182115e6f5d15fd6571ac2b72d7a08a",
      "tree": "d6e399ec606854cf9a1d016fcc403727d7906b08",
      "parents": [
        "1017f6afd578fe519d316d7148356703c04e8f03"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Jun 30 01:55:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:34 2006 -0700"
      },
      "message": "[PATCH] msr.c: use register_hotcpu_notifier()\n\nregister_cpu_notifier() cannot do anything in a module, in a\n!CONFIG_HOTPLUG_CPU kernel.\n\nCc: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1017f6afd578fe519d316d7148356703c04e8f03",
      "tree": "2903130f3a78f8e673409763bd39f210ea22559d",
      "parents": [
        "491d525ff19ead83b5e27ae4096b5c3e27805601"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 30 01:55:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:34 2006 -0700"
      },
      "message": "[PATCH] fix platform_device_put/del mishaps\n\nThis fixes drivers/char/pc8736x_gpio.c and drivers/char/scx200_gpio.c to\nuse the platform_device_del/put ops correctly.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "491d525ff19ead83b5e27ae4096b5c3e27805601",
      "tree": "bb833d1b7b343234c598dba861884543b23380dd",
      "parents": [
        "501b7c77de3e90519e95fd99e923bf9a29cd120d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 30 01:55:27 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:34 2006 -0700"
      },
      "message": "[PATCH] fix drivers/video/imacfb.c compilation\n\nFix build error on x86_64.  There\u0027s nothing even remotely close to\nimacmp_seg in the kernel, so I removed the whole line.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Edgar Hucek \u003chostmaster@ed-soft.at\u003e\nCc: Antonino Daplas \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "501b7c77de3e90519e95fd99e923bf9a29cd120d",
      "tree": "f7dc56286e7309186f335d32f03434e82f31a41d",
      "parents": [
        "74e651f0aa100f3e5d3432a8dd8869c089e8d72f",
        "184d7d20d352c7374f70ebca7468dc8cd5cc618a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 17:44:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 17:44:21 2006 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2:\n  ocfs2: remove redundant NULL checks in ocfs2_direct_IO_get_blocks()\n  ocfs2: clean up some osb fields\n  ocfs2: fix init of uuid_net_key\n  ocfs2: silence a debug print\n  ocfs2: silence ENOENT during lookup of broken links\n  ocfs2: Cleanup message prints\n  ocfs2: silence -EEXIST from ocfs2_extent_map_insert/lookup\n  [PATCH] fs/ocfs2/dlm/dlmrecovery.c: make dlm_lockres_master_requery() static\n  ocfs2: warn the user on a dead timeout mismatch\n  ocfs2: OCFS2_FS must depend on SYSFS\n  ocfs2: Compile-time disabling of ocfs2 debugging output.\n  configfs: Clear up a few extra spaces where there should be TABs.\n  configfs: Release memory in configfs_example.\n"
    },
    {
      "commit": "74e651f0aa100f3e5d3432a8dd8869c089e8d72f",
      "tree": "457e8d6ec4c28f3b1f3f4fcbf45df9b91f9ee9c7",
      "parents": [
        "6002e45045a190a112bc3bc2134d0ff4fac7ced7",
        "0702056f9f41274a06e21cb05f12b4265b4867a2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 17:43:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 17:43:43 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (30 commits)\n  [TIPC]: Initial activation message now includes TIPC version number\n  [TIPC]: Improve response to requests for node/link information\n  [TIPC]: Fixed skb_under_panic caused by tipc_link_bundle_buf\n  [IrDA]: Fix the AU1000 FIR dependencies\n  [IrDA]: Fix RCU lock pairing on error path\n  [XFRM]: unexport xfrm_state_mtu\n  [NET]: make skb_release_data() static\n  [NETFILTE] ipv4: Fix typo (Bugzilla #6753)\n  [IrDA]: MCS7780 usb_driver struct should be static\n  [BNX2]: Turn off link during shutdown\n  [BNX2]: Use dev_kfree_skb() instead of the _irq version\n  [ATM]: basic sysfs support for ATM devices\n  [ATM]: [suni] change suni_init to __devinit\n  [ATM]: [iphase] should be __devinit not __init\n  [ATM]: [idt77105] should be __devinit not __init\n  [BNX2]: Add NETIF_F_TSO_ECN\n  [NET]: Add ECN support for TSO\n  [AF_UNIX]: Datagram getpeersec\n  [NET]: Fix logical error in skb_gso_ok\n  [PKT_SCHED]: PSCHED_TADD() and PSCHED_TADD2() can result,tv_usec \u003e\u003d 1000000\n  ...\n"
    },
    {
      "commit": "0702056f9f41274a06e21cb05f12b4265b4867a2",
      "tree": "5b8c9bcd7957fdc99bc0ffa532f3d895dc446f52",
      "parents": [
        "ea13847b240e689e8f291355c36b46de9f44ddf9"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Thu Jun 29 12:33:51 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 17:08:20 2006 -0700"
      },
      "message": "[TIPC]: Initial activation message now includes TIPC version number\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Per Liden \u003cper.liden@ericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ea13847b240e689e8f291355c36b46de9f44ddf9",
      "tree": "058a74fadfaf762587567ff59d87ae18db4c9d68",
      "parents": [
        "e49060c7cab6ca856d048e1e10d71c0e6fedf376"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Thu Jun 29 12:33:20 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 17:08:15 2006 -0700"
      },
      "message": "[TIPC]: Improve response to requests for node/link information\n\nNow allocates reply space for \"get links\" request based on number of actual\nlinks, not number of potential links.  Also, limits reply to \"get links\" and\n\"get nodes\" requests to 32KB to match capabilities of tipc-config utility\nthat issued request.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Per Liden \u003cper.liden@ericsson.com\u003e\n"
    },
    {
      "commit": "e49060c7cab6ca856d048e1e10d71c0e6fedf376",
      "tree": "20b3ebd30b8cc645684c369e42c968276411e7d2",
      "parents": [
        "caf430f37119af5faac9252ec4e18cb1c55dde26"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Thu Jun 29 12:32:46 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 17:08:10 2006 -0700"
      },
      "message": "[TIPC]: Fixed skb_under_panic caused by tipc_link_bundle_buf\n\nNow determines tailroom of bundle buffer by directly inspection of buffer.\nPreviously, buffer was assumed to have a max capacity equal to the link MTU,\nbut the addition of link MTU negotiation means that the link MTU can increase\nafter the bundle buffer is allocated.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Per Liden \u003cper.liden@ericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "caf430f37119af5faac9252ec4e18cb1c55dde26",
      "tree": "e7284df1b82b734b42e2b42a0a428a0a521a7b0e",
      "parents": [
        "1bc1731133140dccdd08899a59bbc06d975d0a15"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Jun 29 17:03:19 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 17:03:19 2006 -0700"
      },
      "message": "[IrDA]: Fix the AU1000 FIR dependencies\n\nAU1000 FIR is broken, it should depend on SOC_AU1000.\n\nSpotted by Jean-Luc Leger.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Samuel Ortiz \u003csamuel@sortiz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1bc1731133140dccdd08899a59bbc06d975d0a15",
      "tree": "5264ce0882490e4d432d5c8e9f19f9a1b1c2a43e",
      "parents": [
        "244055fdc8dd39407a33d4eb9f4053dd4ca8f1bb"
      ],
      "author": {
        "name": "Josh Triplett",
        "email": "josh@freedesktop.org",
        "time": "Thu Jun 29 17:02:31 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 17:02:31 2006 -0700"
      },
      "message": "[IrDA]: Fix RCU lock pairing on error path\n\nirlan_client_discovery_indication calls rcu_read_lock and rcu_read_unlock, but\nreturns without unlocking in an error case.  Fix that by replacing the return\nwith a goto so that the rcu_read_unlock always gets executed.\n\nSigned-off-by: Josh Triplett \u003cjosh@freedesktop.org\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Samuel Ortiz samuel@sortiz.org \u003c\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "244055fdc8dd39407a33d4eb9f4053dd4ca8f1bb",
      "tree": "0b4c7cdcd5293099bc9989f57a864d65e4554e50",
      "parents": [
        "5bba17127e7c78e819560519449db237e1b0f99b"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Jun 29 13:04:41 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:33 2006 -0700"
      },
      "message": "[XFRM]: unexport xfrm_state_mtu\n\nThis patch removes the unused EXPORT_SYMBOL(xfrm_state_mtu).\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5bba17127e7c78e819560519449db237e1b0f99b",
      "tree": "e2a0700004fd8a0ae56cfbe54ed952c73bfef3bf",
      "parents": [
        "c22751b73a3770b3046102bb97b139218ff1875b"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Jun 29 13:02:35 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:30 2006 -0700"
      },
      "message": "[NET]: make skb_release_data() static\n\nskb_release_data() no longer has any users in other files.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c22751b73a3770b3046102bb97b139218ff1875b",
      "tree": "64e4b4866f53175a40c6fced126df715e825b2cb",
      "parents": [
        "7263ade1e1e72e34fc3c179f3aeaa07a11872d22"
      ],
      "author": {
        "name": "Matt LaPlante",
        "email": "laplam@rpi.edu",
        "time": "Thu Jun 29 12:51:15 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:28 2006 -0700"
      },
      "message": "[NETFILTE] ipv4: Fix typo (Bugzilla #6753)\n\nThis patch fixes bugzilla #6753, a typo in the netfilter Kconfig\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7263ade1e1e72e34fc3c179f3aeaa07a11872d22",
      "tree": "9271f6c59a8bed7d83f8af67618faa145f38a7e0",
      "parents": [
        "6c4f095eae35e83eb6148dec7f72874eeadf0c9b"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Jun 29 12:39:07 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:26 2006 -0700"
      },
      "message": "[IrDA]: MCS7780 usb_driver struct should be static\n\nThis patch makes a needlessly global struct static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Samuel Ortiz \u003csamuel@sortiz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6c4f095eae35e83eb6148dec7f72874eeadf0c9b",
      "tree": "1be263c4968b5268e0a3ebb1650a79f0833e3215",
      "parents": [
        "745720e58303f940e12944bf7fab52bc9ce48bda"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Jun 29 12:38:15 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:24 2006 -0700"
      },
      "message": "[BNX2]: Turn off link during shutdown\n\nMinor change in shutdown logic to effect a link down.\n\nUpdate version to 1.4.43.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "745720e58303f940e12944bf7fab52bc9ce48bda",
      "tree": "889ec0c1c5f93a233894a90a8062659e0e7a4835",
      "parents": [
        "656d98b09d57d4e1185c5d2436a42600d48fbcb5"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Jun 29 12:37:41 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:21 2006 -0700"
      },
      "message": "[BNX2]: Use dev_kfree_skb() instead of the _irq version\n\nChange all dev_kfree_skb_irq() and dev_kfree_skb_any() to\ndev_kfree_skb().  These calls are never used in irq context.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "656d98b09d57d4e1185c5d2436a42600d48fbcb5",
      "tree": "42c8795ea142e6c0a002bcdb26d255e2b8693e4c",
      "parents": [
        "d17f086550a6fdb13fe82371d60ebf80904c6f96"
      ],
      "author": {
        "name": "Roman Kagan",
        "email": "rkagan@mail.ru",
        "time": "Thu Jun 29 12:36:34 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:19 2006 -0700"
      },
      "message": "[ATM]: basic sysfs support for ATM devices\n\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d17f086550a6fdb13fe82371d60ebf80904c6f96",
      "tree": "161770a40009ca207942406d0b04979e73a26529",
      "parents": [
        "249c14b55c8576ad8c6ec23c7c1b3b2219b33e54"
      ],
      "author": {
        "name": "Chas Williams",
        "email": "chas@cmf.nrl.navy.mil",
        "time": "Thu Jun 29 12:35:49 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:17 2006 -0700"
      },
      "message": "[ATM]: [suni] change suni_init to __devinit\n\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "249c14b55c8576ad8c6ec23c7c1b3b2219b33e54",
      "tree": "2c5a38cfe4410e2a19b6c6e5a42169ac687a5728",
      "parents": [
        "b47eb0eb9bb5fcee6394f0d9bde0b471f7329841"
      ],
      "author": {
        "name": "Chas Williams",
        "email": "chas@cmf.nrl.navy.mil",
        "time": "Thu Jun 29 12:35:32 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:14 2006 -0700"
      },
      "message": "[ATM]: [iphase] should be __devinit not __init\n\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b47eb0eb9bb5fcee6394f0d9bde0b471f7329841",
      "tree": "6fc0514d48c77de6848570c9420609ab011c941c",
      "parents": [
        "b11d6213529b33d81c21eeba97343e3b714e62e7"
      ],
      "author": {
        "name": "Chas Williams",
        "email": "chas@cmf.nrl.navy.mil",
        "time": "Thu Jun 29 12:35:02 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:12 2006 -0700"
      },
      "message": "[ATM]: [idt77105] should be __devinit not __init\n\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b11d6213529b33d81c21eeba97343e3b714e62e7",
      "tree": "bcc6fe28d2e5967610b2a596f1c87cc8485cf71c",
      "parents": [
        "b0da8537037f337103348f239ad901477e907aa8"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Jun 29 12:31:21 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:10 2006 -0700"
      },
      "message": "[BNX2]: Add NETIF_F_TSO_ECN\n\nAdd NETIF_F_TSO_ECN feature for all bnx2 hardware.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0da8537037f337103348f239ad901477e907aa8",
      "tree": "498a5dceb0d536fa54dcf4acc26ae1d1b43dfaf1",
      "parents": [
        "877ce7c1b3afd69a9b1caeb1b9964c992641f52a"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Thu Jun 29 12:30:00 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:08 2006 -0700"
      },
      "message": "[NET]: Add ECN support for TSO\n\nIn the current TSO implementation, NETIF_F_TSO and ECN cannot be\nturned on together in a TCP connection.  The problem is that most\nhardware that supports TSO does not handle CWR correctly if it is set\nin the TSO packet.  Correct handling requires CWR to be set in the\nfirst packet only if it is set in the TSO header.\n\nThis patch adds the ability to turn on NETIF_F_TSO and ECN using\nGSO if necessary to handle TSO packets with CWR set.  Hardware\nthat handles CWR correctly can turn on NETIF_F_TSO_ECN in the dev-\u003e\nfeatures flag.\n\nAll TSO packets with CWR set will have the SKB_GSO_TCPV4_ECN set.  If\nthe output device does not have the NETIF_F_TSO_ECN feature set, GSO\nwill split the packet up correctly with CWR only set in the first\nsegment.\n\nWith help from Herbert Xu \u003cherbert@gondor.apana.org.au\u003e.\n\nSince ECN can always be enabled with TSO, the SOCK_NO_LARGESEND sock\nflag is completely removed.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "877ce7c1b3afd69a9b1caeb1b9964c992641f52a",
      "tree": "740c6c0d4a2858af53c09c4635cadf06833536c1",
      "parents": [
        "d6b4991ad5d1a9840e12db507be1a6593def01fe"
      ],
      "author": {
        "name": "Catherine Zhang",
        "email": "cxzhang@watson.ibm.com",
        "time": "Thu Jun 29 12:27:47 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:06 2006 -0700"
      },
      "message": "[AF_UNIX]: Datagram getpeersec\n\nThis patch implements an API whereby an application can determine the\nlabel of its peer\u0027s Unix datagram sockets via the auxiliary data mechanism of\nrecvmsg.\n\nPatch purpose:\n\nThis patch enables a security-aware application to retrieve the\nsecurity context of the peer of a Unix datagram socket.  The application\ncan then use this security context to determine the security context for\nprocessing on behalf of the peer who sent the packet.\n\nPatch design and implementation:\n\nThe design and implementation is very similar to the UDP case for INET\nsockets.  Basically we build upon the existing Unix domain socket API for\nretrieving user credentials.  Linux offers the API for obtaining user\ncredentials via ancillary messages (i.e., out of band/control messages\nthat are bundled together with a normal message).  To retrieve the security\ncontext, the application first indicates to the kernel such desire by\nsetting the SO_PASSSEC option via getsockopt.  Then the application\nretrieves the security context using the auxiliary data mechanism.\n\nAn example server application for Unix datagram socket should look like this:\n\ntoggle \u003d 1;\ntoggle_len \u003d sizeof(toggle);\n\nsetsockopt(sockfd, SOL_SOCKET, SO_PASSSEC, \u0026toggle, \u0026toggle_len);\nrecvmsg(sockfd, \u0026msg_hdr, 0);\nif (msg_hdr.msg_controllen \u003e sizeof(struct cmsghdr)) {\n    cmsg_hdr \u003d CMSG_FIRSTHDR(\u0026msg_hdr);\n    if (cmsg_hdr-\u003ecmsg_len \u003c\u003d CMSG_LEN(sizeof(scontext)) \u0026\u0026\n        cmsg_hdr-\u003ecmsg_level \u003d\u003d SOL_SOCKET \u0026\u0026\n        cmsg_hdr-\u003ecmsg_type \u003d\u003d SCM_SECURITY) {\n        memcpy(\u0026scontext, CMSG_DATA(cmsg_hdr), sizeof(scontext));\n    }\n}\n\nsock_setsockopt is enhanced with a new socket option SOCK_PASSSEC to allow\na server socket to receive security context of the peer.\n\nTesting:\n\nWe have tested the patch by setting up Unix datagram client and server\napplications.  We verified that the server can retrieve the security context\nusing the auxiliary data mechanism of recvmsg.\n\nSigned-off-by: Catherine Zhang \u003ccxzhang@watson.ibm.com\u003e\nAcked-by: Acked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d6b4991ad5d1a9840e12db507be1a6593def01fe",
      "tree": "c2485275dae3e4cff7b86cffb91bfc8a7bb8bacd",
      "parents": [
        "4ee303dfeac6451b402e3d8512723d3a0f861857"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jun 29 12:25:53 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:04 2006 -0700"
      },
      "message": "[NET]: Fix logical error in skb_gso_ok\n\nThe test in skb_gso_ok is backwards.  Noticed by Michael Chan\n\u003cmchan@broadcom.com\u003e.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4ee303dfeac6451b402e3d8512723d3a0f861857",
      "tree": "b2a542ae60c29b58a4d9ef1dbd7d3d19af67554e",
      "parents": [
        "3d3a85337937bb5e3db676eeb4f3bf7f02533b44"
      ],
      "author": {
        "name": "Shuya MAEDA",
        "email": "maeda-sxb@necst.nec.co.jp",
        "time": "Wed Jun 28 01:40:35 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:01 2006 -0700"
      },
      "message": "[PKT_SCHED]: PSCHED_TADD() and PSCHED_TADD2() can result,tv_usec \u003e\u003d 1000000\n\nSigned-off-by: Shuya MAEDA \u003cmaeda-sxb@necst.nec.co.jp\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3d3a85337937bb5e3db676eeb4f3bf7f02533b44",
      "tree": "76cbcd89528bbefa0d586be55b15aeed322b8738",
      "parents": [
        "47da8ee681d04e68ca1b1812c10e28162150d453"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Jun 27 13:33:10 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:59 2006 -0700"
      },
      "message": "[NET]: Make illegal_highdma more anal\n\nRather than having illegal_highdma as a macro when HIGHMEM is off, we\ncan turn it into an inline function that returns zero.  This will catch\ncallers that give it bad arguments.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "47da8ee681d04e68ca1b1812c10e28162150d453",
      "tree": "05b9abc2438abe0e9ecef1b6632a9b114e6cb55b",
      "parents": [
        "c7bdb545d23026b18be53289fd866d1ac07f5f8c"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Tue Jun 27 13:29:00 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:57 2006 -0700"
      },
      "message": "[TCP]: Export accept queue len of a TCP listening socket via rx_queue\n\nWhile debugging a TCP server hang issue, we noticed that currently there is\nno way for a user to get the acceptq backlog value for a TCP listen socket.\n\nAll the standard networking utilities that display socket info like netstat,\nss and /proc/net/tcp have 2 fields called rx_queue and tx_queue. These\nfields do not mean much for listening sockets. This patch uses one of these\nunused fields(rx_queue) to export the accept queue len for listening sockets.\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c7bdb545d23026b18be53289fd866d1ac07f5f8c",
      "tree": "6d9a218871d88f7579dd53f14692df2529b6e712",
      "parents": [
        "576a30eb6453439b3c37ba24455ac7090c247b5a"
      ],
      "author": {
        "name": "Darrel Goeddel",
        "email": "dgoeddel@trustedcs.com",
        "time": "Tue Jun 27 13:26:11 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:55 2006 -0700"
      },
      "message": "[NETLINK]: Encapsulate eff_cap usage within security framework.\n\nThis patch encapsulates the usage of eff_cap (in netlink_skb_params) within\nthe security framework by extending security_netlink_recv to include a required\ncapability parameter and converting all direct usage of eff_caps outside\nof the lsm modules to use the interface.  It also updates the SELinux\nimplementation of the security_netlink_send and security_netlink_recv\nhooks to take advantage of the sid in the netlink_skb_params struct.\nThis also enables SELinux to perform auditing of netlink capability checks.\nPlease apply, for 2.6.18 if possible.\n\nSigned-off-by: Darrel Goeddel \u003cdgoeddel@trustedcs.com\u003e\nSigned-off-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nAcked-by:  James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "576a30eb6453439b3c37ba24455ac7090c247b5a",
      "tree": "e0c427a61e3de5c93e797c09903d910f6f060e64",
      "parents": [
        "68c1692e3ea5d79f24cb5cc566c4a73939d13d25"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Jun 27 13:22:38 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:53 2006 -0700"
      },
      "message": "[NET]: Added GSO header verification\n\nWhen GSO packets come from an untrusted source (e.g., a Xen guest domain),\nwe need to verify the header integrity before passing it to the hardware.\n\nSince the first step in GSO is to verify the header, we can reuse that\ncode by adding a new bit to gso_type: SKB_GSO_DODGY.  Packets with this\nbit set can only be fed directly to devices with the corresponding bit\nNETIF_F_GSO_ROBUST.  If the device doesn\u0027t have that bit, then the skb\nis fed to the GSO engine which will allow the packet to be sent to the\nhardware if it passes the header check.\n\nThis patch changes the sg flag to a full features flag.  The same method\ncan be used to implement TSO ECN support.  We simply have to mark packets\nwith CWR set with SKB_GSO_ECN so that only hardware with a corresponding\nNETIF_F_TSO_ECN can accept them.  The GSO engine can either fully segment\nthe packet, or segment the first MTU and pass the rest to the hardware for\nfurther segmentation.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68c1692e3ea5d79f24cb5cc566c4a73939d13d25",
      "tree": "35a32e4bb0243013dc5a7df1f52b028ad755d434",
      "parents": [
        "ef47c6a7b8e36e3b160433673b1b68db799aabcd"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 27 03:02:14 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:50 2006 -0700"
      },
      "message": "[NETFILTER]: statistic match: add missing Kconfig help text\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef47c6a7b8e36e3b160433673b1b68db799aabcd",
      "tree": "e79198a36e216e29bb31588b0a9d69d476399f5c",
      "parents": [
        "1c7e47726a88303e4cfa2785f0a357bf1ceecee1"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 27 03:01:48 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:48 2006 -0700"
      },
      "message": "[NETFILTER]: ip_queue/nfnetlink_queue: drop bridge port references when dev disappears\n\nWhen a device that is acting as a bridge port is unregistered, the\nip_queue/nfnetlink_queue notifier doesn\u0027t check if its one of\nphysindev/physoutdev and doesn\u0027t release the references if it is.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c7e47726a88303e4cfa2785f0a357bf1ceecee1",
      "tree": "bc6cb39035e96cfb833393b1322246460232c6a9",
      "parents": [
        "9abdcf6b6cf387035d934c77bf9ebe5e747166f9"
      ],
      "author": {
        "name": "Jorge Matias",
        "email": "jorge.matias@motorola.com",
        "time": "Tue Jun 27 03:01:25 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:46 2006 -0700"
      },
      "message": "[NETFILTER]: xt_sctp: fix --chunk-types matching\n\nxt_sctp uses an incorrect header offset when --chunk-types is used.\n\nSigned-off-by: Jorge Matias \u003cjorge.matias@motorola.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9abdcf6b6cf387035d934c77bf9ebe5e747166f9",
      "tree": "2ea946e64ed3b80d872376856b3873a43ebce82f",
      "parents": [
        "40a839fdbd5d76cebb2a61980bc1fc7ecd784be2"
      ],
      "author": {
        "name": "Yuri Gushin",
        "email": "yuri@ecl-labs.org",
        "time": "Tue Jun 27 03:01:03 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:44 2006 -0700"
      },
      "message": "[NETFILTER]: xt_tcpudp: fix double unregistration in error path\n\n\"xt_unregister_match(AF_INET, \u0026tcp_matchstruct)\" is called twice,\nleaving \"udp_matchstruct\" registered, in case of a failure in the\nregistration of the udp6 structure.\n\nSigned-off-by: Yuri Gushin \u003cyuri@ecl-labs.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "40a839fdbd5d76cebb2a61980bc1fc7ecd784be2",
      "tree": "205b09047d3168c61fdad234d30fa0f3d84e82ab",
      "parents": [
        "da298d3a4f01dbc10c54da75d6b5717a99fb9cbc"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Tue Jun 27 03:00:35 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:42 2006 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: Fix undefined references to local_bh_*\n\n  CC      net/netfilter/nf_conntrack_proto_sctp.o\nnet/netfilter/nf_conntrack_proto_sctp.c: In function `sctp_print_conntrack\u0027:\nnet/netfilter/nf_conntrack_proto_sctp.c:206: warning: implicit declaration of function `local_bh_disable\u0027\nnet/netfilter/nf_conntrack_proto_sctp.c:208: warning: implicit declaration of function `local_bh_enable\u0027\n  CC      net/netfilter/nf_conntrack_netlink.o\nnet/netfilter/nf_conntrack_netlink.c: In function `ctnetlink_dump_table\u0027:\nnet/netfilter/nf_conntrack_netlink.c:429: warning: implicit declaration of function `local_bh_disable\u0027\nnet/netfilter/nf_conntrack_netlink.c:452: warning: implicit declaration of function `local_bh_enable\u0027\n\nSpotted by Toralf Förster\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da298d3a4f01dbc10c54da75d6b5717a99fb9cbc",
      "tree": "d6cbeec6c5252b17adefcdd401d4397301bfcd1f",
      "parents": [
        "bf7e8511088963078484132636839b59e25cf14f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 27 03:00:09 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:40 2006 -0700"
      },
      "message": "[NETFILTER]: x_tables: fix xt_register_table error propagation\n\nWhen xt_register_table fails the error is not properly propagated back.\nBased on patch by Lepton Wu \u003cytht.net@gmail.com\u003e.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6002e45045a190a112bc3bc2134d0ff4fac7ced7",
      "tree": "35f07eecadfcf27e5efdcfbf50b9dc2aa46d81a3",
      "parents": [
        "675f740e557bc752cdcdb0739d80666b488abb58"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:20:12 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:38:05 2006 -0700"
      },
      "message": "[SUNHME]: Mark SBUS probing routines as __devinit.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "675f740e557bc752cdcdb0739d80666b488abb58",
      "tree": "51bc4681e5e182637f9086e033659ab38a3207de",
      "parents": [
        "f57caaefacc2ffa7ace11a325c663e569e2b4164"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 15:48:59 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:38:03 2006 -0700"
      },
      "message": "[SPARC64]: Print symbol name of regs-\u003etpc on kernel unaligned accesses.\n\nThis makes things easier to track down, especially in modules.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f57caaefacc2ffa7ace11a325c663e569e2b4164",
      "tree": "a3c00352d660d7bad6aad6415d93b4a8df1d508b",
      "parents": [
        "ff0d2fc6a60624df46055f47ea7261c8198c7862"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:42:29 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:38:01 2006 -0700"
      },
      "message": "[SERIO] i8042-sparcio.h: Convert to of_driver framework.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff0d2fc6a60624df46055f47ea7261c8198c7862",
      "tree": "385ff0b9b3dde2b12b94e4143808ae9a6f8b5239",
      "parents": [
        "abbce6e2fd156cbcab2fc1247c7dec8a0c68e7e3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:28:05 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:59 2006 -0700"
      },
      "message": "[SPARC64]: time: Kill unnecessary asm/{fhc,sbus,ebus,isa}.h includes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "abbce6e2fd156cbcab2fc1247c7dec8a0c68e7e3",
      "tree": "62619be12e2db209db0c5d232dd56414c2bb5976",
      "parents": [
        "f2ad06a20133125e5b6ab6497c6d90e63ded4761"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:22:46 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:57 2006 -0700"
      },
      "message": "[SPARC64] power: Convert to of_driver.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2ad06a20133125e5b6ab6497c6d90e63ded4761",
      "tree": "53f7ba932e0f268928462dda5e8b591a0e1a4eef",
      "parents": [
        "89d1d0ab4d99e1e0fe193352e1dd857787a0bfc0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:22:22 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:55 2006 -0700"
      },
      "message": "[SPARC64] auxio: Remove asm/{sbus,ebus}.h includes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89d1d0ab4d99e1e0fe193352e1dd857787a0bfc0",
      "tree": "6d2188b9b74a0d2814025c8d9d46fadf52b5c05e",
      "parents": [
        "c4d37215a824820e1b614ff9f6969af72cd953f4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:18:50 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:53 2006 -0700"
      },
      "message": "[SERIAL] sunsab: Fix section mis-match errors.\n\nsunsab_init_one() needs to be __devinit, not __init\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4d37215a824820e1b614ff9f6969af72cd953f4",
      "tree": "d972077f4961e53ff51eb125e115d46e414a9d0e",
      "parents": [
        "9efc3715f7b13127fd202108304352e1be76e077"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:17:47 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:50 2006 -0700"
      },
      "message": "[SERIAL] sunsab: Convert to of_driver framework.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9efc3715f7b13127fd202108304352e1be76e077",
      "tree": "eba7251faaf08e76f978c9716c2ea86bfd1938e3",
      "parents": [
        "1708d242d222e751a0922e3c56ef857cf60bbedd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:14:17 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:48 2006 -0700"
      },
      "message": "[SERIAL] sun{su,zilog}: Add missing MODULE_*() niceties.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1708d242d222e751a0922e3c56ef857cf60bbedd",
      "tree": "94d6c849e3e0edf686db1f6fae82cf889acc9e9e",
      "parents": [
        "4fa97dcf9d48b02934c60a48873199850351e760"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:14:03 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:46 2006 -0700"
      },
      "message": "[SERIAL] sunsu: Convert to of_driver framework.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4fa97dcf9d48b02934c60a48873199850351e760",
      "tree": "eac7bda737afe4d723b12d8ae67dfe35d14098a7",
      "parents": [
        "3676463178401293d625a102a00da0473fa33a1b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:13:40 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:44 2006 -0700"
      },
      "message": "[SERIAL] sunzilog: Fix bugs in device deregristration.\n\n1) Need to unregister 2 ports per of_device.\n2) Need to of_iounmap() 1 mapping per of_device.\n3) Need to free up the IRQ only after all devices\n   have been unregistered.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3676463178401293d625a102a00da0473fa33a1b",
      "tree": "5c46e9e73e068c1303b297078f9b5a1f20857bd8",
      "parents": [
        "8f96cd1a69d4c43e3473406a1fdf15cd9f1de5e5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:13:17 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:42 2006 -0700"
      },
      "message": "[SERIAL] sunzilog: Convert to of_driver.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f96cd1a69d4c43e3473406a1fdf15cd9f1de5e5",
      "tree": "34e43df9f2687720997e43a6c944c73ef61414db",
      "parents": [
        "2b1e59787198e75fb2ffb3bb4fb247da1c55ac12"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:08:02 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:40 2006 -0700"
      },
      "message": "[SPARC]: sparc32 side of of_device layer IRQ resolution.\n\nHappily, life is much simpler on 32-bit sparc systems.\nThe \"intr\" property, preferred over the \"interrupts\"\nproperty is used-as.  Some minor translations of this\nvalue happen on sun4d systems.\n\nThe stage is now set to rewrite the sparc serial driver\nprobing to use the of_driver framework, and then to convert\nall SBUS, EBUS, and ISA drivers in-kind so that we can nuke\nall those special bus frameworks.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2b1e59787198e75fb2ffb3bb4fb247da1c55ac12",
      "tree": "96d74048849b310135e0c79f663b16c52186caa5",
      "parents": [
        "c3a8b85f5ac2c21f4ef75e87bfe55ee7a753ffcf"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 15:07:37 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:38 2006 -0700"
      },
      "message": "[SPARC64]: of_device layer IRQ resolution\n\nDo IRQ determination generically by parsing the PROM properties,\nand using IRQ controller drivers for final resolution.\n\nOne immediate positive effect is that all of the IRQ frobbing\nin the EBUS, ISA, and PCI controller layers has been eliminated.\nWe just look up the of_device and use the properly computed\nvalue.\n\nThe PCI controller irq_build() routines are gone and no longer\nused.  Unfortunately sbus_build_irq() has to remain as there is\na direct reference to this in the sunzilog driver.  That can be\nkilled off once the sparc32 side of this is written and the\nsunzilog driver is transformed into an \"of\" bus driver.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c3a8b85f5ac2c21f4ef75e87bfe55ee7a753ffcf",
      "tree": "c12123873c1f1f7f0e9413fe89720914be67158f",
      "parents": [
        "915214853d7681416d6bdd1591787cdbded459e7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:43:37 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:35 2006 -0700"
      },
      "message": "[SPARC64]: Fix typo in clock_probe().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "915214853d7681416d6bdd1591787cdbded459e7",
      "tree": "520008a7aa5afb36c5c8c48641a3fc76114c18f9",
      "parents": [
        "00cde6748255a84beecfdea4caeaf7c9cd05a527"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:39:40 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:33 2006 -0700"
      },
      "message": "[SPARC64] clock: Only probe central fhc clock on Enterprise boxes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00cde6748255a84beecfdea4caeaf7c9cd05a527",
      "tree": "aa169a0cff50fed0e51eab05952766a6ea16a5fb",
      "parents": [
        "d44b3be88ed58bb1bbbf7d70c533598b3dc3d870"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:39:11 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:31 2006 -0700"
      },
      "message": "[SPARC64] power: Do not pass SA_SHIRQ to request_irq().\n\nThis needs to be a unique interrupt source because we do\nnot have a register or similar to poll to make sure the\nIRQ is really for us.  We do not have any dev_id to pass\nin anyways, and the generic IRQ layer is now enforcing\nthat when SA_SHIRQ is specified, dev_id must be non-NULL.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d44b3be88ed58bb1bbbf7d70c533598b3dc3d870",
      "tree": "6c6af7471cebccd2ac6269a2090df9f8f75bd4d7",
      "parents": [
        "24ac26d425c96659b12cf16de7cbfe3bcbd73f05"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:38:51 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:29 2006 -0700"
      },
      "message": "[SPARC64]: Fix typo in isa_dev_get_irq_using_imap().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24ac26d425c96659b12cf16de7cbfe3bcbd73f05",
      "tree": "6e2cbfad38d3f167dfa5b53b75f9e0ba1fb3ae83",
      "parents": [
        "946ea09962a56674fe564b41c3007933bb41a068"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:38:21 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:27 2006 -0700"
      },
      "message": "[SPARC64]: Let irq_install_pre_handler() get called multiple times.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "946ea09962a56674fe564b41c3007933bb41a068",
      "tree": "8843085316abcc9ea7503715194f7a3c7bfd0671",
      "parents": [
        "ee5caf0ee19f65a5e29bf20a0dffd8be8b4827fd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:37:09 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:25 2006 -0700"
      },
      "message": "[SPARC]: Kill interrupt stuff and linux_phandle from device_node.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee5caf0ee19f65a5e29bf20a0dffd8be8b4827fd",
      "tree": "68eaa50b1bcc4eda6200d4121248354766e77a1d",
      "parents": [
        "36a59bd89c50c1090c7438db89f751720974a6fc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:36:52 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:23 2006 -0700"
      },
      "message": "[SPARC]: Convert clock drivers to of_driver framework.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36a59bd89c50c1090c7438db89f751720974a6fc",
      "tree": "577d1c1ae0e494e1c21d495e2dcdf59ffd8bcdeb",
      "parents": [
        "50312ce9dd794eef3df9e64194ba95ca730d82c8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:36:35 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:21 2006 -0700"
      },
      "message": "[SPARC64] auxio: Convert to pure of_device driver.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "50312ce9dd794eef3df9e64194ba95ca730d82c8",
      "tree": "15703fd98b8b757197d43e11f8de791bbc3b8f00",
      "parents": [
        "3ca9fab410fbef6fc3a13284f5c26faccade21d1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:35:52 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:18 2006 -0700"
      },
      "message": "[SPARC]: Convert all FB SBUS drivers to of_driver framework.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ca9fab410fbef6fc3a13284f5c26faccade21d1",
      "tree": "91b4c38077db397bec0ff85f1c89c9f869b3970f",
      "parents": [
        "95714e12dfb4794ee120f058fdf763e61baaad82"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:35:33 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:16 2006 -0700"
      },
      "message": "[SPARC]: Add of_io{remap,unmap}().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95714e12dfb4794ee120f058fdf763e61baaad82",
      "tree": "d092f799f94cba809f55069dd1236feff71550a1",
      "parents": [
        "cf44bbc26cf1361b692ab68c884f6a0df7da2fdb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:35:14 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:14 2006 -0700"
      },
      "message": "[SPARC]: Encode I/O space into resource flags on sparc32.\n\nOn sparc64 we don\u0027t need to do this because the resource\nvalues are large enough to encode the full physical address.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf44bbc26cf1361b692ab68c884f6a0df7da2fdb",
      "tree": "e16c980a25df8a31445a005d75da2c37f30a7b67",
      "parents": [
        "3ae9a3489a4e2ba665a344a9250c2af05b7b0c59"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:34:50 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:12 2006 -0700"
      },
      "message": "[SPARC]: Beginnings of generic of_device framework.\n\nThe idea is to fully construct the device register and\ninterrupt values into these of_device objects, and convert\nall of SBUS, EBUS, ISA drivers to use this new stuff.\n\nMuch ideas and code taken from Ben H.\u0027s powerpc work.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ae9a3489a4e2ba665a344a9250c2af05b7b0c59",
      "tree": "7b78ceaafb19a63e195568642ede37670d88388b",
      "parents": [
        "286bbe87c143ca7ecee5bb499cd78048c5a05d49"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:34:12 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:10 2006 -0700"
      },
      "message": "[SPARC]: Add of_n_{addr,size}_cells().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "286bbe87c143ca7ecee5bb499cd78048c5a05d49",
      "tree": "0bdb16fafa3012160cbe27bd6fc5957f658f485b",
      "parents": [
        "bf7e8511088963078484132636839b59e25cf14f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 29 14:27:13 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:37:08 2006 -0700"
      },
      "message": "[SPARC64]: Kill starfire_cookie from SBUS/PCI.\n\nTotally unused.\n\nWe need to traverse the list of global IRQ translaters,\nso storing it in the per-bus structures was useless.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "184d7d20d352c7374f70ebca7468dc8cd5cc618a",
      "tree": "bcea4e8f5eba60f03ff0c7980b4e13b4b579bf2b",
      "parents": [
        "784270435b001164054e803421a624ef1098519d"
      ],
      "author": {
        "name": "Florin Malita",
        "email": "fmalita@gmail.com",
        "time": "Sat Jun 03 19:30:10 2006 -0400"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Jun 29 16:13:35 2006 -0700"
      },
      "message": "ocfs2: remove redundant NULL checks in ocfs2_direct_IO_get_blocks()\n\nSigned-off-by: Florin Malita \u003cfmalita@gmail.com\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "784270435b001164054e803421a624ef1098519d",
      "tree": "f26fec7ca476439f770fd24e5c7ec11039302b37",
      "parents": [
        "a75a6e4c3ada10b15e26f6d12f72c03efde266e0"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu May 04 12:03:26 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Jun 29 16:10:13 2006 -0700"
      },
      "message": "ocfs2: clean up some osb fields\n\nGet rid of osb-\u003euuid, osb-\u003eproc_sub_dir, and osb-\u003eosb_id. Those fields were\nunused, or could easily be removed. As a result, we also no longer need\nMAX_OSB_ID or ocfs2_globals_lock.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "a75a6e4c3ada10b15e26f6d12f72c03efde266e0",
      "tree": "408ffc1590df90c04e98cae96affe426b6521d31",
      "parents": [
        "e7607ab3daeeaea50b3b5aebe8dfa29a1dfb8311"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu May 04 11:49:22 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Jun 29 16:06:43 2006 -0700"
      },
      "message": "ocfs2: fix init of uuid_net_key\n\nocfs2_initialize_super() should be copying from the beginning of the uuid.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    }
  ],
  "next": "e7607ab3daeeaea50b3b5aebe8dfa29a1dfb8311"
}
