)]}'
{
  "log": [
    {
      "commit": "d78ca3cd733d8a2c3dcd88471beb1a15d973eed8",
      "tree": "a27ccf86f5f7df3cc987d0203ed0bff2db46db57",
      "parents": [
        "002345925e6c45861f60db6f4fc6236713fd8847"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "kees.cook@canonical.com",
        "time": "Wed Feb 03 15:37:13 2010 -0800"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Feb 04 14:20:41 2010 +1100"
      },
      "message": "syslog: use defined constants instead of raw numbers\n\nRight now the syslog \"type\" action are just raw numbers which makes\nthe source difficult to follow.  This patch replaces the raw numbers\nwith defined constants for some level of sanity.\n\nSigned-off-by: Kees Cook \u003ckees.cook@canonical.com\u003e\nAcked-by: John Johansen \u003cjohn.johansen@canonical.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "002345925e6c45861f60db6f4fc6236713fd8847",
      "tree": "d7849eafe1755116597166bbebf43e2bee86cb76",
      "parents": [
        "0719aaf5ead7555b7b7a4a080ebf2826a871384e"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "kees.cook@canonical.com",
        "time": "Wed Feb 03 15:36:43 2010 -0800"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Feb 04 14:20:12 2010 +1100"
      },
      "message": "syslog: distinguish between /proc/kmsg and syscalls\n\nThis allows the LSM to distinguish between syslog functions originating\nfrom /proc/kmsg access and direct syscalls.  By default, the commoncaps\nwill now no longer require CAP_SYS_ADMIN to read an opened /proc/kmsg\nfile descriptor.  For example the kernel syslog reader can now drop\nprivileges after opening /proc/kmsg, instead of staying privileged with\nCAP_SYS_ADMIN.  MAC systems that implement security_syslog have unchanged\nbehavior.\n\nSigned-off-by: Kees Cook \u003ckees.cook@canonical.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: John Johansen \u003cjohn.johansen@canonical.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "0719aaf5ead7555b7b7a4a080ebf2826a871384e",
      "tree": "19c0b16b1013d84a8b8092737d38e60f3dd7e939",
      "parents": [
        "42596eafdd75257a640f64701b9b07090bcd84b0"
      ],
      "author": {
        "name": "Guido Trentalancia",
        "email": "guido@trentalancia.com",
        "time": "Wed Feb 03 16:40:20 2010 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Feb 04 09:06:36 2010 +1100"
      },
      "message": "selinux: allow MLS-\u003enon-MLS and vice versa upon policy reload\n\nAllow runtime switching between different policy types (e.g. from a MLS/MCS\npolicy to a non-MLS/non-MCS policy or viceversa).\n\nSigned-off-by: Guido Trentalancia \u003cguido@trentalancia.com\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "42596eafdd75257a640f64701b9b07090bcd84b0",
      "tree": "d5c4eb801d70ddd00a7a03814833d99cabf38962",
      "parents": [
        "b6cac5a30b325e14cda425670bb3568d3cad0aa8"
      ],
      "author": {
        "name": "Guido Trentalancia",
        "email": "guido@trentalancia.com",
        "time": "Wed Feb 03 17:06:01 2010 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Feb 04 08:48:17 2010 +1100"
      },
      "message": "selinux: load the initial SIDs upon every policy load\n\nAlways load the initial SIDs, even in the case of a policy\nreload and not just at the initial policy load. This comes\nparticularly handy after the introduction of a recent\npatch for enabling runtime switching between different\npolicy types, although this patch is in theory independent\nfrom that feature.\n\nSigned-off-by: Guido Trentalancia \u003cguido@trentalancia.com\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "b6cac5a30b325e14cda425670bb3568d3cad0aa8",
      "tree": "276a3a2a985c862ac9439cb2f8facabb7d1f1944",
      "parents": [
        "8e2d39a1665e680c095545993aac2fcac6916eb9"
      ],
      "author": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Tue Feb 02 11:31:51 2010 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Feb 03 08:49:10 2010 +1100"
      },
      "message": "selinux: Only audit permissions specified in policy\n\nOnly audit the permissions specified by the policy rules.\n\nBefore:\ntype\u003dAVC msg\u003daudit(01/28/2010 14:30:46.690:3250) : avc:  denied  { read\nappend } for  pid\u003d14092 comm\u003dfoo name\u003dtest_file dev\u003ddm-1 ino\u003d132932\nscontext\u003dunconfined_u:unconfined_r:load_policy_t:s0-s0:c0.c1023\ntcontext\u003dunconfined_u:object_r:rpm_tmp_t:s0 tclass\u003dfile\n\nAfter:\ntype\u003dAVC msg\u003daudit(01/28/2010 14:52:37.448:26) : avc:  denied\n{ append } for  pid\u003d1917 comm\u003dfoo name\u003dtest_file dev\u003ddm-1 ino\u003d132932\nscontext\u003dunconfined_u:unconfined_r:load_policy_t:s0-s0:c0.c1023\ntcontext\u003dunconfined_u:object_r:rpm_tmp_t:s0 tclass\u003dfile\n\nReference:\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d558499\n\nReported-by: Tom London \u003cselinux@gmail.com\u003e\nSigned-off-by: Stephen D. Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "8e2d39a1665e680c095545993aac2fcac6916eb9",
      "tree": "41687f7e7f4fb37416b7948b6d2e09d0a383459b",
      "parents": [
        "7d52a155e38d5a165759dbbee656455861bf7801"
      ],
      "author": {
        "name": "Tetsuo Handa",
        "email": "penguin-kernel@I-love.SAKURA.ne.jp",
        "time": "Tue Jan 26 20:45:27 2010 +0900"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Jan 27 08:20:48 2010 +1100"
      },
      "message": "TOMOYO: Remove usage counter for temporary memory.\n\nTOMOYO was using own memory usage counter for detecting memory leak.\nBut as kernel 2.6.31 introduced memory leak detection mechanism\n( CONFIG_DEBUG_KMEMLEAK ), we no longer need to have own counter.\n\nWe remove usage counter for memory used for permission checks, but we keep\nusage counter for memory used for policy so that we can apply quota.\n\nSigned-off-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "7d52a155e38d5a165759dbbee656455861bf7801",
      "tree": "7b071cde283e98465744b5abb2c6140b9b6afcda",
      "parents": [
        "2f3e82d694d3d7a2db019db1bb63385fbc1066f3"
      ],
      "author": {
        "name": "KaiGai Kohei",
        "email": "kaigai@ak.jp.nec.com",
        "time": "Thu Jan 21 15:00:15 2010 +0900"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Jan 25 08:31:38 2010 +1100"
      },
      "message": "selinux: remove dead code in type_attribute_bounds_av()\n\nThis patch removes dead code in type_attribute_bounds_av().\n\nDue to the historical reason, the type boundary feature is delivered\nfrom hierarchical types in libsepol, it has supported boundary features\nboth of subject type (domain; in most cases) and target type.\n\nHowever, we don\u0027t have any actual use cases in bounded target types,\nand it tended to make conceptual confusion.\nSo, this patch removes the dead code to apply boundary checks on the\ntarget types. I makes clear the TYPEBOUNDS restricts privileges of\na certain domain bounded to any other domain.\n\nSigned-off-by: KaiGai Kohei \u003ckaigai@ak.jp.nec.com\u003e\nAcked-by:  Stephen Smalley \u003csds@tycho.nsa.gov\u003e\n\n--\n security/selinux/ss/services.c |   43 +++------------------------------------\n 1 files changed, 4 insertions(+), 39 deletions(-)\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "2f3e82d694d3d7a2db019db1bb63385fbc1066f3",
      "tree": "9d99a883eb2ab097a3ff1ee4e1c9bf2fa851d832",
      "parents": [
        "2457552d1e6f3183cd93f81c49a8da5fe8bb0e42"
      ],
      "author": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Thu Jan 07 15:55:16 2010 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Jan 25 08:29:05 2010 +1100"
      },
      "message": "selinux: convert range transition list to a hashtab\n\nPer https://bugzilla.redhat.com/show_bug.cgi?id\u003d548145\nthere are sufficient range transition rules in modern (Fedora) policy to\nmake mls_compute_sid a significant factor on the shmem file setup path\ndue to the length of the range_tr list.  Replace the simple range_tr\nlist with a hashtab inside the security server to help mitigate this\nproblem.\n\nSigned-off-by:  Stephen D. Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "2457552d1e6f3183cd93f81c49a8da5fe8bb0e42",
      "tree": "7ca46caa910012d75617700e4083b3657053cb31",
      "parents": [
        "19439d05b88dafc4e55d9ffce84ccc27cf8b2bcc",
        "6ccf80eb15ccaca4d3f1ab5162b9ded5eecd9971"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Jan 18 09:56:22 2010 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Jan 18 09:56:22 2010 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n"
    },
    {
      "commit": "19439d05b88dafc4e55d9ffce84ccc27cf8b2bcc",
      "tree": "e529e1bbba49f30684c3b88a67df1d62ba3e11b1",
      "parents": [
        "8d9525048c74786205b99f3fcd05a839721edfb7"
      ],
      "author": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Thu Jan 14 17:28:10 2010 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Jan 18 09:54:26 2010 +1100"
      },
      "message": "selinux: change the handling of unknown classes\n\nIf allow_unknown\u003d\u003ddeny, SELinux treats an undefined kernel security\nclass as an error condition rather than as a typical permission denial\nand thus does not allow permissions on undefined classes even when in\npermissive mode.  Change the SELinux logic so that this case is handled\nas a typical permission denial, subject to the usual permissive mode and\npermissive domain handling.\n\nAlso drop the \u0027requested\u0027 argument from security_compute_av() and\nhelpers as it is a legacy of the original security server interface and\nis unused.\n\nChanges:\n- Handle permissive domains consistently by moving up the test for a\npermissive domain.\n- Make security_compute_av_user() consistent with security_compute_av();\nthe only difference now is that security_compute_av() performs mapping\nbetween the kernel-private class and permission indices and the policy\nvalues.  In the userspace case, this mapping is handled by libselinux.\n- Moved avd_init inside the policy lock.\n\nBased in part on a patch by Paul Moore \u003cpaul.moore@hp.com\u003e.\n\nReported-by: Andrew Worsley \u003camworsley@gmail.com\u003e\nSigned-off-by:  Stephen D. Smalley \u003csds@tycho.nsa.gov\u003e\nReviewed-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "6ccf80eb15ccaca4d3f1ab5162b9ded5eecd9971",
      "tree": "23dad05636e88a743755bfd3e7a5dad4ef5e49e0",
      "parents": [
        "1f0b8b95543118f97197a978560438c1ce88cd00"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Jan 15 17:01:18 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 16:53:55 2010 -0800"
      },
      "message": "page allocator: update NR_FREE_PAGES only when necessary\n\ncommit f2260e6b (page allocator: update NR_FREE_PAGES only as necessary)\nmade one minor regression.  if __rmqueue() was failed, NR_FREE_PAGES stat\ngo wrong.  this patch fixes it.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nReported-by: Huang Shijie \u003cshijie8@gmail.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f0b8b95543118f97197a978560438c1ce88cd00",
      "tree": "5f4b6757676305b70963ae2d10fd508a7ffa7016",
      "parents": [
        "330a518a1aae6724601903b278ce892d7ab08136",
        "c556752109794a5ff199b80a1673336b4df8433a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:34:56 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:34:56 2010 -0800"
      },
      "message": "Merge branch \u0027i2c-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging\n\n* \u0027i2c-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:\n  i2c: Do not use device name after device_unregister\n  i2c/pca: Don\u0027t use *_interruptible\n  i2c-ali1563: Remove sparse warnings\n  i2c: Test off by one in {piix4,vt596}_transaction()\n  i2c-core: Storage class should be before const qualifier\n"
    },
    {
      "commit": "330a518a1aae6724601903b278ce892d7ab08136",
      "tree": "11cfe776207693f0624b0c1412f5f1d117170f74",
      "parents": [
        "2a8249daf6e2d643bf47a68a7fef2584a0597cb5",
        "1d2c867c941d635e53e8ad7bf37d060bb5b25ec5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:31:42 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:31:42 2010 -0800"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, uv: Ensure hub revision set for all ACPI modes.\n  x86, uv: Add function retrieving node controller revision number\n  x86: xen: 64-bit kernel RPL should be 0\n  x86: kernel_thread() -- initialize SS to a known state\n  x86/agp: Fix agp_amd64_init and agp_amd64_cleanup\n  x86: SGI UV: Fix mapping of MMIO registers\n  x86: mce.h: Fix warning in header checks\n"
    },
    {
      "commit": "2a8249daf6e2d643bf47a68a7fef2584a0597cb5",
      "tree": "182e640660eac46dc656e4eaa508adb7175ca199",
      "parents": [
        "c6a93d330b53fa587f550aedcdeb93ff23ea7f87",
        "7485d0d3758e8e6491a5c9468114e74dc050785d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:31:30 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:31:30 2010 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futexes: Remove rw parameter from get_futex_key()\n"
    },
    {
      "commit": "c6a93d330b53fa587f550aedcdeb93ff23ea7f87",
      "tree": "9f702ce8e33f5c455cd95d6d5f6f78537e65ba67",
      "parents": [
        "6ccc347b699681a0b21c2f7b1a1f85500a58c6b8",
        "1703f2c321a8a531c393e137a82602e16c6061cb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:47 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:47 2010 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf tools: Check if /dev/null can be used as the -o gcc argument\n  perf tools: Move QUIET_STDERR def to before first use\n  perf: Stop stack frame walking off kernel addresses boundaries\n"
    },
    {
      "commit": "6ccc347b699681a0b21c2f7b1a1f85500a58c6b8",
      "tree": "abe33c75ae53d445abde0e5986b96ef696501d38",
      "parents": [
        "eb29a5cc0b601c458bae9df2f6c3696d75c2d383",
        "d1303dd1d6b220cab375f24fa91a5640e54e169e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:25 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:25 2010 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing/filters: Add comment for match callbacks\n  tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n  tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n  lib: Introduce strnstr()\n  tracing/filters: Fix MATCH_END_ONLY filter matching\n  tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n  ftrace: Fix MATCH_END_ONLY function filter\n  tracing/x86: Derive arch from bits argument in recordmcount.pl\n  ring-buffer: Add rb_list_head() wrapper around new reader page next field\n  ring-buffer: Wrap a list.next reference with rb_list_head()\n"
    },
    {
      "commit": "eb29a5cc0b601c458bae9df2f6c3696d75c2d383",
      "tree": "ddb60c47d0834f80c6d34de03190355ce5e545d9",
      "parents": [
        "7e6608724c640924aad1d556d17df33ebaa6124d"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jan 15 17:01:40 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "revert \"drivers/video/s3c-fb.c: fix clock setting for Samsung SoC Framebuffer\"\n\nFix divide by zero and broken output.  Commit 600ce1a0fa (\"fix clock\nsetting for Samsung SoC Framebuffer\") introduced a mandatory refresh\nparameter to the platform data for the S3C framebuffer but did not\nintroduce any validation code, causing existing platforms (none of which\nhave refresh set) to divide by zero whenever the framebuffer is\nconfigured, generating warnings and unusable output.\n\nBen Dooks noted several problems with the patch:\n\n - The platform data supplies the pixclk directly and should already\n   have taken care of the refresh rate.\n - The addition of a window ID parameter doesn\u0027t help since only the\n   root framebuffer can control the pixclk.\n - pixclk is specified in picoseconds (rather than Hz) as the patch\n   assumed.\n\nand suggests reverting the commit so do that.  Without fixing this no\nmainline user of the driver will produce output.\n\n[akpm@linux-foundation.org: don\u0027t revert the correct bit]\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: InKi Dae \u003cinki.dae@samsung.com\u003e\nCc: Kyungmin Park \u003ckmpark@infradead.org\u003e\nCc: Krzysztof Helt \u003ckrzysztof.h1@poczta.fm\u003e\nCc: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nCc: Ben Dooks \u003cben-linux@fluff.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7e6608724c640924aad1d556d17df33ebaa6124d",
      "tree": "b2d90646f5ee52f5b7807bbc0abe09db9adbe478",
      "parents": [
        "81759b5b221107488bda99fe7beeb7b734f61133"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:39 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "nommu: fix shared mmap after truncate shrinkage problems\n\nFix a problem in NOMMU mmap with ramfs whereby a shared mmap can happen\nover the end of a truncation.  The problem is that\nramfs_nommu_check_mappings() checks that the reduced file size against the\nVMA tree, but not the vm_region tree.\n\nThe following sequence of events can cause the problem:\n\n\tfd \u003d open(\"/tmp/x\", O_RDWR|O_TRUNC|O_CREAT, 0600);\n\tftruncate(fd, 32 * 1024);\n\ta \u003d mmap(NULL, 32 * 1024, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);\n\tb \u003d mmap(NULL, 16 * 1024, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);\n\tmunmap(a, 32 * 1024);\n\tftruncate(fd, 16 * 1024);\n\tc \u003d mmap(NULL, 32 * 1024, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);\n\nMapping \u0027a\u0027 creates a vm_region covering 32KB of the file.  Mapping \u0027b\u0027\nsees that the vm_region from \u0027a\u0027 is covering the region it wants and so\nshares it, pinning it in memory.\n\nMapping \u0027a\u0027 then goes away and the file is truncated to the end of VMA\n\u0027b\u0027.  However, the region allocated by \u0027a\u0027 is still in effect, and has\n_not_ been reduced.\n\nMapping \u0027c\u0027 is then created, and because there\u0027s a vm_region covering the\ndesired region, get_unmapped_area() is _not_ called to repeat the check,\nand the mapping is granted, even though the pages from the latter half of\nthe mapping have been discarded.\n\nHowever:\n\n\td \u003d mmap(NULL, 16 * 1024, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);\n\nMapping \u0027d\u0027 should work, and should end up sharing the region allocated by\n\u0027a\u0027.\n\nTo deal with this, we shrink the vm_region struct during the truncation,\nlest do_mmap_pgoff() take it as licence to share the full region\nautomatically without calling the get_unmapped_area() file op again.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81759b5b221107488bda99fe7beeb7b734f61133",
      "tree": "2ca1207d4ae5d6bbdc49db727a35b22a502fc76f",
      "parents": [
        "efc1a3b16930c41d64ffefde16b87d82f603a8a0"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:36 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "nommu: fix race between ramfs truncation and shared mmap\n\nFix the race between the truncation of a ramfs file and an attempt to make\na shared mmap of region of that file.\n\nThe problem is that do_mmap_pgoff() calls f_op-\u003eget_unmapped_area() to\nverify that the file region is made of contiguous pages and to find its\nbase address - but there isn\u0027t any locking to guarantee this region until\nvma_prio_tree_insert() is called by add_vma_to_mm().\n\nNote that moving the functionality into f_op-\u003emmap() doesn\u0027t help as that\nis also called before vma_prio_tree_insert().\n\nInstead make ramfs_nommu_check_mappings() grab nommu_region_sem whilst it\ndoes its checks.  This means that this function will wait whilst mmaps\ntake place.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "efc1a3b16930c41d64ffefde16b87d82f603a8a0",
      "tree": "1f651e22f534f1b3eacd2fab97e9351aa75abd0b",
      "parents": [
        "779c10232ceb11c1b259232c4845cfb2850287b7"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:35 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "nommu: don\u0027t need get_unmapped_area() for NOMMU\n\nget_unmapped_area() is unnecessary for NOMMU as no-one calls it.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "779c10232ceb11c1b259232c4845cfb2850287b7",
      "tree": "972b07acdcff03b20c84d42425a64b231df52aaa",
      "parents": [
        "1e2ae599d37e60958c03ca5e46b1f657619a30cd"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:34 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "nommu: remove a superfluous check of vm_region::vm_usage\n\nIn split_vma(), there\u0027s no need to check if the VMA being split has a\nregion that\u0027s in use by more than one VMA because:\n\n (1) The preceding test prohibits splitting of non-anonymous VMAs and regions\n     (eg: file or chardev backed VMAs).\n\n (2) Anonymous regions can\u0027t be mapped multiple times because there\u0027s no handle\n     by which to refer to the already existing region.\n\n (3) If a VMA has previously been split, then the region backing it has also\n     been split into two regions, each of usage 1.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e2ae599d37e60958c03ca5e46b1f657619a30cd",
      "tree": "0a0c9ff0370fbefd4eb8fe3a44106880c1aae8cb",
      "parents": [
        "ed5e5894b234ce4793d78078c026915b853e0678"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:33 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "nommu: struct vm_region\u0027s vm_usage count need not be atomic\n\nThe vm_usage count field in struct vm_region does not need to be atomic as\nit\u0027s only even modified whilst nommu_region_sem is write locked.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ed5e5894b234ce4793d78078c026915b853e0678",
      "tree": "199db2a5cc821d4de9645418fb00c03d438eae1f",
      "parents": [
        "8ff410daa009c4b44be445ded5b0cec00abc0426"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:32 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "nommu: fix SYSV SHM for NOMMU\n\nCommit c4caa778157dbbf04116f0ac2111e389b5cd7a29 (\"file\n-\u003eget_unmapped_area() shouldn\u0027t duplicate work of get_unmapped_area()\")\nbroke SYSV SHM for NOMMU by taking away the pointer to\nshm_get_unmapped_area() from shm_file_operations.\n\nPut it back conditionally on CONFIG_MMU\u003dn.\n\nfile-\u003ef_ops-\u003eget_unmapped_area() is used to find out the base address for a\nmapping of a mappable chardev device or mappable memory-based file (such as a\nramfs file).  It needs to be called prior to file-\u003ef_ops-\u003emmap() being called.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ff410daa009c4b44be445ded5b0cec00abc0426",
      "tree": "c8cd0a20b7116e7f150397d50b25fc626bec86dd",
      "parents": [
        "ba168fc37dea145deeb8fa9e7e71c748d2e00d74"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Jan 15 17:01:32 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "sysdev: fix prototype for memory_sysdev_class show/store functions\n\nThe function prototype mismatches in call stack:\n\n                [\u003cffffffff81494268\u003e] print_block_size+0x58/0x60\n                [\u003cffffffff81487e3f\u003e] sysdev_class_show+0x1f/0x30\n                [\u003cffffffff811d629b\u003e] sysfs_read_file+0xcb/0x1f0\n                [\u003cffffffff81176328\u003e] vfs_read+0xc8/0x180\n\nDue to prototype mismatch, print_block_size() will sprintf() into\n*attribute instead of *buf, hence user space will read the initial\nzeros from *buf:\n\t$ hexdump /sys/devices/system/memory/block_size_bytes\n\t0000000 0000 0000 0000 0000\n\t0000008\n\nAfter patch:\n\tcat /sys/devices/system/memory/block_size_bytes\n\t0x8000000\n\nThis complements commits c29af9636 and 4a0b2b4dbe.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: \"Zheng, Shaohui\" \u003cshaohui.zheng@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba168fc37dea145deeb8fa9e7e71c748d2e00d74",
      "tree": "3fb569dfcf03e77ce27ce8efa0d477a8f46c8a95",
      "parents": [
        "fce66477578d081f19aef5ea218664ff7758c33a"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Jan 15 17:01:31 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "memory-hotplug: add 0x prefix to HEX block_size_bytes\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fce66477578d081f19aef5ea218664ff7758c33a",
      "tree": "ef8914767f7834fcd65c2f72eeee59dd2248076b",
      "parents": [
        "d817cd525589765aa5f6798734e422c867685a58"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Fri Jan 15 17:01:30 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "memcg: ensure list is empty at rmdir\n\nCurrent mem_cgroup_force_empty() only ensures mem-\u003eres.usage \u003d\u003d 0 on\nsuccess.  But this doesn\u0027t guarantee memcg\u0027s LRU is really empty, because\nthere are some cases in which !PageCgrupUsed pages exist on memcg\u0027s LRU.\n\nFor example:\n- Pages can be uncharged by its owner process while they are on LRU.\n- race between mem_cgroup_add_lru_list() and __mem_cgroup_uncharge_common().\n\nSo there can be a case in which the usage is zero but some of the LRUs are not empty.\n\nOTOH, mem_cgroup_del_lru_list(), which can be called asynchronously with\nrmdir, accesses the mem_cgroup, so this access can cause a problem if it\nraces with rmdir because the mem_cgroup might have been freed by rmdir.\n\nActually, I saw a bug which seems to be caused by this race.\n\n\t[1530745.949906] BUG: unable to handle kernel NULL pointer dereference at 0000000000000230\n\t[1530745.950651] IP: [\u003cffffffff810fbc11\u003e] mem_cgroup_del_lru_list+0x30/0x80\n\t[1530745.950651] PGD 3863de067 PUD 3862c7067 PMD 0\n\t[1530745.950651] Oops: 0002 [#1] SMP\n\t[1530745.950651] last sysfs file: /sys/devices/system/cpu/cpu7/cache/index1/shared_cpu_map\n\t[1530745.950651] CPU 3\n\t[1530745.950651] Modules linked in: configs ipt_REJECT xt_tcpudp iptable_filter ip_tables x_tables bridge stp nfsd nfs_acl auth_rpcgss exportfs autofs4 hidp rfcomm l2cap crc16 bluetooth lockd sunrpc ib_iser rdma_cm ib_cm iw_cm ib_sa ib_mad ib_core ib_addr iscsi_tcp bnx2i cnic uio ipv6 cxgb3i cxgb3 mdio libiscsi_tcp libiscsi scsi_transport_iscsi dm_mirror dm_multipath scsi_dh video output sbs sbshc battery ac lp kvm_intel kvm sg ide_cd_mod cdrom serio_raw tpm_tis tpm tpm_bios acpi_memhotplug button parport_pc parport rtc_cmos rtc_core rtc_lib e1000 i2c_i801 i2c_core pcspkr dm_region_hash dm_log dm_mod ata_piix libata shpchp megaraid_mbox sd_mod scsi_mod megaraid_mm ext3 jbd uhci_hcd ohci_hcd ehci_hcd [last unloaded: freq_table]\n\t[1530745.950651] Pid: 19653, comm: shmem_test_02 Tainted: G   M       2.6.32-mm1-00701-g2b04386 #3 Express5800/140Rd-4 [N8100-1065]\n\t[1530745.950651] RIP: 0010:[\u003cffffffff810fbc11\u003e]  [\u003cffffffff810fbc11\u003e] mem_cgroup_del_lru_list+0x30/0x80\n\t[1530745.950651] RSP: 0018:ffff8803863ddcb8  EFLAGS: 00010002\n\t[1530745.950651] RAX: 00000000000001e0 RBX: ffff8803abc02238 RCX: 00000000000001e0\n\t[1530745.950651] RDX: 0000000000000000 RSI: ffff88038611a000 RDI: ffff8803abc02238\n\t[1530745.950651] RBP: ffff8803863ddcc8 R08: 0000000000000002 R09: ffff8803a04c8643\n\t[1530745.950651] R10: 0000000000000000 R11: ffffffff810c7333 R12: 0000000000000000\n\t[1530745.950651] R13: ffff880000017f00 R14: 0000000000000092 R15: ffff8800179d0310\n\t[1530745.950651] FS:  0000000000000000(0000) GS:ffff880017800000(0000) knlGS:0000000000000000\n\t[1530745.950651] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n\t[1530745.950651] CR2: 0000000000000230 CR3: 0000000379d87000 CR4: 00000000000006e0\n\t[1530745.950651] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n\t[1530745.950651] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n\t[1530745.950651] Process shmem_test_02 (pid: 19653, threadinfo ffff8803863dc000, task ffff88038612a8a0)\n\t[1530745.950651] Stack:\n\t[1530745.950651]  ffffea00040c2fe8 0000000000000000 ffff8803863ddd98 ffffffff810c739a\n\t[1530745.950651] \u003c0\u003e 00000000863ddd18 000000000000000c 0000000000000000 0000000000000000\n\t[1530745.950651] \u003c0\u003e 0000000000000002 0000000000000000 ffff8803863ddd68 0000000000000046\n\t[1530745.950651] Call Trace:\n\t[1530745.950651]  [\u003cffffffff810c739a\u003e] release_pages+0x142/0x1e7\n\t[1530745.950651]  [\u003cffffffff810c778f\u003e] ? pagevec_move_tail+0x6e/0x112\n\t[1530745.950651]  [\u003cffffffff810c781e\u003e] pagevec_move_tail+0xfd/0x112\n\t[1530745.950651]  [\u003cffffffff810c78a9\u003e] lru_add_drain+0x76/0x94\n\t[1530745.950651]  [\u003cffffffff810dba0c\u003e] exit_mmap+0x6e/0x145\n\t[1530745.950651]  [\u003cffffffff8103f52d\u003e] mmput+0x5e/0xcf\n\t[1530745.950651]  [\u003cffffffff81043ea8\u003e] exit_mm+0x11c/0x129\n\t[1530745.950651]  [\u003cffffffff8108fb29\u003e] ? audit_free+0x196/0x1c9\n\t[1530745.950651]  [\u003cffffffff81045353\u003e] do_exit+0x1f5/0x6b7\n\t[1530745.950651]  [\u003cffffffff8106133f\u003e] ? up_read+0x2b/0x2f\n\t[1530745.950651]  [\u003cffffffff8137d187\u003e] ? lockdep_sys_exit_thunk+0x35/0x67\n\t[1530745.950651]  [\u003cffffffff81045898\u003e] do_group_exit+0x83/0xb0\n\t[1530745.950651]  [\u003cffffffff810458dc\u003e] sys_exit_group+0x17/0x1b\n\t[1530745.950651]  [\u003cffffffff81002c1b\u003e] system_call_fastpath+0x16/0x1b\n\t[1530745.950651] Code: 54 53 0f 1f 44 00 00 83 3d cc 29 7c 00 00 41 89 f4 75 63 eb 4e 48 83 7b 08 00 75 04 0f 0b eb fe 48 89 df e8 18 f3 ff ff 44 89 e2 \u003c48\u003e ff 4c d0 50 48 8b 05 2b 2d 7c 00 48 39 43 08 74 39 48 8b 4b\n\t[1530745.950651] RIP  [\u003cffffffff810fbc11\u003e] mem_cgroup_del_lru_list+0x30/0x80\n\t[1530745.950651]  RSP \u003cffff8803863ddcb8\u003e\n\t[1530745.950651] CR2: 0000000000000230\n\t[1530745.950651] ---[ end trace c3419c1bb8acc34f ]---\n\t[1530745.950651] Fixing recursive fault but reboot is needed!\n\nThe problem here is pages on LRU may contain pointer to stale memcg.  To\nmake res-\u003eusage to be 0, all pages on memcg must be uncharged or moved to\nanother(parent) memcg.  Moved page_cgroup have already removed from\noriginal LRU, but uncharged page_cgroup contains pointer to memcg withou\nPCG_USED bit.  (This asynchronous LRU work is for improving performance.)\nIf PCG_USED bit is not set, page_cgroup will never be added to memcg\u0027s\nLRU.  So, about pages not on LRU, they never access stale pointer.  Then,\nwhat we have to take care of is page_cgroup _on_ LRU list.  This patch\nfixes this problem by making mem_cgroup_force_empty() visit all LRUs\nbefore exiting its loop and guarantee there are no pages on its LRU.\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d817cd525589765aa5f6798734e422c867685a58",
      "tree": "bc291ba32d55f79a7a8d499d90e6b9c41b4e1188",
      "parents": [
        "de3fab39348dff18c69a0cd04efee9c276a02f51"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Fri Jan 15 17:01:26 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "virtio: fix section mismatch warnings\n\nFix fixes the following warnings by renaming the driver structures to be\nsuffixed with _driver.\n\nWARNING: drivers/virtio/virtio_balloon.o(.data+0x88): Section mismatch in reference from the variable virtio_balloon to the function .devexit.text:virtballoon_remove()\n\nWARNING: drivers/char/hw_random/virtio-rng.o(.data+0x88): Section mismatch in reference from the variable virtio_rng to the function .devexit.text:virtrng_remove()\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de3fab39348dff18c69a0cd04efee9c276a02f51",
      "tree": "1fc5a20da15541e23d02c33ae0bb574fb1f2e40f",
      "parents": [
        "af2422c42c0ff42b8b93dbb3a5fe65250fb65c40"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Jan 15 17:01:25 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "vmscan: kswapd: don\u0027t retry balance_pgdat() if all zones are unreclaimable\n\nCommit f50de2d3 (vmscan: have kswapd sleep for a short interval and double\ncheck it should be asleep) can cause kswapd to enter an infinite loop if\nrunning on a single-CPU system.  If all zones are unreclaimble,\nsleeping_prematurely return 1 and kswapd will call balance_pgdat() again.\nbut it\u0027s totally meaningless, balance_pgdat() doesn\u0027t anything against\nunreclaimable zone!\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReported-by: Will Newton \u003cwill.newton@gmail.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nTested-by: Will Newton \u003cwill.newton@gmail.com\u003e\nReviewed-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "af2422c42c0ff42b8b93dbb3a5fe65250fb65c40",
      "tree": "cb3eb1488225b1c295044c40b841cde60e499fd4",
      "parents": [
        "cc8ef6eb21e964b1c5eb97b2d0e8ac9893e1bf86"
      ],
      "author": {
        "name": "David John",
        "email": "davidjon@xenontk.org",
        "time": "Fri Jan 15 17:01:23 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "smp_call_function_any(): pass the node value to cpumask_of_node()\n\nThe change in acpi_cpufreq to use smp_call_function_any causes a warning\nwhen it is called since the function erroneously passes the cpu id to\ncpumask_of_node rather than the node that the cpu is on.  Fix this.\n\ncpumask_of_node(3): node \u003e nr_node_ids(1)\nPid: 1, comm: swapper Not tainted 2.6.33-rc3-00097-g2c1f189 #223\nCall Trace:\n [\u003cffffffff81028bb3\u003e] cpumask_of_node+0x23/0x58\n [\u003cffffffff81061f51\u003e] smp_call_function_any+0x65/0xfa\n [\u003cffffffff810160d1\u003e] ? do_drv_read+0x0/0x2f\n [\u003cffffffff81015fba\u003e] get_cur_val+0xb0/0x102\n [\u003cffffffff81016080\u003e] get_cur_freq_on_cpu+0x74/0xc5\n [\u003cffffffff810168a7\u003e] acpi_cpufreq_cpu_init+0x417/0x515\n [\u003cffffffff81562ce9\u003e] ? __down_write+0xb/0xd\n [\u003cffffffff8148055e\u003e] cpufreq_add_dev+0x278/0x922\n\nSigned-off-by: David John \u003cdavidjon@xenontk.org\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc8ef6eb21e964b1c5eb97b2d0e8ac9893e1bf86",
      "tree": "c30758f4f980a71acd662f55006af80c8a11b27f",
      "parents": [
        "d2dbe08ddceb4ba2b274abb84326d7e69d454e5c"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Fri Jan 15 17:01:22 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "kernel.h: add BUILD_BUG_ON_NOT_POWER_OF_2()\n\nAdd BUILD_BUG_ON_NOT_POWER_OF_2()\n\nWhen code relies on a constant being a power of 2:\n\n\t#define FOO\t512\t/* must be a power of 2 */\n\nit would be nice to be able to do:\n\n\tBUILD_BUG_ON(!is_power_of_2(FOO));\n\nHowever applying an inline function does not result in a compile-time\nconstant that can be used with BUILD_BUG_ON(), so trying that gives\nresults in:\n\n\terror: bit-field \u0027\u003canonymous\u003e\u0027 width not an integer constant\n\nAs suggested by akpm, rather than monkeying around with is_power_of_2()\nand risking gcc warts about constant expressions, just create a macro\nBUILD_BUG_ON_NOT_POWER_OF_2() to encapsulate this common requirement.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Bart Van Assche \u003cbvanassche@acm.org\u003e\nCc: David Dillow \u003cdave@thedillows.org\u003e\nCc: \"Robert P. J. Day\" \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d2dbe08ddceb4ba2b274abb84326d7e69d454e5c",
      "tree": "7b363c03dc6441b3fe6ebdcacd892cbd09b04f29",
      "parents": [
        "5dab600e6a153ceb64832f608069e6c08185411a"
      ],
      "author": {
        "name": "Kazuhisa Ichikawa",
        "email": "ki@epsilou.com",
        "time": "Fri Jan 15 17:01:20 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "mm/page_alloc: fix the range check for backward merging\n\nThe current check for \u0027backward merging\u0027 within add_active_range() does\nnot seem correct.  start_pfn must be compared against\nearly_node_map[i].start_pfn (and NOT against .end_pfn) to find out whether\nthe new region is backward-mergeable with the existing range.\n\nSigned-off-by: Kazuhisa Ichikawa \u003cki@epsilou.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5dab600e6a153ceb64832f608069e6c08185411a",
      "tree": "866d05be2255bd4f0c146534741b10c60afe9b79",
      "parents": [
        "d994ffc247f7c4a48b848f10c4c01c9b06411ada"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:17 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: document everywhere that size has to be power of two\n\nOn my first try using them I missed that the fifos need to be power of\ntwo, resulting in a runtime bug.  Document that requirement everywhere\n(and fix one grammar bug)\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d994ffc247f7c4a48b848f10c4c01c9b06411ada",
      "tree": "1ccfe9997a504d556e368553c26661d0ce543f82",
      "parents": [
        "a5b9e2c1063046421ce01dcf5ddd7ec12567f3e1"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:17 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: add kfifo_initialized\n\nSimple inline that checks if kfifo_init() has been executed on a fifo.\n\nThis is useful for walking all per CPU fifos, when some of them might not\nhave been brought up yet.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5b9e2c1063046421ce01dcf5ddd7ec12567f3e1",
      "tree": "09cef2a043af96491497db380abe89af2aee5176",
      "parents": [
        "64ce1037c5434b1d036cd99ecaee6e00496bc2e9"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: add kfifo_out_peek\n\nIn some upcoming code it\u0027s useful to peek into a FIFO without permanentely\nremoving data.  This patch implements a new kfifo_out_peek() to do this.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64ce1037c5434b1d036cd99ecaee6e00496bc2e9",
      "tree": "37a8c8f1dccdcdb3d00bf07d36d86fe6ea05f3f9",
      "parents": [
        "8ecc2951534af10e04ddb5e5ff5c6d217b79f5c2"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:15 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: sanitize *_user error handling\n\nRight now for kfifo_*_user it\u0027s not easily possible to distingush between\na user copy failing and the FIFO not containing enough data.  The problem\nis that both conditions are multiplexed into the same return code.\n\nAvoid this by moving the \"copy length\" into a separate output parameter\nand only return 0/-EFAULT in the main return value.\n\nI didn\u0027t fully adapt the weird \"record\" variants, those seem\nto be unused anyways and were rather messy (should they be just removed?)\n\nI would appreciate some double checking if I did all the conversions\ncorrectly.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ecc2951534af10e04ddb5e5ff5c6d217b79f5c2",
      "tree": "44c8400754bc42a072fe7dc117696ebb5699920e",
      "parents": [
        "2427b8e3eaea3719e53bbed7b3375382c3aa6f13"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:12 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: use void * pointers for user buffers\n\nThe pointers to user buffers are currently unsigned char *, which requires\na lot of casting in the caller for any non-char typed buffers.  Use void *\ninstead.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2427b8e3eaea3719e53bbed7b3375382c3aa6f13",
      "tree": "83d4b8d0bc442a8971584c0d2b8cf3c553484a48",
      "parents": [
        "118f3e1afd5534c15f9701f33514186cfc841a27"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Fri Jan 15 17:01:11 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "tty.h: make tty_port_get() static inline\n\nI get a few dozen of these warnings when using\n  gcc (GCC) 4.4.1 20090725 (Red Hat 4.4.1-2):\n\nIn file included from mmotm-2010-0113-1217/init/do_mounts.c:5:\nmmotm-2010-0113-1217/include/linux/tty.h: In function \u0027tty_port_get\u0027:\nmmotm-2010-0113-1217/include/linux/tty.h:469: warning: \u0027______f\u0027 is static but declared in inline function \u0027tty_port_get\u0027 which is not static\n\nso make the function static inline.\n\n[akpm@linux-foundation.org: may as well convert tty_port_users() also]\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "118f3e1afd5534c15f9701f33514186cfc841a27",
      "tree": "4fd1c6333ba941125650712cbd5f9532063dc8e4",
      "parents": [
        "355e8e8d1b0779fccb6ca1351fb73c71985e22b2"
      ],
      "author": {
        "name": "Tamas Vincze",
        "email": "tom@vincze.org",
        "time": "Fri Jan 15 17:01:10 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "edac: i5000_edac critical fix panic out of bounds\n\nEDAC MC0: INTERNAL ERROR: channel-b out of range (4 \u003e\u003d 4)\nKernel panic - not syncing: EDAC MC0: Uncorrected Error  (XEN) Domain 0 crashed: \u0027noreboot\u0027 set - not rebooting.\n\nThis happens because FERR_NF_FBD bit 28 is not updated on i5000.  Due to\nthat, both bits 28 and 29 may be equal to one, returning channel \u003d 3.  As\nthis value is invalid, EDAC core generates the panic.\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d14568\n\nSigned-off-by: Tamas Vincze \u003ctom@vincze.org\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nSigned-off-by: Doug Thompson \u003cdougthompson@xmission.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "355e8e8d1b0779fccb6ca1351fb73c71985e22b2",
      "tree": "c38807c04771c0a72f21504ee07ec76795b19c05",
      "parents": [
        "3018aa4b1a46946dfd0ee73a533038f24e390539"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Fri Jan 15 17:01:09 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "m68knommu: fix invalid flags on coldfire pit clocksource\n\nThe m68knommu coldfire pit clocksource looks like it was incorrectly\nmarked as a continuous clocksource.  Running with it marked as a\ncontinuous clocksource could cause hangs when the system switches to\nhighres mode or enables nohz.\n\nThis patch removes the CLOCK_SOURCE_IS_CONTINUOUS flag on the coldfire pit\nclocksource.  This will disallow systems using this clocksource from\nentering oneshot mode (disabling highres timers and nohz).\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nAcked-by: Greg Ungerer \u003cgerg@snapgear.com\u003e\nCc: Steven King \u003csfking@fdwdc.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3018aa4b1a46946dfd0ee73a533038f24e390539",
      "tree": "bf4931e81c2b86310fdc36de725423a843f0b037",
      "parents": [
        "1f8cdae43929d32e3706c314eb2a302dc3683fba"
      ],
      "author": {
        "name": "Ping",
        "email": "pinglinux@gmail.com",
        "time": "Fri Jan 15 17:01:07 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:37 2010 -0800"
      },
      "message": "serial/8250_pnp: add a new Fujitsu Wacom Tablet PC device\n\nThis is a new two finger touch Fujitsu Wacom Tablet PC.\n\nSigned-off-by: Ping Cheng \u003cpingc@wacom.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f8cdae43929d32e3706c314eb2a302dc3683fba",
      "tree": "cc99ca58e77d383dec6c78e034fdb30ee3e6d73a",
      "parents": [
        "97922b5462fa543484831d42ab0fe4562b9373fc"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawater@gmail.com",
        "time": "Fri Jan 15 17:01:07 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:37 2010 -0800"
      },
      "message": "markup_oops.pl: fix error with x86\n\nWhen I try to use markup_oops.pl in x86, I always get:\n\ncat 1 | perl markup_oops.pl ./vmlinux\nobjdump: --start-address: bad number: NaN\nNo matching code found\n\nThis is because in line:\n\tif ($line \u003d~ /EIP is at ([a-zA-Z0-9\\_]+)\\+0x([0-9a-f]+)\\/[a-f0-9]/) {\n \t\t$function \u003d $1;\n \t\t$func_offset \u003d $2;\n \t}\n\n$func_offset will get a number like \"0x2\"\n\nBut in follow code:\n\nmy $decodestart \u003d Math::BigInt-\u003efrom_hex(\"0x$target\") -\nMath::BigInt-\u003efrom_hex(\"0x$func_offset\");\n\nIt add other ox to ox2.  Then this value will be set to NaN.\n\nSo I made a small patch to fix it.\n\nSigned-off-by: Hui Zhu \u003cteawater@gmail.com\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "97922b5462fa543484831d42ab0fe4562b9373fc",
      "tree": "548175c1bba266e3a6a8a4a2b588747f67e989fe",
      "parents": [
        "8a3a95c32f612068be8dae74fa5fc4cf2db1592e"
      ],
      "author": {
        "name": "Erik-Jan Post",
        "email": "ej.lfs@xs4all.nl",
        "time": "Fri Jan 15 17:01:06 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:37 2010 -0800"
      },
      "message": "viafb: fix acceleration for some chips\n\nFix a regression in hardware acceleration which made the accelerated\nframebuffer unusable on some chips.  These need extra initialization and\nan extra flag which is no longer needed/available on current chips.\n\nSigned-off-by: Erik-Jan Post \u003cej.lfs@xs4all.nl\u003e\nSigned-off-by: Florian Tobias Schandinat \u003cFlorianSchandinat@gmx.de\u003e\nCc: Scott Fang \u003cScottFang@viatech.com.cn\u003e\nCc: Joseph Chan \u003cJosephChan@via.com.tw\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8a3a95c32f612068be8dae74fa5fc4cf2db1592e",
      "tree": "4470c3e0068651b2dd0830310437a8ef2722b5ba",
      "parents": [
        "0b94190e1e60f96962b82d35729d7d44cf298ef8"
      ],
      "author": {
        "name": "Erik-Jan Post",
        "email": "ej.lfs@xs4all.nl",
        "time": "Fri Jan 15 17:01:05 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:37 2010 -0800"
      },
      "message": "viafb: do modesetting after updating variables\n\nReorder viafb_set_par to allow using the updated variables in\nviafb_setmode.  This fixes a regression that prevented proper runtime mode\nchanges.\n\nSigned-off-by: Erik-Jan Post \u003cej.lfs@xs4all.nl\u003e\nSigned-off-by: Florian Tobias Schandinat \u003cFlorianSchandinat@gmx.de\u003e\nCc: Scott Fang \u003cScottFang@viatech.com.cn\u003e\nCc: Joseph Chan \u003cJosephChan@via.com.tw\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b94190e1e60f96962b82d35729d7d44cf298ef8",
      "tree": "276ef97fa1f46799a1d93376daafa5d857a19906",
      "parents": [
        "7e105057a34c83cea542dacc55ff0528bce67afa"
      ],
      "author": {
        "name": "Florian Tobias Schandinat",
        "email": "FlorianSchandinat@gmx.de",
        "time": "Fri Jan 15 17:01:03 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:37 2010 -0800"
      },
      "message": "viafb: fix LCD hardware cursor regression\n\nAlthough I\u0027d consider this a hardware bug, as there is hardware out that\nfor whatever reason does not support hardware cursors on LCD output we\nhave to care about it in the driver.  This fixes a regression (invisible\ncursor) introduced by:\n\n    viafb: cleanup viafb_cursor\n\nSigned-off-by: Florian Tobias Schandinat \u003cFlorianSchandinat@gmx.de\u003e\nReported-by: Julian Wollrath \u003cjwollrath@web.de\u003e\nTested-by: Julian Wollrath \u003cjwollrath@web.de\u003e\nCc: Scott Fang \u003cScottFang@viatech.com.cn\u003e\nCc: Joseph Chan \u003cJosephChan@via.com.tw\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7e105057a34c83cea542dacc55ff0528bce67afa",
      "tree": "2603ae4ef6b310d8a26f779761cff8cfb4815c09",
      "parents": [
        "33f724eb9e3d6e33aad410318d3ac720fecbdbcd"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Fri Jan 15 17:01:02 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:37 2010 -0800"
      },
      "message": "kfifo: fix kfifo_out_locked race bug\n\nFix a wrong optimization in include/linux/kfifo.h which could cause a race\nin kfifo_out_locked.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nReported-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c556752109794a5ff199b80a1673336b4df8433a",
      "tree": "c52e1517783c04a77eed0faad64f9bcd5799f0b7",
      "parents": [
        "22f8b2695eda496026623020811cae34590ee3d7"
      ],
      "author": {
        "name": "Thadeu Lima de Souza Cascardo",
        "email": "cascardo@holoscopio.com",
        "time": "Sat Jan 16 20:43:13 2010 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Jan 16 20:43:13 2010 +0100"
      },
      "message": "i2c: Do not use device name after device_unregister\n\ndev_dbg outputs dev_name, which is released with device_unregister. This bug\nresulted in output like this:\n\ni2c Xy2�0: adapter [SMBus I801 adapter at 1880] unregistered\n\nThe right output would be:\ni2c i2c-0: adapter [SMBus I801 adapter at 1880] unregistered\n\nSigned-off-by: Thadeu Lima de Souza Cascardo \u003ccascardo@holoscopio.com\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "22f8b2695eda496026623020811cae34590ee3d7",
      "tree": "87d072fd15d377be7652e6a994c4b914862c33fb",
      "parents": [
        "7d53e79f9ec2842269754efbe34f53aa480d99e3"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Sat Jan 16 20:43:13 2010 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Jan 16 20:43:13 2010 +0100"
      },
      "message": "i2c/pca: Don\u0027t use *_interruptible\n\nUnexpected signals can disturb the bus-handling and lock it up. Don\u0027t use\ninterruptible in \u0027wait_event_*\u0027 and \u0027wake_*\u0027 as in commits\ndc1972d02747d2170fb1d78d114801f5ecb27506 (for cpm),\n1ab082d7cbd0f34e39a5396cc6340c00bc5d66ef (for mpc),\nb7af349b175af45f9d87b3bf3f0a221e1831ed39 (for omap).\n\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "7d53e79f9ec2842269754efbe34f53aa480d99e3",
      "tree": "b9aee77f481bf3b545030d4a8d559aace22185af",
      "parents": [
        "b6a3195070fe1c12d0bb1099ffe997d8abf9f602"
      ],
      "author": {
        "name": "Márton Németh",
        "email": "nm127@freemail.hu",
        "time": "Sat Jan 16 20:43:13 2010 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Jan 16 20:43:13 2010 +0100"
      },
      "message": "i2c-ali1563: Remove sparse warnings\n\nRemove the following sparse warnings (see \"make C\u003d1\"):\n * drivers/i2c/busses/i2c-ali1563.c:91:3: warning: do-while statement\n   is not a compound statement\n * drivers/i2c/busses/i2c-ali1563.c:161:3: warning: do-while statement\n   is not a compound statement\n\nSigned-off-by: Márton Németh \u003cnm127@freemail.hu\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "b6a3195070fe1c12d0bb1099ffe997d8abf9f602",
      "tree": "c53534397e22f9260820a635a3f3537d1a416748",
      "parents": [
        "0b2c3688445ff02d3f1bfffc6983417b28f8c3da"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Sat Jan 16 20:43:12 2010 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Jan 16 20:43:12 2010 +0100"
      },
      "message": "i2c: Test off by one in {piix4,vt596}_transaction()\n\nWith `while (timeout++ \u003c MAX_TIMEOUT)\u0027 timeout reaches MAX_TIMEOUT + 1\nafter the loop. This is probably unlikely to produce a problem.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "0b2c3688445ff02d3f1bfffc6983417b28f8c3da",
      "tree": "6523c209131ec4da4b74c4ea8e3231efa4eeda95",
      "parents": [
        "9ddabb6700f82a033a76bcf7a547204fa12aaa17"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@distanz.ch",
        "time": "Sat Jan 16 20:43:12 2010 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Jan 16 20:43:12 2010 +0100"
      },
      "message": "i2c-core: Storage class should be before const qualifier\n\nThe C99 specification states in section 6.11.5:\n\nThe placement of a storage-class specifier other than at the beginning\nof the declaration specifiers in a declaration is an obsolescent\nfeature.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@distanz.ch\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "33f724eb9e3d6e33aad410318d3ac720fecbdbcd",
      "tree": "ad0824aec7e1e89276ca4e0b3e63d067f0d34e4c",
      "parents": [
        "9ddabb6700f82a033a76bcf7a547204fa12aaa17",
        "9b974cc17166d31afed2638d56bdbf9829afbfaa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 10:44:38 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 10:44:38 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel:\n  drm/i915: enable 36bit physical address for hardware status page\n  drm/i915: fix eDP pipe mask\n  drm/i915: fix pixel color depth setting on eDP\n  drm/i915: parse eDP panel color depth from VBT block\n  drm/i915: disable LVDS downclock by default\n  drm/i915: Fix the incorrect cursor A bit definition in DSPFW2 register\n  drm/i915: Remove chatty execbuf failure message.\n  drm/i915: remove loop in Ironlake interrupt handler\n  drm/i915: Don\u0027t wait interruptible for possible plane buffer flush\n  drm/i915: try another possible DDC bus for the SDVO device with multiple outputs\n  drm/i915: Read the response after issuing DDC bus switch command\n  drm/i915: Don\u0027t use the child device parsed from VBT to setup HDMI/DP\n  drm/i915: Fix resume regression on MSI Wind U100 w/o KMS\n  drm/i915: Fix Ironlake M/N/P ranges to match the spec\n  drm/i915: Use find_pll function to calculate DPLL setting for LVDS downclock\n  drm/i915: Add HP nx9020/SamsungSX20S to ACPI LID quirk list\n  drm/i915: disable TV hotplug status check\n\nTrivial conflicts in drivers/gpu/drm/i915/i915_drv.c due to i915\nnon-modeset suspend fix with different comment.\n"
    },
    {
      "commit": "9ddabb6700f82a033a76bcf7a547204fa12aaa17",
      "tree": "f35c7be566b9c1c02cce775562d70bb42e5e8e51",
      "parents": [
        "bf0c346b3fbfb7315c5773767f3c7210fdeacce0",
        "3ce2f76f5dfeeacd128db9e5cd6945bac0ea0b2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:53:24 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:53:24 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus/samsung\u0027 of git://git.fluff.org/bjdooks/linux\n\n* \u0027for-linus/samsung\u0027 of git://git.fluff.org/bjdooks/linux:\n  ARM: MINI2440: Fixup __initdata usage\n  ARM: MINI2440: Fix crash on boot due to improper __initdata qualifier\n  ARM: SMDK6410: Specify no GPIO for B_PWR_5V regulator\n  ARM: S3C: NAND: Check the existence of nr_map before copying\n"
    },
    {
      "commit": "bf0c346b3fbfb7315c5773767f3c7210fdeacce0",
      "tree": "c431ec864986f81b5849a5f15b2a0b81dee0c3fb",
      "parents": [
        "3b3ef30833cc85982b0b7e950998d86f5e2d28cf",
        "926311fd7dabcd284a1e8a87a3e2bb5f929c0c60"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:52:44 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:52:44 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:\n  amd64_edac: Ensure index stays within bounds in amd64_get_scrub_rate\n"
    },
    {
      "commit": "3b3ef30833cc85982b0b7e950998d86f5e2d28cf",
      "tree": "0abbb1ec81a14f0f718abc01ac908bbe783f7bf9",
      "parents": [
        "9fc819172aa565c7be51f758b7e85301c9df7c70",
        "c332e9fcc5289698350d39d4d22c3ed5257d7a80"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:51:57 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:51:57 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  Input: sentelic - fix left/right horizontal scroll mapping\n  Input: pmouse - move Sentelic probe down the list\n  Input: add compat support for sysfs and /proc capabilities output\n  Input: i8042 - add Dritek quirk for Acer Aspire 5610.\n  Input: xbox - do not use GFP_KERNEL under spinlock\n  Input: psmouse - fix Synaptics detection when protocol is disabled\n  Input: bcm5974 - report ABS_MT events\n  Input: davinci_keyscan - add device_enable method to platform data\n  Input: evdev - be less aggressive about sending SIGIO notifies\n  Input: atkbd - fix canceling event_work in disconnect\n  Input: serio - fix potential deadlock when unbinding drivers\n  Input: gf2k - fix \u0026\u0026/|| confusion in gf2k_connect()\n"
    },
    {
      "commit": "9fc819172aa565c7be51f758b7e85301c9df7c70",
      "tree": "55bddc16c148257494ce912728422b32d5f96fbb",
      "parents": [
        "933a42b1842d0b7bc7e4e16f2f5f1099e72870d4",
        "44c36aed43b57ea12140957bebe76d711fbed653"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:51:39 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:51:39 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha-2.6:\n  alpha: cpumask_of_node() should handle -1 as a node\n  alpha: add myself as a maintainer, and drop mention of 2.4\n"
    },
    {
      "commit": "933a42b1842d0b7bc7e4e16f2f5f1099e72870d4",
      "tree": "095ff1c7d7f504fe706d5f5f39b476535e6f4be5",
      "parents": [
        "976ae32be45a736acd49215a7e4771ff91f161c3",
        "75136d48e85915fd78a072f22897622b5d4c1814"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:50:20 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:50:20 2010 -0800"
      },
      "message": "Merge branch \u0027sh/for-2.6.33\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* \u0027sh/for-2.6.33\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:\n  serial: sh-sci: using correct fifo size for SCIF and SCIFA ports.\n  sh: mach-ecovec24: Add motion sensor driver support.\n"
    },
    {
      "commit": "9b974cc17166d31afed2638d56bdbf9829afbfaa",
      "tree": "3c129919c69d932282b7c5fb7c712914547bf9fa",
      "parents": [
        "6251ec0ae2eb9e9e96689422358c2fdb35c63768"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Tue Jan 05 11:25:06 2010 +0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 14:50:14 2010 -0800"
      },
      "message": "drm/i915: enable 36bit physical address for hardware status page\n\nThis enables possible 36bit address mask on 965G that use physical\naddress for hw status page.\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "976ae32be45a736acd49215a7e4771ff91f161c3",
      "tree": "c7baae0475304ef84c8f918e67b087cf7f4388a5",
      "parents": [
        "9e572cc9877ee6c43af60778f6b8d5ba0692d935"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Jan 15 12:12:25 2010 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:49:23 2010 -0800"
      },
      "message": "inotify: only warn once for inotify problems\n\ninotify will WARN() if it finds that the idr and the fsnotify internals\nsomehow got out of sync.  It was only supposed to do this once but due\nto this stupid bug it would warn every single time a problem was\ndetected.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9e572cc9877ee6c43af60778f6b8d5ba0692d935",
      "tree": "381c6152ffe3eee6cc34aaa3389836d54cb8b863",
      "parents": [
        "61c39bb354a1f791ba6f562b766a72e508a036ee"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Jan 15 12:12:24 2010 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:49:23 2010 -0800"
      },
      "message": "inotify: do not reuse watch descriptors\n\nSince commit 7e790dd5fc937bc8d2400c30a05e32a9e9eef276 (\"inotify: fix\nerror paths in inotify_update_watch\") inotify changed the manor in which\nit gave watch descriptors back to userspace.  Previous to this commit\ninotify acted like the following:\n\n  inotify_add_watch(X, Y, Z) \u003d 1\n  inotify_rm_watch(X, 1);\n  inotify_add_watch(X, Y, Z) \u003d 2\n\nbut after this patch inotify would return watch descriptors like so:\n\n  inotify_add_watch(X, Y, Z) \u003d 1\n  inotify_rm_watch(X, 1);\n  inotify_add_watch(X, Y, Z) \u003d 1\n\nwhich I saw as equivalent to opening an fd where\n\n  open(file) \u003d 1;\n  close(1);\n  open(file) \u003d 1;\n\nseemed perfectly reasonable.  The issue is that quite a bit of userspace\napparently relies on the behavior in which watch descriptors will not be\nquickly reused.  KDE relies on it, I know some selinux packages rely on\nit, and I have heard complaints from other random sources such as debian\nbug 558981.\n\nAlthough the man page implies what we do is ok, we broke userspace so\nthis patch almost reverts us to the old behavior.  It is still slightly\nracey and I have patches that would fix that, but they are rather large\nand this will fix it for all real world cases.  The race is as follows:\n\n - task1 creates a watch and blocks in idr_new_watch() before it updates\n   the hint.\n - task2 creates a watch and updates the hint.\n - task1 updates the hint with it\u0027s older wd\n - task removes the watch created by task2\n - task adds a new watch and will reuse the wd originally given to task2\n\nit requires moving some locking around the hint (last_wd) but this should\nsolve it for the real world and be -stable safe.\n\nAs a side effect this patch papers over a bug in the lib/idr code which\nis causing a large number WARN\u0027s to pop on people\u0027s system and many\nreports in kerneloops.org.  I\u0027m working on the root cause of that idr\nbug seperately but this should make inotify immune to that issue.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6251ec0ae2eb9e9e96689422358c2fdb35c63768",
      "tree": "94e22bcd7941ccafd458d232048e5b8c0000c3aa",
      "parents": [
        "885a5fb5b120a5c7e0b3baad7b0feb5a89f76c18"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Tue Jan 12 05:38:32 2010 +0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 14:13:18 2010 -0800"
      },
      "message": "drm/i915: fix eDP pipe mask\n\neDP could be on pipe A or B.\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "885a5fb5b120a5c7e0b3baad7b0feb5a89f76c18",
      "tree": "c0a636d952445b79d7e2301e1796b6c175c27c8a",
      "parents": [
        "500a8cc466a24e2fbc4c86ef9c6467ae2ffdeb0c"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Tue Jan 12 05:38:31 2010 +0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 14:13:06 2010 -0800"
      },
      "message": "drm/i915: fix pixel color depth setting on eDP\n\nOriginal DP mode_valid check didn\u0027t take pixel color depth into account,\nwhich made one 1600x900 eDP panel\u0027s mode check invalid because of overclock,\nbut actually this 6bpc panel does can work with x1 lane at 2.7G. This one\ntrys to take bpp value properly both in mode validation and mode setting.\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "500a8cc466a24e2fbc4c86ef9c6467ae2ffdeb0c",
      "tree": "4f7878b036dd1767bc7e6f9d7db3b1907b8271db",
      "parents": [
        "33814341f22f13cec17e8d7fbf6f7e8000e3efa4"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Wed Jan 13 11:19:52 2010 +0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 14:12:47 2010 -0800"
      },
      "message": "drm/i915: parse eDP panel color depth from VBT block\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "33814341f22f13cec17e8d7fbf6f7e8000e3efa4",
      "tree": "7f43f096589e6900fb11db0033d3e68086d7c475",
      "parents": [
        "21bd770b9c90ee6a53a9dbb6293513a8c7654cfe"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jan 14 20:48:02 2010 +0000"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 14:08:01 2010 -0800"
      },
      "message": "drm/i915: disable LVDS downclock by default\n\nMany platform support this feature, and it can provide significant\npower savings when the reduced refresh rate is low.  However, on some\nplatforms a secondary (reduced) timing is provided but not actually\nsupported by the hardware.  This results in undesirable flicker at\nruntime.\n\nSo disable the feature by default, but allow users to opt-in to the\nreduced clock behavior with a new module parameter, lvds_downclock,\nthat can be set to 1 to enable the feature.\n\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "21bd770b9c90ee6a53a9dbb6293513a8c7654cfe",
      "tree": "58cab5035d881a5fb83e6f4e1f892fdbdbdc9bd1",
      "parents": [
        "6036ae7e9486352d5d1cbbee89186986e28e11fd"
      ],
      "author": {
        "name": "Zhao Yakui",
        "email": "yakui.zhao@intel.com",
        "time": "Wed Jan 13 14:10:50 2010 +0000"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 14:06:19 2010 -0800"
      },
      "message": "drm/i915: Fix the incorrect cursor A bit definition in DSPFW2 register\n\nSigned-off-by: Zhao Yakui \u003cyakui.zhao@intel.com\u003e\nReviewed-by: Eric Anholt \u003ceric@anholt.net\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "6036ae7e9486352d5d1cbbee89186986e28e11fd",
      "tree": "7feb680969ece6baafb9769ef20271b800c42499",
      "parents": [
        "c7c85101afd0cb8ce497456d12ee1cad4aad152f"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 13:04:48 2010 -0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 13:05:36 2010 -0800"
      },
      "message": "drm/i915: Remove chatty execbuf failure message.\n\nSuggested-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e (in principle)\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "c7c85101afd0cb8ce497456d12ee1cad4aad152f",
      "tree": "a3c78ab193d4d73e4a23898b9ca531114345d9c4",
      "parents": [
        "b9241ea31fae4887104e5d1b3b18f4009c25a0c4"
      ],
      "author": {
        "name": "Zou Nan hai",
        "email": "Nanhai.zou@intel.com",
        "time": "Fri Jan 15 10:29:06 2010 +0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Fri Jan 15 11:23:49 2010 -0800"
      },
      "message": "drm/i915: remove loop in Ironlake interrupt handler\n\nOn Ironlake, there is an interrupt master control bit. With the bit\ndisabled before clearing IIR, we do not need to handle extra interrupt\nin a loop. This patch removes the loop in Ironlake interrupt handler.\nIt fixed irq lost issue on some Ironlake platforms.\n\nCc: Stable Team \u003cstable@kernel.org\u003e\nSigned-off-by: Zou Nan hai \u003cNanhai.zou@intel.com\u003e\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "1d2c867c941d635e53e8ad7bf37d060bb5b25ec5",
      "tree": "d80a1290173729543866ce4763797fa7b4b471fc",
      "parents": [
        "7a1110e861b2666ac09f5708d6fbe71d18ce64bb"
      ],
      "author": {
        "name": "Russ Anderson",
        "email": "rja@sgi.com",
        "time": "Fri Jan 15 12:09:09 2010 -0600"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jan 15 11:09:04 2010 -0800"
      },
      "message": "x86, uv: Ensure hub revision set for all ACPI modes.\n\nEnsure that UV hub revision is set for all ACPI modes.\n\nSigned-off-by: Russ Anderson \u003crja@sgi.com\u003e\nLKML-Reference: \u003c20100115180908.GB7757@sgi.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "7a1110e861b2666ac09f5708d6fbe71d18ce64bb",
      "tree": "2958eb36de538330534c94ccfc5960133b3a4633",
      "parents": [
        "e68266b7001a4e29af083716f0c36c0d6dbb1b39"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Jan 12 15:09:04 2010 -0600"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jan 15 11:08:55 2010 -0800"
      },
      "message": "x86, uv: Add function retrieving node controller revision number\n\nAdd function for determining the revision id of the SGI UV\nnode controller chip (HUB). This function is needed in a\nsubsequent patch.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nLKML-Reference: \u003c20100112210904.GA24546@sgi.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "926311fd7dabcd284a1e8a87a3e2bb5f929c0c60",
      "tree": "359f6f98944e3ec6870aa6f0bb9a9cef43872005",
      "parents": [
        "7284ce6c9f6153d1777df5f310c959724d1bd446"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Jan 11 20:58:21 2010 +0100"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Fri Jan 15 10:45:58 2010 +0100"
      },
      "message": "amd64_edac: Ensure index stays within bounds in amd64_get_scrub_rate\n\nAdd a missing iterator variable thus fixing the conditional of the\nfor-loop in amd64_get_scrub_rate().\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "3ce2f76f5dfeeacd128db9e5cd6945bac0ea0b2a",
      "tree": "1052bfb05b5f30b248808747be6c61f7d694e353",
      "parents": [
        "0a3727ffb99f09481da6110ac0067550129a768d"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Fri Jan 15 17:04:42 2010 +0900"
      },
      "committer": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Fri Jan 15 17:04:42 2010 +0900"
      },
      "message": "ARM: MINI2440: Fixup __initdata usage\n\nRemove some of the __initdata tags which are currently inappropriate for\nplatform_device and some of the platform data. These can be returned once\nsupport for copying platform devices and data is added.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\n"
    },
    {
      "commit": "0a3727ffb99f09481da6110ac0067550129a768d",
      "tree": "64b1288db960f57d7b8ba682970cdd1def3c3d29",
      "parents": [
        "d3cf4489d5a50ca9dc82473cd105f97fc7f720e0"
      ],
      "author": {
        "name": "Uri Yosef",
        "email": "uri.yosef@gmail.com",
        "time": "Fri Jan 15 16:56:05 2010 +0900"
      },
      "committer": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Fri Jan 15 16:56:05 2010 +0900"
      },
      "message": "ARM: MINI2440: Fix crash on boot due to improper __initdata qualifier\n\nThis patch fix mini2440 crash on boot due to improper __initdata\nqualifier on mini2440_led1_pdata.\n\nSigned-off-by: Uri Yosef \u003curi.yosef@gmail.com\u003e\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\n"
    },
    {
      "commit": "d1303dd1d6b220cab375f24fa91a5640e54e169e",
      "tree": "6b37f4fe7ef331e18c35919ae2fab0ce9da5e6b9",
      "parents": [
        "16da27a8bc7a0d050686d1b2e9efb53fab9ed226"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:40 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:14 2010 -0500"
      },
      "message": "tracing/filters: Add comment for match callbacks\n\nWe should be clear on 2 things:\n\n- the length parameter of a match callback includes\n  tailing \u0027\\0\u0027.\n\n- the string to be searched might not be NULL-terminated.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8770.7000608@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "16da27a8bc7a0d050686d1b2e9efb53fab9ed226",
      "tree": "def65eba395d9b2a2531f87dc1dd051be7845e92",
      "parents": [
        "b2af211f284eb1bef19fbb85fc8ef551bb1e7460"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:27 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:12 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n\nMATCH_FULL matching for PTR_STRING is not working correctly:\n\n  # echo \u0027func \u003d\u003d vt\u0027 \u003e events/bkl/lock_kernel/filter\n  # echo 1 \u003e events/bkl/lock_kernel/enable\n  ...\n  # cat trace\n   Xorg-1484  [000]  1973.392586: lock_kernel: ... func\u003dvt_ioctl()\n    gpm-1402  [001]  1974.027740: lock_kernel: ... func\u003dvt_ioctl()\n\nWe should pass to regex.match(..., len) the length (including \u0027\\0\u0027)\nof the source string instead of the length of the pattern string.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8763.5070707@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b2af211f284eb1bef19fbb85fc8ef551bb1e7460",
      "tree": "251b3848de7478ad9123c92fc7c95a464bd84f78",
      "parents": [
        "d5f1fb53353edc38da326445267c1df0c9676df2"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:11 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:11 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n\nThe @str might not be NULL-terminated if it\u0027s of type\nDYN_STRING or STATIC_STRING, so we should use strnstr()\ninstead of strstr().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8753.2000102@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d5f1fb53353edc38da326445267c1df0c9676df2",
      "tree": "42def644ebd0d343f2eba9e625f4b9b1ea8a36f0",
      "parents": [
        "a3291c14ecf0a995e30d993b7f2cae031de98727"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:55 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:09 2010 -0500"
      },
      "message": "lib: Introduce strnstr()\n\nIt differs strstr() in that it limits the length to be searched\nin the first string.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8743.6030805@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a3291c14ecf0a995e30d993b7f2cae031de98727",
      "tree": "46b0ed65d437fdffba57866af1ce51d0d15a7673",
      "parents": [
        "285caad415f459f336247932b4db95a571357a02"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:41 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:07 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_END_ONLY filter matching\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but event filtering incorrectly disallows strings\nlike bar_foo_foo:\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8735.6070604@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "285caad415f459f336247932b4db95a571357a02",
      "tree": "b4372c5336dee9919f26c61a4808ef08993a43a6",
      "parents": [
        "751e9983ee276cb150e8812b1d995f6035a63878"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:21 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:05 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n\nMATCH_FRONT_ONLY actually is a full matching:\n\n  # ./perf record -R -f -a -e lock:lock_acquire \\\n\t--filter \u0027name ~rcu_*\u0027 sleep 1\n  # ./perf trace\n  (no output)\n\nWe should pass the length of the pattern string to strncmp().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8721.5090301@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "751e9983ee276cb150e8812b1d995f6035a63878",
      "tree": "7f9abfa2ea11bcc2ccfa9922af17811d5020fa69",
      "parents": [
        "b82a4045f7962483a78a874343dc6e31b79c96c1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:02 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:03 2010 -0500"
      },
      "message": "ftrace: Fix MATCH_END_ONLY function filter\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but ftrace filter incorrectly disallows strings\nlike bar_foo_foo:\n\n  # echo \u0027*io\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter | grep \u0027req_bio_endio\u0027\n  # cat available_filter_functions | grep \u0027req_bio_endio\u0027\n  req_bio_endio\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E870E.6060607@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d3cf4489d5a50ca9dc82473cd105f97fc7f720e0",
      "tree": "13a298e20b5586c28c3701e99b9af872db47f796",
      "parents": [
        "9b96918a974fcd6c9e752cc8b28157f776c601d3"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Jan 13 13:57:04 2010 +0000"
      },
      "committer": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Fri Jan 15 09:52:51 2010 +0900"
      },
      "message": "ARM: SMDK6410: Specify no GPIO for B_PWR_5V regulator\n\nSince the fixed voltage regulator grew support for GPIO based\nenables and GPIO 0 is valid on some systems we need to specify\nthat there is no valid GPIO enable control.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\n"
    },
    {
      "commit": "75136d48e85915fd78a072f22897622b5d4c1814",
      "tree": "4ec35fb2c0e53ddd69dbe80615be35f87caeaa9d",
      "parents": [
        "ea4407834118405ef419e9b07794ceacadc01bae"
      ],
      "author": {
        "name": "Markus Pietrek",
        "email": "Markus.Pietrek@emtrion.de",
        "time": "Fri Jan 15 08:33:20 2010 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jan 15 08:33:20 2010 +0900"
      },
      "message": "serial: sh-sci: using correct fifo size for SCIF and SCIFA ports.\n\nThe sh-sci driver used the wrong fifosize for PORT_SCIFA and PORT_SCIF\nports. If an incorrect size is used, the serial core will enforce an\nearly shutdown on the port, especially with baudrates \u003c 9600.\n\nSigned-off-by: Markus Pietrek \u003cMarkus.Pietrek@emtrion.de\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "ea4407834118405ef419e9b07794ceacadc01bae",
      "tree": "1362babe2bc49f8bdf48d76d9ec4a845f2b8faae",
      "parents": [
        "61c39bb354a1f791ba6f562b766a72e508a036ee"
      ],
      "author": {
        "name": "NISHIMOTO Hiroki",
        "email": "nishimoto.hiroki@renesas.com",
        "time": "Fri Jan 15 08:25:00 2010 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jan 15 08:25:00 2010 +0900"
      },
      "message": "sh: mach-ecovec24: Add motion sensor driver support.\n\nThis patch adds support for the lis3lv02d motion sensor connected via\ni2c on the Ecovec board. Tested with evtest.\n\nSigned-off-by: NISHIMOTO Hiroki \u003cnishimoto.hiroki@renesas.com\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "8d9525048c74786205b99f3fcd05a839721edfb7",
      "tree": "e09c056c9888410aea680deda092ca9b85fc77e2",
      "parents": [
        "cd7bec6ad80188394a8ea857ff1aa3512fc2282a"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Jan 14 09:33:28 2010 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Jan 15 08:23:57 2010 +1100"
      },
      "message": "security: correct error returns for get/set security with private inodes\n\nCurrently, the getsecurity and setsecurity operations return zero for\nkernel private inodes, where xattrs are not available directly to\nuserspace.\n\nThis confuses some applications, and does not conform to the\nman page for getxattr(2) etc., which state that these syscalls\nshould return ENOTSUP if xattrs are not supported or disabled.\n\nNote that in the listsecurity case, we still need to return zero\nas we don\u0027t know which other xattr handlers may be active.\n\nFor discussion of userland confusion, see:\nhttp://www.mail-archive.com/bug-coreutils@gnu.org/msg17988.html\n\nThis patch corrects the error returns so that ENOTSUP is reported\nto userspace as required.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by:  Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\n"
    },
    {
      "commit": "44c36aed43b57ea12140957bebe76d711fbed653",
      "tree": "b284727dbb13c047195bd58f7322030c3987477b",
      "parents": [
        "abd4d609057dd4faa22837376fdef2433e4c33b1"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Thu Jan 14 13:21:35 2010 -0500"
      },
      "committer": {
        "name": "Matt Turner",
        "email": "mattst88@gmail.com",
        "time": "Thu Jan 14 13:21:35 2010 -0500"
      },
      "message": "alpha: cpumask_of_node() should handle -1 as a node\n\nCC: Richard Henderson \u003crth@twiddle.net\u003e\nCC: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Matt Turner \u003cmattst88@gmail.com\u003e\nCC: linux-alpha@vger.kernel.org\nCC: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCC: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\n"
    },
    {
      "commit": "abd4d609057dd4faa22837376fdef2433e4c33b1",
      "tree": "6338684b02a0c82bb60d3ce65fb8eb1ecdde4ae6",
      "parents": [
        "61c39bb354a1f791ba6f562b766a72e508a036ee"
      ],
      "author": {
        "name": "Matt Turner",
        "email": "mattst88@gmail.com",
        "time": "Thu Jan 14 13:15:20 2010 -0500"
      },
      "committer": {
        "name": "Matt Turner",
        "email": "mattst88@gmail.com",
        "time": "Thu Jan 14 13:15:20 2010 -0500"
      },
      "message": "alpha: add myself as a maintainer, and drop mention of 2.4\n\nCC: Richard Henderson \u003crth@twiddle.net\u003e\nCC: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCC: linux-alpha@vger.kernel.org\nSigned-off-by: Matt Turner \u003cmattst88@gmail.com\u003e\n"
    },
    {
      "commit": "61c39bb354a1f791ba6f562b766a72e508a036ee",
      "tree": "1186cd23bc50089c8506b19403220ca46542de2c",
      "parents": [
        "4a24eef671614aea479eac6c9ce5fa2cf590ee76",
        "c5406079780f0f687316732353f49c3357504428"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 14 08:37:53 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 14 08:37:53 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6:\n  [S390] tape_char: add missing compat_ptr conversion\n  [S390] zcrypt: add sanity check before copy_from_user()\n  [S390] unwire sys_recvmmsg again\n  [S390] con3215: remove empty ioctl function\n  [S390] dasd: add proper compat pointer conversion for symmetrix ioctl\n  [S390] mmap: add missing compat_ptr conversion to both mmap compat syscalls\n  [S390] bug: implement arch specific __WARN macro\n  [S390] Move __cpu_logical_map to smp.c\n  [S390] tape_block: remove ioctl function\n  [S390] smp: remove volatile type quilifier from __cpu_logical_map\n  [S390] smp: setup smp_processor_id early\n  [S390] use helpers for rlimits\n  [S390] fs3270: add missing compat ptr conversion\n  [S390] vmcp: add missing compat ptr conversion\n  [S390] cio: add missing compat ptr conversion\n  [S390] dasd: add missing compat ptr conversion\n  [S390] remove superfluous TIF_USEDFPU bit\n  [S390] duplicate SIGTRAP on signal delivery.\n  [S390] clear TIF_SINGLE_STEP for new process.\n  [S390] fix loading of PER control registers for utrace.\n"
    },
    {
      "commit": "4a24eef671614aea479eac6c9ce5fa2cf590ee76",
      "tree": "4861f88217c3468cdeae74ad427a4129220e45f2",
      "parents": [
        "4f374425b625d48445e370f63c896283eb2a9bae",
        "cd65c3c7d1081290b7365897c2290a84aa967d4d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 14 08:36:15 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 14 08:36:15 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (34 commits)\n  net: fix build erros with CONFIG_BUG\u003dn, CONFIG_GENERIC_BUG\u003dn\n  ipv6: skb_dst() can be NULL in ipv6_hop_jumbo().\n  tg3: Update copyright and driver version\n  tg3: Disable 5717 serdes and B0 support\n  tg3: Add reliable serdes detection for 5717 A0\n  tg3: Fix std rx prod ring handling\n  tg3: Fix std prod ring nicaddr for 5787 and 57765\n  sfc: Fix conditions for MDIO self-test\n  sfc: Fix polling for slow MCDI operations\n  e1000e: workaround link issues on busy hub in half duplex on 82577/82578\n  e1000e: MDIO slow mode should always be done for 82577\n  ixgbe: update copyright dates\n  ixgbe: Do not attempt to perform interrupts in netpoll when down\n  cfg80211: fix refcount imbalance when wext is disabled\n  mac80211: fix queue selection for data frames on monitor interfaces\n  iwlwifi: silence buffer overflow warning\n  iwlwifi: disable tx on beacon update notification\n  iwlwifi: fix iwl_queue_used bug when read_ptr \u003d\u003d write_ptr\n  mac80211: fix endian error\n  mac80211: add missing sanity checks for action frames\n  ...\n"
    },
    {
      "commit": "9b96918a974fcd6c9e752cc8b28157f776c601d3",
      "tree": "7aaf19ea7af8a9dc1cc79425934fd56bdf87ccfb",
      "parents": [
        "004b35063296b6772fa72404a35b498f1e71e87e"
      ],
      "author": {
        "name": "Ramax Lo",
        "email": "ramaxlo@gmail.com",
        "time": "Thu Jan 14 10:15:05 2010 +0800"
      },
      "committer": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Thu Jan 14 11:25:44 2010 +0900"
      },
      "message": "ARM: S3C: NAND: Check the existence of nr_map before copying\n\nSince the structure field nr_map is optional, we need to check whether the\nchip number map is provided to avoid unexpected NULL pointer exception.\n\nSigned-off-by: Ramax Lo \u003cramaxlo@gmail.com\u003e\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\n"
    },
    {
      "commit": "cd65c3c7d1081290b7365897c2290a84aa967d4d",
      "tree": "e68ac534c2701dd6ec98fa2af3a2d1eaf609d0fe",
      "parents": [
        "2570a4f5428bcdb1077622342181755741e7fa60"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "opurdila@ixiacom.com",
        "time": "Wed Jan 13 18:10:36 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 18:10:36 2010 -0800"
      },
      "message": "net: fix build erros with CONFIG_BUG\u003dn, CONFIG_GENERIC_BUG\u003dn\n\nFixed build errors introduced by commit 7ad6848c (ip: fix mc_loop\nchecks for tunnels with multicast outer addresses)\n\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2570a4f5428bcdb1077622342181755741e7fa60",
      "tree": "b96fe3146042d5ada1172ec6fad6b661368313d2",
      "parents": [
        "ba5b0bfa06b6fbee03c6889046e9adcefa5d2c20"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:27:37 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:27:37 2010 -0800"
      },
      "message": "ipv6: skb_dst() can be NULL in ipv6_hop_jumbo().\n\nThis fixes CERT-FI FICORA #341748\n\nDiscovered by Olli Jarva and Tuomo Untinen from the CROSS\nproject at Codenomicon Ltd.\n\nJust like in CVE-2007-4567, we can\u0027t rely upon skb_dst() being\nnon-NULL at this point.  We fixed that in commit\ne76b2b2567b83448c2ee85a896433b96150c92e6 (\"[IPV6]: Do no rely on\nskb-\u003edst before it is assigned.\")\n\nHowever commit 483a47d2fe794328d29950fe00ce26dd405d9437 (\"ipv6: added\nnet argument to IP6_INC_STATS_BH\") put a new version of the same bug\ninto this function.\n\nComplicating analysis further, this bug can only trigger when network\nnamespaces are enabled in the build.  When namespaces are turned off,\nthe dev_net() does not evaluate it\u0027s argument, so the dereference\nwould not occur.\n\nSo, for a long time, namespaces couldn\u0027t be turned on unless SYSFS was\ndisabled.  Therefore, this code has largely been disabled except by\npeople turning it on explicitly for namespace development.\n\nWith help from Eugene Teo \u003ceugene@redhat.com\u003e\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba5b0bfa06b6fbee03c6889046e9adcefa5d2c20",
      "tree": "b785505656b57774b51f1163af884a5a0316afbb",
      "parents": [
        "55dffe79b34e2af98bd1315f1e00c2fc6a7a7078"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Tue Jan 12 10:11:40 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:18:54 2010 -0800"
      },
      "message": "tg3: Update copyright and driver version\n\nThis patch updates the copyright notice for 2010 and updates the version\nnumber to 3.106.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nReviewed-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55dffe79b34e2af98bd1315f1e00c2fc6a7a7078",
      "tree": "96ecbf679f582be592f8bd68d20b5bb99521f8df",
      "parents": [
        "d1ec96af77df611d1728f3bb70289f83a02df1ea"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Tue Jan 12 10:11:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:18:54 2010 -0800"
      },
      "message": "tg3: Disable 5717 serdes and B0 support\n\nThe B0 revision of the 5717 will not get enough testing by the time\n2.6.33 ships.  Since the kernel is already at RC3, serdes support\nwill require too many patches to fix.  For these reasons, this patch\ndisables 5717 serdes support and will refuse to attach to all 5717\ndevices that are later than an A0 revision.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nReviewed-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d1ec96af77df611d1728f3bb70289f83a02df1ea",
      "tree": "b6268f532c7d40272da4149f27518afa0dd2191b",
      "parents": [
        "86cfe4ff02a51294cb2c974a8bedc7f648491df9"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Tue Jan 12 10:11:38 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:18:53 2010 -0800"
      },
      "message": "tg3: Add reliable serdes detection for 5717 A0\n\nThe serdes status bit does not work as intended for the 5717 A0.\nThis patch implements an alternative detection scheme that will only be\nvalid for A0 revisions.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nReviewed-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "86cfe4ff02a51294cb2c974a8bedc7f648491df9",
      "tree": "d2241293b99f32b07ec339ae7c05d96717fea8e4",
      "parents": [
        "13fa95b0398d65885a79c6e95a09976ee9f8c009"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Tue Jan 12 10:11:37 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:18:53 2010 -0800"
      },
      "message": "tg3: Fix std rx prod ring handling\n\nThere are some tg3 devices that require the driver to post new rx\nbuffers in smaller increments.  Commit\n4361935afe3abc3e5a93006b99197fac1fabbd50, \"tg3: Consider\nrx_std_prod_idx a hw mailbox\" changed how the driver tracks the rx\nproducer ring updates, but it does not make any special considerations\nfor the above-mentioned devices.  For those devices, it is possible for\nthe driver to hit the special case path, which updates the hardware\nmailbox register but skips updating the shadow software mailbox member.\nIf the special case path represents the final mailbox update for this\nISR iteration, the hardware and software mailbox values will be out of\nsync.  Ultimately, this will cause the driver to use a stale mailbox\nvalue on the next iteration, which will appear to the hardware as a\nlarge rx buffer update.  Bad things ensue.\n\nThe fix is to update the software shadow mailbox member when the special\ncase path is taken.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nReviewed-by: Michael Chan \u003cmchan@broadcom.com\u003e\nReported-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13fa95b0398d65885a79c6e95a09976ee9f8c009",
      "tree": "85296ba31a76727f4fb6fa0040d023a6a5151dd0",
      "parents": [
        "f3766c26a5d00189e5c0965c66f01956d15a92d6"
      ],
      "author": {
        "name": "Matt Carlson",
        "email": "mcarlson@broadcom.com",
        "time": "Tue Jan 12 10:11:36 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:18:52 2010 -0800"
      },
      "message": "tg3: Fix std prod ring nicaddr for 5787 and 57765\n\nCommit 87668d352aa8d135bd695a050f18bbfc7b50b506, titled \"tg3: Don\u0027t\ntouch RCB nic addresses\", tried to avoid assigning the nic address of\nthe standard producer ring.  Unfortunately, the default nic address is\nnot correct for the 5787, the 5755M, or the 57765.  This patch\nreenables the old behavior and opts out of the assignment only\nfor the 5717.\n\nSigned-off-by: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nReviewed-by: Michael Chan \u003cmchan@broadcom.com\u003e\nTested-by: Chow Loong Jin \u003chyperair@ubuntu.com\u003e\nTested-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f3766c26a5d00189e5c0965c66f01956d15a92d6",
      "tree": "2cab8ee42ef7479d41f660ba5f1fcfd4d8706f08",
      "parents": [
        "55029c1d65158aea9672c5dfadb43a57f23e3100"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Wed Jan 13 10:59:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:12:47 2010 -0800"
      },
      "message": "sfc: Fix conditions for MDIO self-test\n\nThe MDIO self-test should not be run on boards without an MDIO PHY,\nsuch as SFN5122F-R3 and later revisions.  It should also not try to\naddress a specific MMD in an MDIO clause 22 PHY.  Check the\nmode_support field to decide which mode to use, if any.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55029c1d65158aea9672c5dfadb43a57f23e3100",
      "tree": "2222cdb3a0c81256f89d5e26b299239e66497769",
      "parents": [
        "baf86c9d36826fab0160251bbc87dfab3af48a21"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Wed Jan 13 04:34:25 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:12:47 2010 -0800"
      },
      "message": "sfc: Fix polling for slow MCDI operations\n\nWhen the interface is down and we are using polled mode for MCDI\noperations, we busy-wait for completion for approximately 1 jiffy\nusing udelay() and then back off to schedule().  But the completion\nwill not wake the task, since we are using polled mode!  We must use\nschedule_timeout_uninterruptible() instead.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "baf86c9d36826fab0160251bbc87dfab3af48a21",
      "tree": "dc12219fe6c866cf5fc689eb303cecb4353fcdfb",
      "parents": [
        "fddaa1aff881c98f524221236af98ce70dcd04cf"
      ],
      "author": {
        "name": "Bruce Allan",
        "email": "bruce.w.allan@intel.com",
        "time": "Wed Jan 13 01:53:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:12:46 2010 -0800"
      },
      "message": "e1000e: workaround link issues on busy hub in half duplex on 82577/82578\n\nThis patch removes a delay in hardware after every received packet allowing\nmore time for transmitted packets to go out in between received packets in\nhalf duplex.\n\nSigned-off-by: Bruce Allan \u003cbruce.w.allan@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fddaa1aff881c98f524221236af98ce70dcd04cf",
      "tree": "49f21c354f986851ab3650d4a9d274b1ed34cc8e",
      "parents": [
        "8c47eaa76600cebc4869a42abb4568925ade6c47"
      ],
      "author": {
        "name": "Bruce Allan",
        "email": "bruce.w.allan@intel.com",
        "time": "Wed Jan 13 01:52:49 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:12:46 2010 -0800"
      },
      "message": "e1000e: MDIO slow mode should always be done for 82577\n\nA previous 82577 workaround that set the MDIO access speed to slow mode for\nevery PHY register read/write when the cable is unplugged should instead\nset the access mode to always be slow before any PHY register access.\nSince the mode bit gets cleared when the PHY is reset, set the mode after\nevery PHY reset.\n\nSigned-off-by: Bruce Allan \u003cbruce.w.allan@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8c47eaa76600cebc4869a42abb4568925ade6c47",
      "tree": "7bbd92dd3d33376f040f9fddd086951970daefe4",
      "parents": [
        "1a647bd213d85c88507967104aea79b2649e6a6e"
      ],
      "author": {
        "name": "Shannon Nelson",
        "email": "shannon.nelson@intel.com",
        "time": "Wed Jan 13 01:49:34 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:12:45 2010 -0800"
      },
      "message": "ixgbe: update copyright dates\n\nSigned-off-by: Shannon Nelson \u003cshannon.nelson@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a647bd213d85c88507967104aea79b2649e6a6e",
      "tree": "67fd2d5d2a5f02b0000ef11650e04a946eb9d2a0",
      "parents": [
        "ff30b3642c1f56a5ae6522b78e82be867086c637"
      ],
      "author": {
        "name": "Alexander Duyck",
        "email": "alexander.h.duyck@intel.com",
        "time": "Wed Jan 13 01:49:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 17:12:45 2010 -0800"
      },
      "message": "ixgbe: Do not attempt to perform interrupts in netpoll when down\n\nThis patch resolves issues seen when running netconsole and rebooting via\nreboot -f.  The issue was due to the fact that we were attempting to\nperform interrupt actions when the q_vectors and rings had already been\nfreed via the ixgbe_shutdown routines.\n\nSigned-off-by: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nAcked-by:  Mallikarjuna R Chilakala \u003cmallikarjuna.chilakala@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "4f374425b625d48445e370f63c896283eb2a9bae"
}
