)]}'
{
  "log": [
    {
      "commit": "0b893f0f37736c1e26655f04d51706dfba417171",
      "tree": "05cb4754030b59b9ed6a72843b830098ae8f056c",
      "parents": [
        "c477e60b6689d36121f7cabaea449c4014705078"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Sun Jul 17 16:07:23 2011 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Thu Jul 21 18:04:46 2011 -0700"
      },
      "message": "netfilter: xt_qtaguid: add uid permission checks during ctrl/stats access\n\n* uid handling\n - Limit UID impersonation to processes with a gid in AID_NET_BW_ACCT.\n   This affects socket tagging, and data removal.\n - Limit stats lookup to own uid or the process gid is in AID_NET_BW_STATS.\n   This affects stats lookup.\n\n* allow pacifying the module\n  Setting passive to Y/y will make the module return immediately on\n  external stimulus.\n  No more stats and silent success on ctrl writes.\n  Mainly used when one suspects this module of misbehaving.\n\nChange-Id: I83990862d52a9b0922aca103a0f61375cddeb7c4\nSigned-off-by: JP Abgrall \u003cjpa@google.com\u003e\n"
    },
    {
      "commit": "adf0760ceb775202fe7838c21eede5788f2ac31d",
      "tree": "be3d3c73b598d7af930e9cf5a3626c67873f0a0d",
      "parents": [
        "fec502d9a18bbe8045c67bd4f9d3a1ade4e78555"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 21 11:39:17 2011 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 21 15:26:03 2011 -0700"
      },
      "message": "USB: gadget: f_accessory: Add ioctl to detect USB accessory attached at boot\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "9a736a21691d48cc6e956ce8d49849823fd6af40",
      "tree": "e04b1bfcd4b39cb71c9213c0e0518bccd3a1d8e7",
      "parents": [
        "ce4022b8d1c9e1b380dc5177f955bfe5f1327e3e"
      ],
      "author": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Wed Jun 15 17:21:57 2011 -0700"
      },
      "committer": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Fri Jul 15 15:26:45 2011 -0700"
      },
      "message": "Move x86_64 idle notifiers to generic\n\nMove the x86_64 idle notifiers originally by Andi Kleen and Venkatesh\nPallipadi to generic.\n\nChange-Id: Idf29cda15be151f494ff245933c12462643388d5\nAcked-by: Nicolas Pitre \u003cnicolas.pitre@linaro.org\u003e\nSigned-off-by: Todd Poynor \u003ctoddpoynor@google.com\u003e\n"
    },
    {
      "commit": "ce4022b8d1c9e1b380dc5177f955bfe5f1327e3e",
      "tree": "932bd019c44b27ff5d33822206d1386f95eab70a",
      "parents": [
        "f558e1e53997b661e85de0ba96c2596c9cc97b4f"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 14 19:42:42 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jul 15 17:18:14 2011 -0400"
      },
      "message": "USB: gadget: f_mtp: Add support for sending MTP header during file transfer\n\nMTP_SEND_FILE_WITH_HEADER ioctl allows sending a file with the 12 byte header\nprepended at the beginning.\nThis is to allow MTP to use a single packet for the data phase instead of two.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "bb5b603036b99d80527b222dc98eba4ee8341020",
      "tree": "dcce59f7dd49c7f3f40ccaa1973dae94381f8fff",
      "parents": [
        "497f5982a7eae716267213a8fdc3ea4c6ac09e5e"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 12 19:53:24 2011 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 12 22:58:35 2011 -0700"
      },
      "message": "cgroup: Add generic cgroup subsystem permission checks\n\nRather than using explicit euid \u003d\u003d 0 checks when trying to move\ntasks into a cgroup via CFS, move permission checks into each\nspecific cgroup subsystem. If a subsystem does not specify a\n\u0027allow_attach\u0027 handler, then we fall back to doing our checks\nthe old way.\n\nUse the \u0027allow_attach\u0027 handler for the \u0027cpu\u0027 cgroup to allow\nnon-root processes to add arbitrary processes to a \u0027cpu\u0027 cgroup\nif it has the CAP_SYS_NICE capability set.\n\nThis version of the patch adds a \u0027allow_attach\u0027 handler instead\nof reusing the \u0027can_attach\u0027 handler.  If the \u0027can_attach\u0027 handler\nis reused, a new cgroup that implements \u0027can_attach\u0027 but not\nthe permission checks could end up with no permission checks\nat all.\n\nChange-Id: Icfa950aa9321d1ceba362061d32dc7dfa2c64f0c\nOriginal-Author: San Mehat \u003csan@google.com\u003e\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "75c56a81116e51c5cf15c0641906d0745188cd16",
      "tree": "c1d8e7def5bbb099a39d5e9ccfb13508ea5ca46a",
      "parents": [
        "b4294d618e8a19bb47826e51ae52b9fb2fe05f80",
        "620917de59eeb934b9f8cf35cc2d95c1ac8ed0fc"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 12 20:10:37 2011 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 12 20:10:37 2011 -0700"
      },
      "message": "Merge commit \u0027v3.0-rc7\u0027 into android-3.0\n"
    },
    {
      "commit": "511b7e32086dc7f9c18341f8702745e7ce092354",
      "tree": "9f74cee6965c784d2fd2a98b93ee8f1aaa7a9196",
      "parents": [
        "ab246b81fb40a587e89f281fe9255833b7540220"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Tue Jun 21 11:14:49 2011 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Mon Jul 11 16:39:01 2011 -0700"
      },
      "message": "netfilter: adding the original quota2 from xtables-addons\n\nThe original xt_quota in the kernel is plain broken:\n  - counts quota at a per CPU level\n    (was written back when ubiquitous SMP was just a dream)\n  - provides no way to count across IPV4/IPV6.\n\nThis patch is the original unaltered code from:\n  http://sourceforge.net/projects/xtables-addons\n\n  at commit e84391ce665cef046967f796dd91026851d6bbf3\n\nChange-Id: I19d49858840effee9ecf6cff03c23b45a97efdeb\nSigned-off-by: JP Abgrall \u003cjpa@google.com\u003e\n"
    },
    {
      "commit": "ab246b81fb40a587e89f281fe9255833b7540220",
      "tree": "0434320e4a18914f566811227e22886cea99622f",
      "parents": [
        "2fc52d645892c7a5fb9915b09351f934ea03f15d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jun 24 15:58:51 2011 -0700"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon Jul 11 15:30:10 2011 -0700"
      },
      "message": "USB: otg: add otg id notifier utiltiies\n\nAdd a otg_id notifier to allow multiple drivers to cooperate to\ndetermine the type of cable connected to a USB connector without\nrequiring direct calls between the drivers.\n\nChange-Id: Ic5675f1a89daf85b17336765de24e4bdb6df6348\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "2fc52d645892c7a5fb9915b09351f934ea03f15d",
      "tree": "877aca8c73506a143c85ab7fc1f35859886368fa",
      "parents": [
        "89daa34bcd42062221247172ea2653521dc89e6c"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Thu Jul 07 23:20:27 2011 -0700"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon Jul 11 15:30:09 2011 -0700"
      },
      "message": "pda_power: add support for using otg transceiver events\n\nIf the platform data sets the use_otg_notifier flag,\nthe driver will now register an otg notifier callback and listen\nto transceiver events for AC/USB plug-in events instead. This would\nnormally be used by not specifying is_xx_online callbacks and\nnot specifying any irqs so the state machine is completely driven\nfrom OTG xceiver events.\n\nChange-Id: Ic4b3bc4010f299156e41fd2411696c7ff5a88e92\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "f607e7fc5fb94d92030c4527287e9c149ddf9e65",
      "tree": "49ac9020b87f028e947580425fef84222332fdf8",
      "parents": [
        "453a9bf347f1e22a5bb3605ced43b2366921221d"
      ],
      "author": {
        "name": "Jean-François Dagenais",
        "email": "dagenaisj@sonatest.com",
        "time": "Fri Jul 08 15:39:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 08 21:14:44 2011 -0700"
      },
      "message": "w1: ds1wm: add a reset recovery parameter\n\nThis fixes a regression in 3.0 reported by Paul Parsons regarding the\nremoval of the msleep(1) in the ds1wm_reset() function:\n\n: The linux-3.0-rc4 DS1WM 1-wire driver is logging \"bus error, retrying\"\n: error messages on an HP iPAQ hx4700 PDA (XScale-PXA270):\n:\n: \u003csnip\u003e\n: Driver for 1-wire Dallas network protocol.\n: DS1WM w1 busmaster driver - (c) 2004 Szabolcs Gyurko\n: 1-Wire driver for the DS2760 battery monitor  chip  - (c) 2004-2005, Szabolcs Gyurko\n: ds1wm ds1wm: pass: 1 bus error, retrying\n: ds1wm ds1wm: pass: 2 bus error, retrying\n: ds1wm ds1wm: pass: 3 bus error, retrying\n: ds1wm ds1wm: pass: 4 bus error, retrying\n: ds1wm ds1wm: pass: 5 bus error, retrying\n: ...\n:\n: The visible result is that the battery charging LED is erratic; sometimes\n: it works, mostly it doesn\u0027t.\n:\n: The linux-2.6.39 DS1WM 1-wire driver worked OK.  I haven\u0027t tried 3.0-rc1,\n: 3.0-rc2, or 3.0-rc3.\n\nThis sleep should not be required on normal circuitry provided the\npull-ups on the bus are correctly adapted to the slaves.  Unfortunately,\nthis is not always the case.  The sleep is restored but as a parameter to\nthe probe function in the pdata.\n\n[akpm@linux-foundation.org: coding-style fixes]\nReported-by: Paul Parsons \u003clost.distance@yahoo.com\u003e\nTested-by: Paul Parsons \u003clost.distance@yahoo.com\u003e\nSigned-off-by: Jean-François Dagenais \u003cdagenaisj@sonatest.com\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0226f8a76da6bc97c9bb4af3fd2f6eeb03c5b0b0",
      "tree": "103470d3c4a2865d1cafc4d4527f97d62660fc5d",
      "parents": [
        "814cdea670616252e4cdf297a07b02ce59698bf1"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Thu Jul 07 17:27:59 2011 -0700"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Fri Jul 08 14:15:44 2011 -0700"
      },
      "message": "plist: Remove the need to supply locks to plist heads\n\nThis was legacy code brought over from the RT tree and\nis no longer necessary.\n\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Daniel Walker \u003cdwalker@codeaurora.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLink: http://lkml.kernel.org/r/1310084879-10351-2-git-send-email-dima@android.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "814cdea670616252e4cdf297a07b02ce59698bf1",
      "tree": "c4a5665995e813c252b07f1e863166059bfb5bcb",
      "parents": [
        "487ffb052891a552fecf865ad4b24bbe7945a413",
        "fe0d42203cb5616eeff68b14576a0f7e2dd56625"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Thu Jul 07 17:55:44 2011 -0700"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Thu Jul 07 17:55:44 2011 -0700"
      },
      "message": "Merge commit \u0027v3.0-rc6\u0027 into android-3.0\n"
    },
    {
      "commit": "2a9d6df425d7b46b23cbc8673b2dfefa4678abdb",
      "tree": "a6ec2ee125a3c02342b48a2e4a36598c26ca2b8b",
      "parents": [
        "c902ce1bfb40d8b049bd2319b388b4b68b04bc27",
        "7b28afe01ab6ffb5f152f47831b44933facd2328"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:22:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:22:26 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-block:\n  drbd: we should write meta data updates with FLUSH FUA\n  drbd: fix limit define, we support 1 PiByte now\n  drbd: when receive times out on meta socket, also check last receive time on data socket\n  drbd: account bitmap IO during resync as resync-(related-)-io\n  drbd: don\u0027t cond_resched_lock with IRQs disabled\n  drbd: add missing spinlock to bitmap receive\n  drbd: Use the correct max_bio_size when creating resync requests\n  cfq-iosched: make code consistent\n  cfq-iosched: fix a rcu warning\n"
    },
    {
      "commit": "c902ce1bfb40d8b049bd2319b388b4b68b04bc27",
      "tree": "7dcb1e8378f8ec8e7ad7684cd26e9d5a1b5b22d1",
      "parents": [
        "075d9db13183c102770dc6cefabfee1b832f9614"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Jul 07 12:19:48 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:21:56 2011 -0700"
      },
      "message": "FS-Cache: Add a helper to bulk uncache pages on an inode\n\nAdd an FS-Cache helper to bulk uncache pages on an inode.  This will\nonly work for the circumstance where the pages in the cache correspond\n1:1 with the pages attached to an inode\u0027s page cache.\n\nThis is required for CIFS and NFS: When disabling inode cookie, we were\nreturning the cookie and setting cifsi-\u003efscache to NULL but failed to\ninvalidate any previously mapped pages.  This resulted in \"Bad page\nstate\" errors and manifested in other kind of errors when running\nfsstress.  Fix it by uncaching mapped pages when we disable the inode\ncookie.\n\nThis patch should fix the following oops and \"Bad page state\" errors\nseen during fsstress testing.\n\n  ------------[ cut here ]------------\n  kernel BUG at fs/cachefiles/namei.c:201!\n  invalid opcode: 0000 [#1] SMP\n  Pid: 5, comm: kworker/u:0 Not tainted 2.6.38.7-30.fc15.x86_64 #1 Bochs Bochs\n  RIP: 0010: cachefiles_walk_to_object+0x436/0x745 [cachefiles]\n  RSP: 0018:ffff88002ce6dd00  EFLAGS: 00010282\n  RAX: ffff88002ef165f0 RBX: ffff88001811f500 RCX: 0000000000000000\n  RDX: 0000000000000000 RSI: 0000000000000100 RDI: 0000000000000282\n  RBP: ffff88002ce6dda0 R08: 0000000000000100 R09: ffffffff81b3a300\n  R10: 0000ffff00066c0a R11: 0000000000000003 R12: ffff88002ae54840\n  R13: ffff88002ae54840 R14: ffff880029c29c00 R15: ffff88001811f4b0\n  FS:  00007f394dd32720(0000) GS:ffff88002ef00000(0000) knlGS:0000000000000000\n  CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n  CR2: 00007fffcb62ddf8 CR3: 000000001825f000 CR4: 00000000000006e0\n  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n  DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n  Process kworker/u:0 (pid: 5, threadinfo ffff88002ce6c000, task ffff88002ce55cc0)\n  Stack:\n   0000000000000246 ffff88002ce55cc0 ffff88002ce6dd58 ffff88001815dc00\n   ffff8800185246c0 ffff88001811f618 ffff880029c29d18 ffff88001811f380\n   ffff88002ce6dd50 ffffffff814757e4 ffff88002ce6dda0 ffffffff8106ac56\n  Call Trace:\n   cachefiles_lookup_object+0x78/0xd4 [cachefiles]\n   fscache_lookup_object+0x131/0x16d [fscache]\n   fscache_object_work_func+0x1bc/0x669 [fscache]\n   process_one_work+0x186/0x298\n   worker_thread+0xda/0x15d\n   kthread+0x84/0x8c\n   kernel_thread_helper+0x4/0x10\n  RIP  cachefiles_walk_to_object+0x436/0x745 [cachefiles]\n  ---[ end trace 1d481c9af1804caa ]---\n\nI tested the uncaching by the following means:\n\n (1) Create a big file on my NFS server (104857600 bytes).\n\n (2) Read the file into the cache with md5sum on the NFS client.  Look in\n     /proc/fs/fscache/stats:\n\n\tPages  : mrk\u003d25601 unc\u003d0\n\n (3) Open the file for read/write (\"bash 5\u003c\u003e/warthog/bigfile\").  Look in proc\n     again:\n\n\tPages  : mrk\u003d25601 unc\u003d25601\n\nReported-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-and-Tested-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\ncc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27a3b735b70651f28db03e5f92775a40661ba7a6",
      "tree": "9f300b93aa34381aa1d3121e9d53e8c8e1623a24",
      "parents": [
        "85746e429f8e5dc8c5c0beadc0f099cb1feab93e",
        "161b6ae0e067e421b20bb35caf66bdb405c929ac",
        "140fe3b1ab9c082182ef13359fab4ddba95c24c3",
        "e4c2fb0d5776b58049d2556b456144a4db3fe5a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:17:45 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:17:45 2011 -0700"
      },
      "message": "Merge branches \u0027core-urgent-for-linus\u0027, \u0027perf-urgent-for-linus\u0027 and \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  debugobjects: Fix boot crash when kmemleak and debugobjects enabled\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  jump_label: Fix jump_label update for modules\n  oprofile, x86: Fix race in nmi handler while starting counters\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Disable (revert) SCHED_LOAD_SCALE increase\n  sched, cgroups: Fix MIN_SHARES on 64-bit boxen\n"
    },
    {
      "commit": "f2230156c74b8923ff7b84eab955761471104b9b",
      "tree": "2760d5c604c47cae00d834bf9a3d05a2ee8d16cd",
      "parents": [
        "75dc25a8708d905afffd6da5f4fe69356f4eac33"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Jul 06 16:53:21 2011 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Jul 06 19:45:30 2011 -0700"
      },
      "message": "ion: fix ION_HEAP_\u003cxxx\u003e_MASK definitions\n\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "e4c2fb0d5776b58049d2556b456144a4db3fe5a9",
      "tree": "04cebbb24f524408728492cfeb396d66aa6127e4",
      "parents": [
        "cd62287e364c0d15d517c6ced4e4808b54711475"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Jul 05 10:56:32 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 05 11:28:18 2011 +0200"
      },
      "message": "sched: Disable (revert) SCHED_LOAD_SCALE increase\n\nAlex reported that commit c8b281161df (\"sched: Increase\nSCHED_LOAD_SCALE resolution\") caused a power usage regression\nunder light load as it increases the number of load-balance\noperations and keeps idle cpus from staying idle.\n\nTime has run out to find the root cause for this release so\ndisable the feature for v3.0 until we can figure out what\ncauses the problem.\n\nReported-by: \"Alex, Shi\" \u003calex.shi@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Nikhil Rao \u003cncrao@google.com\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-m4onxn0sxnyn5iz9o88eskc3@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aababb9766f0e874da26a17acbbec867bf9501f0",
      "tree": "4dea1f04d8c6d66ce00bb0ab49b939c165c3f33b",
      "parents": [
        "b2bc4782191cb574924a1d09f48083ea8b33a93b",
        "3e86f1d8e397b1ef59a97910089e16a99e8f31f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 04 15:53:53 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 04 15:53:53 2011 -0700"
      },
      "message": "Merge branch \u0027fbdev-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x\n\n* \u0027fbdev-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x:\n  vesafb: fix memory leak\n  fbdev: amba: Link fb device to its parent\n  fsl-diu-fb: remove check for pixel clock ranges\n  udlfb: Correct sub-optimal resolution selection.\n  hecubafb: add module_put on error path in hecubafb_probe()\n  sm501fb: fix section mismatch warning\n  gx1fb: Fix section mismatch warnings\n  fbdev: sh_mobile_meram: Correct pointer check for YCbCr chroma plane\n"
    },
    {
      "commit": "e6ee124528d520d429bf40303340e8be0bcefdaa",
      "tree": "e2d4fd0c9d9c5c6444e5425310f11cf54b134c2b",
      "parents": [
        "c80005ae9ef788dce825629ea07e658714a2adad"
      ],
      "author": {
        "name": "Rebecca Schultz Zavin",
        "email": "rebecca@android.com",
        "time": "Thu Jun 30 12:19:55 2011 -0700"
      },
      "committer": {
        "name": "Rebecca Schultz Zavin",
        "email": "rebecca@android.com",
        "time": "Thu Jun 30 15:15:14 2011 -0700"
      },
      "message": "gpu: ion: Several fixes\n\nFix some cases where locks were not released on error paths\nChange heap-\u003eprio to heap-\u003eid to make meaning clearer\nFix kernel doc to match sources\n"
    },
    {
      "commit": "7b28afe01ab6ffb5f152f47831b44933facd2328",
      "tree": "a537d78f49fa1b959c9a453f459c1acd767a939f",
      "parents": [
        "726e99ab88db059fe1422e15376ae404f8c66eb4",
        "86e1e98e5c6b4edab97e2b058466ef553cfd878e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Jun 30 10:10:50 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Jun 30 10:10:50 2011 +0200"
      },
      "message": "Merge branch \u0027for-3.0-important\u0027 of git://git.drbd.org/linux-2.6-drbd into for-linus\n"
    },
    {
      "commit": "15b493d11fcce3c5547e3d7fb6d90e11ffe12777",
      "tree": "0638c261a1ca0ce54e1cbeb3ddaab10075717b27",
      "parents": [
        "cb6518cbef5e3e36b7ae90fcab610a52ea7e9fc0"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Jun 28 09:48:48 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jun 30 09:23:45 2011 +0200"
      },
      "message": "drbd: fix limit define, we support 1 PiByte now\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "c80005ae9ef788dce825629ea07e658714a2adad",
      "tree": "2fe6bc7a2b3341fa1465ce5a63a696d7f5e3ad97",
      "parents": [
        "e55d4fa96762fd767a3b6d842c904e994db6bb2e"
      ],
      "author": {
        "name": "Rebecca Schultz Zavin",
        "email": "rebecca@android.com",
        "time": "Wed Jun 29 19:44:29 2011 -0700"
      },
      "committer": {
        "name": "Rebecca Schultz Zavin",
        "email": "rebecca@android.com",
        "time": "Wed Jun 29 19:44:29 2011 -0700"
      },
      "message": "gpu: ion: Add ION Memory Manager\n\nSigned-off-by: Rebecca Schultz Zavin \u003crebecca@android.com\u003e\n"
    },
    {
      "commit": "e55d4fa96762fd767a3b6d842c904e994db6bb2e",
      "tree": "c74157e01cb128cb97f106a50cfadc4c8b872c41",
      "parents": [
        "e32c14667e4fe9f16ac9b918d15d29abd2315a55",
        "b0af8dfdd67699e25083478c63eedef2e72ebd85"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 29 13:54:42 2011 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 29 13:54:42 2011 -0700"
      },
      "message": "Merge commit \u0027v3.0-rc5\u0027 into android-3.0\n"
    },
    {
      "commit": "c89b857ce6d803905b2c9d71bc9effdd286c45ed",
      "tree": "6cf4a6e23f68f3b65906210dccb272ab2f9c5c74",
      "parents": [
        "2e34b429a404675dc4fc4ad2ee339eea028da3ca",
        "663dd6dcaf7e95526e469e91f41972a9c0cca30c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 28 11:15:36 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 28 11:15:36 2011 -0700"
      },
      "message": "Merge branch \u0027driver-core-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* \u0027driver-core-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  Connector: Correctly set the error code in case of success when dispatching receive callbacks\n  Connector: Set the CN_NETLINK_USERS correctly\n  pti: PTI semantics fix in pti_tty_cleanup.\n  pti: ENXIO error case memory leak PTI fix.\n  pti: double-free security PTI fix\n  drivers:misc: ti-st: fix skipping of change remote baud\n  drivers/base/platform.c: don\u0027t mark platform_device_register_resndata() as __init_or_module\n  st_kim: Handle case of no device found for ID 0\n  firmware: fix GOOGLE_SMI kconfig dependency warning\n"
    },
    {
      "commit": "04b905942b482092a547798a2477f21e32a8f65d",
      "tree": "9ad2837587f5ce284f830432fec3569ecf44fbcb",
      "parents": [
        "d90ce8711ceb516de823ae878270e5a21d11dede",
        "3bc46b312b1486b1fe2db4246a34a30160d26d8d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 28 11:14:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 28 11:14:55 2011 -0700"
      },
      "message": "Merge branch \u0027tty-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6\n\n* \u0027tty-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6:\n  serial: bcm63xx_uart: fix irq storm after rx fifo overrun.\n  amba pl011: platform data for reg lockup and glitch v2\n  amba pl011: workaround for uart registers lockup\n  tty: n_gsm: improper skb_pull() use was leaking framed data\n  tty: n_gsm: Fixed logic to decode break signal from modem status\n  TTY: ntty, add one more sanity check\n  TTY: ldisc, do not close until there are readers\n  8250: Fix capabilities when changing the port type\n  8250_pci: Fix missing const from merges\n  ARM: SAMSUNG: serial: Fix on handling of one clock source for UART\n  serial: ioremap warning fix for jsm driver.\n  8250_pci: add -ENODEV code for Intel EG20T PCH\n"
    },
    {
      "commit": "08142579b6ca35883c1ed066a2681de6f6917062",
      "tree": "00735ed37753533f3b645714770b4fb036b5f7e0",
      "parents": [
        "9b679320a5fbf46454011e5c62e0b8991b0956d1"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jun 27 16:18:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 18:00:13 2011 -0700"
      },
      "message": "mm: fix assertion mapping-\u003enrpages \u003d\u003d 0 in end_writeback()\n\nUnder heavy memory and filesystem load, users observe the assertion\nmapping-\u003enrpages \u003d\u003d 0 in end_writeback() trigger.  This can be caused by\npage reclaim reclaiming the last page from a mapping in the following\nrace:\n\n\tCPU0\t\t\t\tCPU1\n  ...\n  shrink_page_list()\n    __remove_mapping()\n      __delete_from_page_cache()\n        radix_tree_delete()\n\t\t\t\t\tevict_inode()\n\t\t\t\t\t  truncate_inode_pages()\n\t\t\t\t\t    truncate_inode_pages_range()\n\t\t\t\t\t      pagevec_lookup() - finds nothing\n\t\t\t\t\t  end_writeback()\n\t\t\t\t\t    mapping-\u003enrpages !\u003d 0 -\u003e BUG\n        page-\u003emapping \u003d NULL\n        mapping-\u003enrpages--\n\nFix the problem by doing a reliable check of mapping-\u003enrpages under\nmapping-\u003etree_lock in end_writeback().\n\nAnalyzed by Jay \u003cjinshan.xiong@whamcloud.com\u003e, lost in LKML, and dug out\nby Miklos Szeredi \u003cmszeredi@suse.de\u003e.\n\nCc: Jay \u003cjinshan.xiong@whamcloud.com\u003e\nCc: Miklos Szeredi \u003cmszeredi@suse.de\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\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": "507c5f1224014f9956e604ee8703b3bbea7da4a4",
      "tree": "8af568077785c6159d5698741215b282788d661c",
      "parents": [
        "2b4b2482e70eba10dd98653a3a5ac68126565e24"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Jun 27 16:18:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 18:00:13 2011 -0700"
      },
      "message": "include/linux/compat.h: declare compat_sys_sendmmsg()\n\nThis is required for tilegx to be able to use the compat unistd.h header\nwhere compat_sys_sendmmsg() is now mentioned.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d9d90e5eb70e09903dadff42099b6c948f814050",
      "tree": "c3ab73df6dee61f9403bfd819a6b0cb9f3ca6085",
      "parents": [
        "94c1e62df4494b79782cb9c7279f827212d1de70"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jun 27 16:18:04 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 18:00:12 2011 -0700"
      },
      "message": "tmpfs: add shmem_read_mapping_page_gfp\n\nAlthough it is used (by i915) on nothing but tmpfs, read_cache_page_gfp()\nis unsuited to tmpfs, because it inserts a page into pagecache before\ncalling the filesystem\u0027s -\u003ereadpage: tmpfs may have pages in swapcache\nwhich only it knows how to locate and switch to filecache.\n\nAt present tmpfs provides a -\u003ereadpage method, and copes with this by\ncopying pages; but soon we can simplify it by removing its -\u003ereadpage.\nProvide shmem_read_mapping_page_gfp() now, ready for that transition,\n\nExport shmem_read_mapping_page_gfp() and add it to list in shmem_fs.h,\nwith shmem_read_mapping_page() inline for the common mapping_gfp case.\n\n(shmem_read_mapping_page_gfp or shmem_read_cache_page_gfp? Generally the\nread_mapping_page functions use the mapping\u0027s -\u003ereadpage, and the\nread_cache_page functions use the supplied filler, so I think\nread_cache_page_gfp was slightly misnamed.)\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "94c1e62df4494b79782cb9c7279f827212d1de70",
      "tree": "43013fb403e592c535e6a7770be105b635ac9b63",
      "parents": [
        "072441e21ddcd1140606b7d4ef6eab579a86b0b3"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jun 27 16:18:03 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 18:00:12 2011 -0700"
      },
      "message": "tmpfs: take control of its truncate_range\n\n2.6.35\u0027s new truncate convention gave tmpfs the opportunity to control\nits file truncation, no longer enforced from outside by vmtruncate().\nWe shall want to build upon that, to handle pagecache and swap together.\n\nSlightly redefine the -\u003etruncate_range interface: let it now be called\nbetween the unmap_mapping_range()s, with the filesystem responsible for\ndoing the truncate_inode_pages_range() from it - just as the filesystem\nis nowadays responsible for doing that from its -\u003esetattr.\n\nLet\u0027s rename shmem_notify_change() to shmem_setattr().  Instead of\ncalling the generic truncate_setsize(), bring that code in so we can\ncall shmem_truncate_range() - which will later be updated to perform its\nown variant of truncate_inode_pages_range().\n\nRemove the punch_hole unmap_mapping_range() from shmem_truncate_range():\nnow that the COW\u0027s unmap_mapping_range() comes after -\u003etruncate_range,\nthere is no need to call it a third time.\n\nExport shmem_truncate_range() and add it to the list in shmem_fs.h, so\nthat i915_gem_object_truncate() can call it explicitly in future; get\nthis patch in first, then update drm/i915 once this is available (until\nthen, i915 will just be doing the truncate_inode_pages() twice).\n\nThough introduced five years ago, no other filesystem is implementing\n-\u003etruncate_range, and its only other user is madvise(,,MADV_REMOVE): we\nexpect to convert it to fallocate(,FALLOC_FL_PUNCH_HOLE,,) shortly,\nwhereupon -\u003etruncate_range can be removed from inode_operations -\nshmem_truncate_range() will help i915 across that transition too.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "072441e21ddcd1140606b7d4ef6eab579a86b0b3",
      "tree": "6f059ad83c09dfbeb1def29e805839db3e5bf85f",
      "parents": [
        "5b8ba10198a109f8a02380648c5d29000caa9c55"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jun 27 16:18:02 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 18:00:12 2011 -0700"
      },
      "message": "mm: move shmem prototypes to shmem_fs.h\n\nBefore adding any more global entry points into shmem.c, gather such\nprototypes into shmem_fs.h.  Remove mm\u0027s own declarations from swap.h,\nbut for now leave the ones in mm.h: because shmem_file_setup() and\nshmem_zero_setup() are called from various places, and we should not\nforce other subsystems to update immediately.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d258b25d947521c8b913154db61ec55198243f8",
      "tree": "4f74f744797e92a0555705dc121ac8aaa041e750",
      "parents": [
        "a64227b0855c42b5c037011afa80580ca3228527"
      ],
      "author": {
        "name": "Vitaliy Ivanov",
        "email": "vitalivanov@gmail.com",
        "time": "Mon Jun 27 19:07:08 2011 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 16:06:19 2011 -0700"
      },
      "message": "Fix some kernel-doc warnings\n\nFix \u0027make htmldocs\u0027 warnings:\n\n  Warning(/include/linux/hrtimer.h:153): No description found for parameter \u0027clockid\u0027\n  Warning(/include/linux/device.h:604): Excess struct/union/enum/typedef member \u0027of_match\u0027 description in \u0027device\u0027\n  Warning(/include/net/sock.h:349): Excess struct/union/enum/typedef member \u0027sk_rmem_alloc\u0027 description in \u0027sock\u0027\n\nSigned-off-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a64227b0855c42b5c037011afa80580ca3228527",
      "tree": "8633fc0989fd6e53c9f3f0bb5774c1a54bd5f18e",
      "parents": [
        "c6830c22603aaecf65405af23f6da2d55892f9cb",
        "c31b55cd4eaf050bb5a15bd8251da1b3c7edeb1c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 14:55:43 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 14:55:43 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc:\n  mmc: queue: bring discard_granularity/alignment into line with SCSI\n  mmc: queue: append partition subname to queue thread name\n  mmc: core: make erase timeout calculation allow for gated clock\n  mmc: block: switch card to User Data Area when removing the block driver\n  mmc: sdio: reset card during power_restore\n  mmc: cb710: fix #ifdef HAVE_EFFICIENT_UNALIGNED_ACCESS\n  mmc: sdhi: DMA slave ID 0 is invalid\n  mmc: tmio: fix regression in TMIO_MMC_WRPROTECT_DISABLE handling\n  mmc: omap_hsmmc: use original sg_len for dma_unmap_sg\n  mmc: omap_hsmmc: fix ocr mask usage\n  mmc: sdio: fix runtime PM path during driver removal\n  mmc: Add PCI fixup quirks for Ricoh 1180:e823 reader\n  mmc: sdhi: fix module unloading\n  mmc: of_mmc_spi: add NO_IRQ define to of_mmc_spi.c\n  mmc: vub300: fix null dereferences in error handling\n"
    },
    {
      "commit": "c6830c22603aaecf65405af23f6da2d55892f9cb",
      "tree": "19458ebc7c32bef8a4ed59630cabb5785b1bdc11",
      "parents": [
        "af4087e0e682df12bdffec5cfafc2fec9208716e"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Thu Jun 16 17:28:07 2011 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 14:13:09 2011 -0700"
      },
      "message": "Fix node_start/end_pfn() definition for mm/page_cgroup.c\n\ncommit 21a3c96 uses node_start/end_pfn(nid) for detection start/end\nof nodes. But, it\u0027s not defined in linux/mmzone.h but defined in\n/arch/???/include/mmzone.h which is included only under\nCONFIG_NEED_MULTIPLE_NODES\u003dy.\n\nThen, we see\n  mm/page_cgroup.c: In function \u0027page_cgroup_init\u0027:\n  mm/page_cgroup.c:308: error: implicit declaration of function \u0027node_start_pfn\u0027\n  mm/page_cgroup.c:309: error: implicit declaration of function \u0027node_end_pfn\u0027\n\nSo, fixiing page_cgroup.c is an idea...\n\nBut node_start_pfn()/node_end_pfn() is a very generic macro and\nshould be implemented in the same manner for all archs.\n(m32r has different implementation...)\n\nThis patch removes definitions of node_start/end_pfn() in each archs\nand defines a unified one in linux/mmzone.h. It\u0027s not under\nCONFIG_NEED_MULTIPLE_NODES, now.\n\nA result of macro expansion is here (mm/page_cgroup.c)\n\nfor !NUMA\n start_pfn \u003d ((\u0026contig_page_data)-\u003enode_start_pfn);\n  end_pfn \u003d ({ pg_data_t *__pgdat \u003d (\u0026contig_page_data); __pgdat-\u003enode_start_pfn + __pgdat-\u003enode_spanned_pages;});\n\nfor NUMA (x86-64)\n  start_pfn \u003d ((node_data[nid])-\u003enode_start_pfn);\n  end_pfn \u003d ({ pg_data_t *__pgdat \u003d (node_data[nid]); __pgdat-\u003enode_start_pfn + __pgdat-\u003enode_spanned_pages;});\n\nChangelog:\n - fixed to avoid using \"nid\" twice in node_end_pfn() macro.\n\nReported-and-acked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nReported-and-tested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Mel Gorman \u003cmgorman@suse.de\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5220cc9382e11ca955ce946ee6a5bac577bb14ff",
      "tree": "7949f52a5ca0c7fa74ec8e49ba89a00d0e4114a9",
      "parents": [
        "726ce0656b99ac6436b590d83613fe8447b4769e",
        "155d109b5f52ffd749219b27702462dcd9cf4f8d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 24 08:42:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 24 08:42:35 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-block:\n  block: add REQ_SECURE to REQ_COMMON_MASK\n  block: use the passed in @bdev when claiming if partno is zero\n  block: Add __attribute__((format(printf...) and fix fallout\n  block: make disk_block_events() properly wait for work cancellation\n  block: remove non-syncing __disk_block_events() and fold it into disk_block_events()\n  block: don\u0027t use non-syncing event blocking in disk_check_events()\n  cfq-iosched: fix locking around ioc-\u003eioc_data assignment\n"
    },
    {
      "commit": "39785eb1d3e6c58cc8bf8f6990956a58037ecc75",
      "tree": "b896a48b483803124c940ff99e7ffdfd4a4a171c",
      "parents": [
        "9377c51752970c305fae29ac634501fde44378cb"
      ],
      "author": {
        "name": "Timur Tabi",
        "email": "timur@freescale.com",
        "time": "Thu Jun 23 20:20:26 2011 +0000"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jun 24 17:08:49 2011 +0900"
      },
      "message": "fsl-diu-fb: remove check for pixel clock ranges\n\nThe Freescale DIU framebuffer driver defines two constants, MIN_PIX_CLK and\nMAX_PIX_CLK, that are supposed to represent the lower and upper limits of\nthe pixel clock.  These values, however, are true only for one platform\nclock rate (533MHz) and only for the MPC8610.  So the actual range for\nthe pixel clock is chip-specific, which means the current values are almost\nalways wrong.  The chance of an out-of-range pixel clock being used are also\nremote.\n\nRather than try to detect an out-of-range clock in the DIU driver, we depend\non the board-specific pixel clock function (e.g. p1022ds_set_pixel_clock)\nto clamp the pixel clock to a supported value.\n\nSigned-off-by: Timur Tabi \u003ctimur@freescale.com\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "68d0080f1e222757c85606d3eaf81b5c4aa7719f",
      "tree": "5f177f7571a56e7dfe3888f67fcc86532be8235c",
      "parents": [
        "f957db4fcdd8f03e186aa8f041f4049e76ab741c",
        "a5f76d5eba157bf637beb2dd18026db2917c512e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 22 21:08:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 22 21:08:52 2011 -0700"
      },
      "message": "Merge branch \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:\n  PCI / PM: Block races between runtime PM and system sleep\n  PM / Domains: Update documentation\n  PM / Runtime: Handle clocks correctly if CONFIG_PM_RUNTIME is unset\n  PM: Fix async resume following suspend failure\n  PM: Free memory bitmaps if opening /dev/snapshot fails\n  PM: Rename dev_pm_info.in_suspend to is_prepared\n  PM: Update documentation regarding sysdevs\n  PM / Runtime: Update doc: usage count no longer incremented across system PM\n"
    },
    {
      "commit": "2992c4bd5742b31a0ee00a76eee9c1c284507418",
      "tree": "b2af7d776ec6a4ae69b5f245ee0586359a99eabd",
      "parents": [
        "e08f6d4131ab964420f0bcabecc68d75fb49df79",
        "1650add23578b5ca35c1f1e863987180a8c03779"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 21 18:20:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 21 18:20:55 2011 -0700"
      },
      "message": "Merge branch \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:\n  NFS: Fix decode_secinfo_maxsz\n  NFSv4.1: Fix an off-by-one error in pnfs_generic_pg_test\n  NFSv4.1: Fix some issues with pnfs_generic_pg_test\n  NFSv4.1: file layout must consider pg_bsize for coalescing\n  pnfs-obj: No longer needed to take an extra ref at add_device\n  SUNRPC: Ensure the RPC client only quits on fatal signals\n  NFSv4: Fix a readdir regression\n  nfs4.1: mark layout as bad on error path in _pnfs_return_layout\n  nfs4.1: prevent race that allowed use of freed layout in _pnfs_return_layout\n  NFSv4.1: need to put_layout_hdr on _pnfs_return_layout error path\n  NFS: (d)printks should use %zd for ssize_t arguments\n  NFSv4.1: fix break condition in pnfs_find_lseg\n  nfs4.1: fix several problems with _pnfs_return_layout\n  NFSv4.1: allow zero fh array in filelayout decode layout\n  NFSv4.1: allow nfs_fhget to succeed with mounted on fileid\n  NFSv4.1: Fix a refcounting issue in the pNFS device id cache\n  NFSv4.1: deprecate headerpadsz in CREATE_SESSION\n  NFS41: do not update isize if inode needs layoutcommit\n  NLM: Don\u0027t hang forever on NLM unlock requests\n  NFS: fix umount of pnfs filesystems\n"
    },
    {
      "commit": "6d0e0e84f66d32c33511984dd3badd32364b863c",
      "tree": "215916af1632fbaff9d46676d14dafd52143d578",
      "parents": [
        "8440f4b19494467883f8541b7aa28c7bbf6ac92b"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Sat Jun 18 22:42:09 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jun 21 23:20:20 2011 +0200"
      },
      "message": "PM: Fix async resume following suspend failure\n\nThe PM core doesn\u0027t handle suspend failures correctly when it comes to\nasynchronously suspended devices.  These devices are moved onto the\ndpm_suspended_list as soon as the corresponding async thread is\nstarted up, and they remain on the list even if they fail to suspend\nor the sleep transition is cancelled before they get suspended.  As a\nresult, when the PM core unwinds the transition, it tries to resume\nthe devices even though they were never suspended.\n\nThis patch (as1474) fixes the problem by adding a new \"is_suspended\"\nflag to dev_pm_info.  Devices are resumed only if the flag is set.\n\n[rjw:\n * Moved the dev-\u003epower.is_suspended check into device_resume(),\n   because we need to complete dev-\u003epower.completion and clear\n   dev-\u003epower.is_prepared too for devices whose\n   dev-\u003epower.is_suspended flags are unset.\n * Fixed __device_suspend() to avoid setting dev-\u003epower.is_suspended\n   if async_error is different from zero.]\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "f76b168b6f117a49d36307053e1acbe30580ea5b",
      "tree": "2aa0cc19b27764d8eb55ce85eaf226a60ce27756",
      "parents": [
        "78420884e680da8fbc3240de2d3106437042381e"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Sat Jun 18 20:22:23 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jun 21 23:19:50 2011 +0200"
      },
      "message": "PM: Rename dev_pm_info.in_suspend to is_prepared\n\nThis patch (as1473) renames the \"in_suspend\" field in struct\ndev_pm_info to \"is_prepared\", in preparation for an upcoming change.\nThe new name is more descriptive of what the field really means.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "890879cfa08f5ceaa09810611f46e890f7d57ff6",
      "tree": "c8898ae7a5bf00f315cfaa13d58a08aafa5002f9",
      "parents": [
        "56299378726d5f2ba8d3c8cbbd13cb280ba45e4f",
        "de1b794130b130e77ffa975bb58cb843744f9ae5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 21 10:22:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 21 10:22:35 2011 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  jbd2: Fix oops in jbd2_journal_remove_journal_head()\n  jbd2: Remove obsolete parameters in the comments for some jbd2 functions\n  ext4: fixed tracepoints cleanup\n  ext4: use FIEMAP_EXTENT_LAST flag for last extent in fiemap\n  ext4: Fix max file size and logical block counting of extent format file\n  ext4: correct comments for ext4_free_blocks()\n"
    },
    {
      "commit": "79568f5be06c91071697c065f01f3ebfbeb25a61",
      "tree": "81fc2bb54bebffc7ef22390bfc37c7ba818a30df",
      "parents": [
        "f5fc5567dd24c15b1d95aa9ee2aaada04d835a0c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 20 20:13:49 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 20 20:13:49 2011 -0700"
      },
      "message": "vfs: i_state needs to be \u0027unsigned long\u0027 for now\n\nCommit 13e12d14e2dc (\"vfs: reorganize \u0027struct inode\u0027 layout a bit\")\nmoved things around a bit changed i_state to be unsigned int instead of\nunsigned long.  That was to help structure layout for the 64-bit case,\nand shrink \u0027struct inode\u0027 a bit (admittedly that only happened when\nspinlock debugging was on and i_flags didn\u0027t pack with i_lock).\n\nHowever, Meelis Roos reports that this results in unaligned exceptions\non sprc, and it turns out that the bit-locking primitives that we use\nfor the I_NEW bit want to use the bitops.  Which want \u0027unsigned long\u0027,\nnot \u0027unsigned int\u0027.\n\nWe really should fix the bit locking code to not have that kind of\nrequirement, but that\u0027s a much bigger change.  So for now, revert that\nfield back to \u0027unsigned long\u0027 (but keep the other re-ordering changes\nfrom the commit that caused this).\n\nAndi points out that we have played games with this in \u0027struct page\u0027, so\nit\u0027s solvable with other hacks too, but since right now the struct inode\nsize advantage only happens with some rare config options, it\u0027s not\nworth fighting.\n\nIt _would_ be worth fixing the bitlocking code, though.  Especially\nsince there is no type safety in the bitlocking code (this never caused\nany warnings, and worked fine on x86-64, because the bitlocks take a\n\u0027void *\u0027 and x86-64 doesn\u0027t care that deeply about alignment).  So it\u0027s\ncurrently a very easy problem to trigger by mistake and never notice.\n\nReported-by: Meelis Roos \u003cmroos@linux.ee\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eda0841094a3a232357ca10a24b40da461db3fcf",
      "tree": "08f6ffd17275e6fab7bd8014d849d2fce46632d9",
      "parents": [
        "6e158d21986fa15d21fd32cf241d167d4d741ae3",
        "105f4622104848ff1ee1f644d661bef9dec3eb27"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 20 20:10:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 20 20:10:52 2011 -0700"
      },
      "message": "Merge branch \u0027for-2.6.40\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.40\u0027 of git://linux-nfs.org/~bfields/linux:\n  nfsd4: fix break_lease flags on nfsd open\n  nfsd: link returns nfserr_delay when breaking lease\n  nfsd: v4 support requires CRYPTO\n  nfsd: fix dependency of nfsd on auth_rpcgss\n"
    },
    {
      "commit": "36698206504fca9198b8563f1fc2c9e38e063e11",
      "tree": "f02b63c9b35a7962786b5dcdb1af15a63f5de1cf",
      "parents": [
        "ef46222e7b56e728e423527d430cb2013c595491",
        "482e0cd3dbaa70f2a2bead4b5f2c0d203ef654ba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 20 20:09:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 20 20:09:15 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  devcgroup_inode_permission: take \"is it a device node\" checks to inlined wrapper\n  fix comment in generic_permission()\n  kill obsolete comment for follow_down()\n  proc_sys_permission() is OK in RCU mode\n  reiserfs_permission() doesn\u0027t need to bail out in RCU mode\n  proc_fd_permission() is doesn\u0027t need to bail out in RCU mode\n  nilfs2_permission() doesn\u0027t need to bail out in RCU mode\n  logfs doesn\u0027t need -\u003epermission() at all\n  coda_ioctl_permission() is safe in RCU mode\n  cifs_permission() doesn\u0027t need to bail out in RCU mode\n  bad_inode_permission() is safe from RCU mode\n  ubifs: dereferencing an ERR_PTR in ubifs_mount()\n"
    },
    {
      "commit": "934abcf52a9831d35fb578048b737313e5a9e717",
      "tree": "4074b53eac0c6fec645b622ec421e01054e77bbd",
      "parents": [
        "d8cfaaaf6817a0279f0faef8ee5ddd52de12839a"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Mon Jun 20 12:41:46 2011 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Mon Jun 20 13:15:08 2011 -0700"
      },
      "message": "netfilter: add xt_qtaguid matching module\n\nThis module allows tracking stats at the socket level for given UIDs.\nIt replaces xt_owner.\nIf the --uid-owner is not specified, it will just count stats based on\nwho the skb belongs to. This will even happen on incoming skbs as it\nlooks into the skb via xt_socket magic to see who owns it.\nIf an skb is lost, it will be assigned to uid\u003d0.\n\nTo control what sockets of what UIDs are tagged by what, one uses:\n  echo t $sock_fd $accounting_tag $the_billed_uid \\\n     \u003e /proc/net/xt_qtaguid/ctrl\n So whenever an skb belongs to a sock_fd, it will be accounted against\n   $the_billed_uid\n  and matching stats will show up under the uid with the given\n   $accounting_tag.\n\nBecause the number of allocations for the stats structs is not that big:\n  ~500 apps * 32 per app\nwe\u0027ll just do it atomic. This avoids walking lists many times, and\nthe fancy worker thread handling. Slabs will grow when needed later.\n\nIt use netdevice and inetaddr notifications instead of hooks in the core dev\ncode to track when a device comes and goes. This removes the need for\nexposed iface_stat.h.\n\nPut procfs dirs in /proc/net/xt_qtaguid/\n  ctrl\n  stats\n  iface_stat/\u003ciface\u003e/...\nThe uid stats are obtainable in ./stats.\n\nChange-Id: I01af4fd91c8de651668d3decb76d9bdc1e343919\nSigned-off-by: JP Abgrall \u003cjpa@google.com\u003e\n"
    },
    {
      "commit": "d8cfaaaf6817a0279f0faef8ee5ddd52de12839a",
      "tree": "4c6bdd7fad3e803b74e2870b2dbccbe3aa16421e",
      "parents": [
        "cf7addf29b41f90d979267b2c5111ec6d137231a"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Wed Jun 15 16:52:40 2011 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Mon Jun 20 13:15:08 2011 -0700"
      },
      "message": "nf: xt_socket: export the fancy sock finder code\n\nThe socket matching function has some nifty logic to get the struct sock\nfrom the skb or from the connection tracker.\nWe export this so other xt_* can use it, similarly to ho how\nxt_socket uses nf_tproxy_get_sock.\n\nChange-Id: I11c58f59087e7f7ae09e4abd4b937cd3370fa2fd\nSigned-off-by: JP Abgrall \u003cjpa@google.com\u003e\n"
    },
    {
      "commit": "19345cb299e8234006c5125151ab723e851a1d24",
      "tree": "43bde1db751eb50afbdabfbd26814431c8be573c",
      "parents": [
        "df18d127f4fed7a0284bcfa8d2843800cdb63b72"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "benny@tonian.com",
        "time": "Sun Jun 19 18:33:46 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jun 20 16:12:26 2011 -0400"
      },
      "message": "NFSv4.1: file layout must consider pg_bsize for coalescing\n\nOtherwise we end up overflowing the rpc buffer size on the receive end.\n\nSigned-off-by: Benny Halevy \u003cbenny@tonian.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c01ad4081939f91ebd7277e8e731fd90ceb3e632",
      "tree": "8eb0eccce6e0681400ddb5e33a9f13bfeb8a1fde",
      "parents": [
        "90a800de0a29426ea900ecd53f2929d5f4bc4578",
        "cca23d0b5350c9ca0473625c3f5879422ba534a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 20 08:59:46 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 20 08:59:46 2011 -0700"
      },
      "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: sh_keysc - 8x8 MODE_6 fix\n  Input: omap-keypad - add missing input_sync()\n  Input: evdev - try to wake up readers only if we have full packet\n  Input: properly assign return value of clamp() macro.\n"
    },
    {
      "commit": "482e0cd3dbaa70f2a2bead4b5f2c0d203ef654ba",
      "tree": "68d885682da34a08c29908d012a356344882a487",
      "parents": [
        "8e833fd2e1f0107ee7a4b6bc4de3c9f0e9b0ed41"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 19 13:01:04 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 10:46:04 2011 -0400"
      },
      "message": "devcgroup_inode_permission: take \"is it a device node\" checks to inlined wrapper\n\ninode_permission() calls devcgroup_inode_permission() and almost all such\ncalls are _not_ for device nodes; let\u0027s at least keep the common path\nstraight...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "155d109b5f52ffd749219b27702462dcd9cf4f8d",
      "tree": "980be2955bbf656963ad3edc9ff311d4528b70f1",
      "parents": [
        "d4c208b86b8be4254eba0e74071496e599f94639"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Mon Jun 20 13:23:14 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Jun 20 13:23:14 2011 +0200"
      },
      "message": "block: add REQ_SECURE to REQ_COMMON_MASK\n\nAdd REQ_SECURE flag to REQ_COMMON_MASK so that\ninit_request_from_bio() can pass it to @req-\u003ecmd_flags.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nAcked-by: Adrian Hunter \u003cadrian.hunter@intel.com\u003e\nCc: stable@kernel.org # 2.6.36 and newer\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "8816ead9d8e7c2745788e0684797e1912b504f33",
      "tree": "2a619a821024d31be2ce6ff422f287792379fe5b",
      "parents": [
        "357ed6b1a110048ff8106f99092d6c4a7aadb45a",
        "203db2952bc87f5d610c9ad53a7d02b85897721f",
        "d8ad7d1123a960cc9f276bd499f9325c6f5e1bd1",
        "b5199515c25cca622495eb9c6a8a1d275e775088",
        "c1f5c54b57341e872a9d375dccef7257f86033ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 19 09:00:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 19 09:00:18 2011 -0700"
      },
      "message": "Merge branches \u0027perf-urgent-for-linus\u0027, \u0027sched-urgent-for-linus\u0027, \u0027timers-urgent-for-linus\u0027 and \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tools/perf: Fix static build of perf tool\n  tracing: Fix regression in printk_formats file\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  generic-ipi: Fix kexec boot crash by initializing call_single_queue before enabling interrupts\n\n* \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  clocksource: Make watchdog robust vs. interruption\n  timerfd: Fix wakeup of processes when timer is cancelled on clock change\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, MAINTAINERS: Add x86 MCE people\n  x86, efi: Do not reserve boot services regions within reserved areas\n"
    },
    {
      "commit": "357ed6b1a110048ff8106f99092d6c4a7aadb45a",
      "tree": "ff4eb7e809e547bc3c0680dfd51793a8f57b2063",
      "parents": [
        "de505e709ffb09a7382ca8e0d8c7dbb171ba5830",
        "f8b7fc6b514f34a51875dd48dff70d4d17a54f38"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 19 08:56:56 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 19 08:56:56 2011 -0700"
      },
      "message": "Merge branch \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: Move RCU_BOOST #ifdefs to header file\n  rcu: use softirq instead of kthreads except when RCU_BOOST\u003dy\n  rcu: Use softirq to address performance regression\n  rcu: Simplify curing of load woes\n"
    },
    {
      "commit": "be98ca652faa6468916a9b7608befff215a8ca70",
      "tree": "13ed7ba7e41eb98acf9c9d5230e683d8b7f96e9e",
      "parents": [
        "742a0c7cae9bd0f913c71722289b8ec862d70a2b"
      ],
      "author": {
        "name": "Manoj Iyer",
        "email": "manoj.iyer@canonical.com",
        "time": "Thu May 26 11:19:05 2011 -0500"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Sat Jun 18 22:18:18 2011 -0400"
      },
      "message": "mmc: Add PCI fixup quirks for Ricoh 1180:e823 reader\n\nSigned-off-by: Manoj Iyer \u003cmanoj.iyer@canonical.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "cca23d0b5350c9ca0473625c3f5879422ba534a6",
      "tree": "160e5a664d02bedb597d5e4e9bd9fd75c3427a23",
      "parents": [
        "b27af563befa95686c8d1abc491408aa6b9a31dc"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@opensource.se",
        "time": "Sat Jun 18 02:51:52 2011 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Jun 18 02:55:01 2011 -0700"
      },
      "message": "Input: sh_keysc - 8x8 MODE_6 fix\n\nAccording to the data sheet for G4, AP4 and AG5 KEYSC MODE_6 is 8x8 keys.\nBump up MAXKEYS to 64 too.\n\nSigned-off-by: Magnus Damm \u003cdamm@opensource.se\u003e\nReviewed-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "cf7addf29b41f90d979267b2c5111ec6d137231a",
      "tree": "539c14ee0f04dd3af9df6723349dcc399067be2c",
      "parents": [
        "ba3673bf79dbaa02a48a9ba7618d071b364bbf5e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jun 01 22:17:36 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jun 17 22:27:20 2011 -0400"
      },
      "message": "USB: gadget: f_mtp: Add PTP variant of MTP USB function\n\nThis is the same as MTP but with PTP interface descriptor.\nAlso removed obsolete ioctl for switching between MTP and PTP mode\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "aab96815ae9a40e05600b8e351561b514233afca",
      "tree": "b96a69b2be5f648ee17581246acf97895f1c72bf",
      "parents": [
        "94df1bdfdca9be6d4bbe6cc56354b4ee536cb15a"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Tue Apr 19 20:37:33 2011 -0700"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Fri Jun 17 16:02:37 2011 -0700"
      },
      "message": "usb: gadget: android: Update android gadget driver\n\n* Functions and the device descriptor are configured from user space:\necho 0       \u003e /sys/class/android_usb/android0/enable\necho adb,acm \u003e /sys/class/android_usb/android0/functions\necho 2       \u003e /sys/class/android_usb/android0/f_acm/instances\necho 1       \u003e /sys/class/android_usb/android0/enable\n\n* Driver does not require platform data anymore\n\n* Moved function initialization to android.c instead of each\nfunction file\n\n* Replaced switches by uevents\n\nSigned-off-by: Benoit Goby \u003cbenoit@android.com\u003e\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\nChange-Id: If5ad9267c111ad0a442f0d87a0d31082dc5381b6\n"
    },
    {
      "commit": "94df1bdfdca9be6d4bbe6cc56354b4ee536cb15a",
      "tree": "931674516b4ed279dafb466957c01166df9636b1",
      "parents": [
        "f6e7d49e03c475a7f129a0b13ff80bff2abbb2b2"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Wed May 25 23:59:43 2011 -0700"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Fri Jun 17 16:02:36 2011 -0700"
      },
      "message": "usb: gadget: composite: Add usb_remove_config\n\nThis allows composite drivers to dynamically change their configuration.\nFor example, a driver might remove a configuration and register a new\none with a different set of functions.\nUser should prevent the host from enumerating the device while changing\nthe configuration:\n\n\tusb_gadget_disconnect(cdev-\u003egadget);\n\tusb_remove_config(cdev, old_config);\n\tusb_add_config(cdev, new_config, new_conf_bind);\n\tusb_gadget_connect(cdev-\u003egadget);\n\nChange-Id: Icbfb4ce41685fde9bf63d5d58fca1ad242aa69f9\nSigned-off-by: Benoit Goby \u003cbenoit@android.com\u003e\n"
    },
    {
      "commit": "9902e0b5c53bba7469e7163e539fa696f09e35cc",
      "tree": "82d118d4b32eabcac59506453ce22a542af071d7",
      "parents": [
        "0d9f3c2791c1e19796d3a41d8ec45093583817e7"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Feb 02 11:52:56 2011 -0500"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Fri Jun 17 16:02:31 2011 -0700"
      },
      "message": "USB: gadget: f_accessory: New gadget driver for android USB accesories\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n\nUSB: gadget: f_accessory: Misc improvements and cleanup:\n\n- Add URI string\n\n- Replace type string with a description string\n\n- Add a control call to retrieve accessory protocol version (currently 1)\n\n- Driver read() and write() calls now fail after USB disconnect until\n  driver file is closed and reopened.\n\n- Misc cleanup work\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n\nUSB: gadget: f_accessory: Clear accessory strings when USB is disconnected\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n\nUSB: gadget: f_accessory: Clear previous strings on ACCESSORY_GET_PROTOCOL\n\nClearing strings on disconnect does not work since we may receive\na disconnect on some devices when transitioning into accessory mode.\nWe require an accessory to send ACCESSORY_GET_PROTOCOL before\nsending any strings, so any strings from a previous session will be cleared.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n\nUSB: gadget: f_accessory: Clear disconnected flag when driver file is opened\n\nFixes a race condition that can occur when entering accessory mode.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n\nUSB: gadget: f_accessory: Add string for accessory\u0027s unique serial number\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n\nUSB: gadget: f_accessory: Set bNumEndpoints to correct value of 2\n\nChange-Id: I24f4e36f196d45436e0573301500c3b93215953d\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "0835619348b097404f4f85bc5195c6e23a2f8de4",
      "tree": "a81ae35390d440ad1fc655ae2e8715f6fae0b652",
      "parents": [
        "add794467a20463d7ea50dc9f158a6371d396175",
        "c001fb72a7b705f902bdfdd05b5d2408efe6f848",
        "e479c60456ef22b0869432887216186aabaed086"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 17 10:36:32 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 17 10:36:32 2011 -0700"
      },
      "message": "Merge branches \u0027gpio/merge\u0027 and \u0027spi/merge\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027gpio/merge\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  gpio: add GPIOF_ values regardless on kconfig settings\n  gpio: include linux/gpio.h where needed\n  gpio/omap4: Fix missing interrupts during device wakeup due to IOPAD.\n\n* \u0027spi/merge\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  spi/bfin_spi: fix handling of default bits per word setting\n"
    },
    {
      "commit": "879669961b11e7f40b518784863a259f735a72bf",
      "tree": "9bff5392e365caf656c9dd9be38f7471c182278c",
      "parents": [
        "eb96c925152fc289311e5d7e956b919e9b60ab53"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jun 17 11:25:59 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 17 09:40:48 2011 -0700"
      },
      "message": "KEYS/DNS: Fix ____call_usermodehelper() to not lose the session keyring\n\n____call_usermodehelper() now erases any credentials set by the\nsubprocess_inf::init() function.  The problem is that commit\n17f60a7da150 (\"capabilites: allow the application of capability limits\nto usermode helpers\") creates and commits new credentials with\nprepare_kernel_cred() after the call to the init() function.  This wipes\nall keyrings after umh_keys_init() is called.\n\nThe best way to deal with this is to put the init() call just prior to\nthe commit_creds() call, and pass the cred pointer to init().  That\nmeans that umh_keys_init() and suchlike can modify the credentials\n_before_ they are published and potentially in use by the rest of the\nsystem.\n\nThis prevents request_key() from working as it is prevented from passing\nthe session keyring it set up with the authorisation token to\n/sbin/request-key, and so the latter can\u0027t assume the authority to\ninstantiate the key.  This causes the in-kernel DNS resolver to fail\nwith ENOKEY unconditionally.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nTested-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d8ad7d1123a960cc9f276bd499f9325c6f5e1bd1",
      "tree": "0260df1b5b5b1601f56229c7dde54594d2dfebcb",
      "parents": [
        "eb96c925152fc289311e5d7e956b919e9b60ab53"
      ],
      "author": {
        "name": "Takao Indoh",
        "email": "indou.takao@jp.fujitsu.com",
        "time": "Tue Mar 29 12:35:04 2011 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 17 10:17:12 2011 +0200"
      },
      "message": "generic-ipi: Fix kexec boot crash by initializing call_single_queue before enabling interrupts\n\nThere is a problem that kdump(2nd kernel) sometimes hangs up due\nto a pending IPI from 1st kernel. Kernel panic occurs because IPI\ncomes before call_single_queue is initialized.\n\nTo fix the crash, rename init_call_single_data() to call_function_init()\nand call it in start_kernel() so that call_single_queue can be\ninitialized before enabling interrupts.\n\nThe details of the crash are:\n\n (1) 2nd kernel boots up\n\n (2) A pending IPI from 1st kernel comes when irqs are first enabled\n     in start_kernel().\n\n (3) Kernel tries to handle the interrupt, but call_single_queue\n     is not initialized yet at this point. As a result, in the\n     generic_smp_call_function_single_interrupt(), NULL pointer\n     dereference occurs when list_replace_init() tries to access\n     \u0026q-\u003elist.next.\n\nTherefore this patch changes the name of init_call_single_data()\nto call_function_init() and calls it before local_irq_enable()\nin start_kernel().\n\nSigned-off-by: Takao Indoh \u003cindou.takao@jp.fujitsu.com\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Milton Miller \u003cmiltonm@bga.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: kexec@lists.infradead.org\nLink: http://lkml.kernel.org/r/D6CBEE2F420741indou.takao@jp.fujitsu.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c16d51a32bbb61ac8fd96f78b5ce2fccfe0fb4c3",
      "tree": "3899f24f4b1cc06e24055952f1d9114dc493caf0",
      "parents": [
        "57f2104f39995bac332ddc492fbf60aa28e0c35e"
      ],
      "author": {
        "name": "Shreshtha Kumar Sahu",
        "email": "shreshthakumar.sahu@stericsson.com",
        "time": "Mon Jun 13 10:11:33 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jun 16 12:01:57 2011 -0700"
      },
      "message": "amba pl011: workaround for uart registers lockup\n\nThis workaround aims to break the deadlock situation\nwhich raises during continuous transfer of data for long\nduration over uart with hardware flow control. It is\nobserved that CTS interrupt cannot be cleared in uart\ninterrupt register (ICR). Hence further transfer over\nuart gets blocked.\n\nIt is seen that during such deadlock condition ICR\ndon\u0027t get cleared even on multiple write. This leads\npass_counter to decrease and finally reach zero. This\ncan be taken as trigger point to run this UART_BT_WA.\n\nWorkaround backups the register configuration, does soft\nreset of UART using BIT-0 of PRCC_K_SOFTRST_SET/CLEAR\nregisters and restores the registers.\n\nThis patch also provides support for uart init and exit\nfunction calls if present.\n\nSigned-off-by: Shreshtha Kumar Sahu \u003cshreshthakumar.sahu@stericsson.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b5199515c25cca622495eb9c6a8a1d275e775088",
      "tree": "250fc4f3d02c58eddf770e9d040edeafd0012e76",
      "parents": [
        "1123d93963cbd2546449d4d9f0c568e323cb0ac6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 16 16:22:08 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 16 19:30:53 2011 +0200"
      },
      "message": "clocksource: Make watchdog robust vs. interruption\n\nThe clocksource watchdog code is interruptible and it has been\nobserved that this can trigger false positives which disable the TSC.\n\nThe reason is that an interrupt storm or a long running interrupt\nhandler between the read of the watchdog source and the read of the\nTSC brings the two far enough apart that the delta is larger than the\nunstable treshold. Move both reads into a short interrupt disabled\nregion to avoid that.\n\nReported-and-tested-by: Vernon Mauery \u003cvernux@us.ibm.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "8dac6bee32425dd5145b40fa2307648cb7fb4d4a",
      "tree": "b7165517729b755686f336b3066ebc982c8793ea",
      "parents": [
        "f8f44f09eaa2bfb40651e7fc6054d65c8091499a",
        "d6e43f751f252c68ca69fa6d18665d88d69ef8b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 16 10:21:59 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 16 10:21:59 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  AFS: Use i_generation not i_version for the vnode uniquifier\n  AFS: Set s_id in the superblock to the volume name\n  vfs: Fix data corruption after failed write in __block_write_begin()\n  afs: afs_fill_page reads too much, or wrong data\n  VFS: Fix vfsmount overput on simultaneous automount\n  fix wrong iput on d_inode introduced by e6bc45d65d\n  Delay struct net freeing while there\u0027s a sysfs instance refering to it\n  afs: fix sget() races, close leak on umount\n  ubifs: fix sget races\n  ubifs: split allocation of ubifs_info into a separate function\n  fix leak in proc_set_super()\n"
    },
    {
      "commit": "c001fb72a7b705f902bdfdd05b5d2408efe6f848",
      "tree": "a8c15469c4a09c3690479e1508ab7ca7acbfcbe7",
      "parents": [
        "158f1e95180d01ebfd7cd5c8de23050528303f26"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Jun 14 17:05:11 2011 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Jun 16 08:40:52 2011 -0600"
      },
      "message": "gpio: add GPIOF_ values regardless on kconfig settings\n\nMake GPIOF_ defined values available even when GPIOLIB nor GENERIC_GPIO\nis enabled by moving them to \u003clinux/gpio.h\u003e.\n\nFixes these build errors in linux-next:\nsound/soc/codecs/ak4641.c:524: error: \u0027GPIOF_OUT_INIT_LOW\u0027 undeclared (first use in this function)\nsound/soc/codecs/wm8915.c:2921: error: \u0027GPIOF_OUT_INIT_LOW\u0027 undeclared (first use in this function)\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "bd5dc17be87b3a3073d50b23802647db3ae3fa8e",
      "tree": "b8abfc57e4282d943bb2bb21762a868efa29bd20",
      "parents": [
        "ca39599c633fb02aceac31a7e67563612e4fe347"
      ],
      "author": {
        "name": "Josh Triplett",
        "email": "josh@joshtriplett.org",
        "time": "Wed Jun 15 15:08:28 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 15 20:04:00 2011 -0700"
      },
      "message": "uts: make default hostname configurable, rather than always using \"(none)\"\n\nThe \"hostname\" tool falls back to setting the hostname to \"localhost\" if\n/etc/hostname does not exist.  Distribution init scripts have the same\nfallback.  However, if userspace never calls sethostname, such as when\nbooting with init\u003d/bin/sh, or otherwise booting a minimal system without\nthe usual init scripts, the default hostname of \"(none)\" remains,\nunhelpfully appearing in various places such as prompts (\"root@(none):~#\")\nand logs.  Furthermore, \"(none)\" doesn\u0027t typically resolve to anything\nuseful.\n\nMake the default hostname configurable.  This removes the need for the\nstandard fallback, provides a useful default for systems that never call\nsethostname, and makes minimal systems that much more useful with less\nconfiguration.  Distributions could choose to use \"localhost\" here to\navoid the fallback, while embedded systems may wish to use a specific\ntarget hostname.\n\nSigned-off-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nAcked-by: David Miller \u003cdavem@davemloft.net\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Kel Modderman \u003ckel@otaku42.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ca39599c633fb02aceac31a7e67563612e4fe347",
      "tree": "03652bd70063ec578b6b59cce14614a282e3d93e",
      "parents": [
        "3957c7768e5ea02fd3345176ddd340f820e5d285"
      ],
      "author": {
        "name": "Dr. David Alan Gilbert",
        "email": "linux@treblig.org",
        "time": "Wed Jun 15 15:08:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 15 20:04:00 2011 -0700"
      },
      "message": "BUILD_BUG_ON_ZERO: fix sparse breakage\n\nBUILD_BUG_ON_ZERO and BUILD_BUG_ON_NULL must return values, even in the\nCHECKER case otherwise various users of it become syntactically invalid.\n\nSigned-off-by: Dr. David Alan Gilbert \u003clinux@treblig.org\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "32e45ff43eaf5c17f5a82c9ad358d515622c2562",
      "tree": "be4984b6be4b3ffe259ef19efac7bb12f3b26c2a",
      "parents": [
        "17441227f6258fc379c6ebfe21c3eec43b6f0de3"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Wed Jun 15 15:08:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 15 20:03:59 2011 -0700"
      },
      "message": "mm: increase RECLAIM_DISTANCE to 30\n\nRecently, Robert Mueller reported (http://lkml.org/lkml/2010/9/12/236)\nthat zone_reclaim_mode doesn\u0027t work properly on his new NUMA server (Dual\nXeon E5520 + Intel S5520UR MB).  He is using Cyrus IMAPd and it\u0027s built on\na very traditional single-process model.\n\n  * a master process which reads config files and manages the other\n    process\n  * multiple imapd processes, one per connection\n  * multiple pop3d processes, one per connection\n  * multiple lmtpd processes, one per connection\n  * periodical \"cleanup\" processes.\n\nThere are thousands of independent processes.  The problem is, recent\nIntel motherboard turn on zone_reclaim_mode by default and traditional\nprefork model software don\u0027t work well on it.  Unfortunatelly, such models\nare still typical even in the 21st century.  We can\u0027t ignore them.\n\nThis patch raises the zone_reclaim_mode threshold to 30.  30 doesn\u0027t have\nany specific meaning.  but 20 means that one-hop QPI/Hypertransport and\nsuch relatively cheap 2-4 socket machine are often used for traditional\nservers as above.  The intention is that these machines don\u0027t use\nzone_reclaim_mode.\n\nNote: ia64 and Power have arch specific RECLAIM_DISTANCE definitions.\nThis patch doesn\u0027t change such high-end NUMA machine behavior.\n\nDave Hansen said:\n\n: I know specifically of pieces of x86 hardware that set the information\n: in the BIOS to \u002721\u0027 *specifically* so they\u0027ll get the zone_reclaim_mode\n: behavior which that implies.\n:\n: They\u0027ve done performance testing and run very large and scary benchmarks\n: to make sure that they _want_ this turned on.  What this means for them\n: is that they\u0027ll probably be de-optimized, at least on newer versions of\n: the kernel.\n:\n: If you want to do this for particular systems, maybe _that_\u0027s what we\n: should do.  Have a list of specific configurations that need the\n: defaults overridden either because they\u0027re buggy, or they have an\n: unusual hardware configuration not really reflected in the distance\n: table.\n\nAnd later said:\n\n: The original change in the hardware tables was for the benefit of a\n: benchmark.  Said benchmark isn\u0027t going to get run on mainline until the\n: next batch of enterprise distros drops, at which point the hardware where\n: this was done will be irrelevant for the benchmark.  I\u0027m sure any new\n: hardware will just set this distance to another yet arbitrary value to\n: make the kernel do what it wants.  :)\n:\n: Also, when the hardware got _set_ to this initially, I complained.  So, I\n: guess I\u0027m getting my way now, with this patch.  I\u0027m cool with it.\n\nReported-by: Robert Mueller \u003crobm@fastmail.fm\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nAcked-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac5622418bbff9cd3dc607aa57dfb4f62a7f2043",
      "tree": "a41d3d942acae278b67bb2fa92b4aa791dc02dc4",
      "parents": [
        "50c35e5ba255fd8428cef8ff076da8d23bfd4909"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Jun 15 15:08:17 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 15 20:03:59 2011 -0700"
      },
      "message": "kmsg_dump.h: fix build when CONFIG_PRINTK is disabled\n\nFix \u003clinux/kmsg_dump.h\u003e when CONFIG_PRINTK is not enabled:\n\n  include/linux/kmsg_dump.h:56: error: \u0027EINVAL\u0027 undeclared (first use in this function)\n  include/linux/kmsg_dump.h:61: error: \u0027EINVAL\u0027 undeclared (first use in this function)\n\nLooks like commit 595dd3d8bf95 (\"kmsg_dump: fix build for\nCONFIG_PRINTK\u003dn\") uses EINVAL without having the needed header file(s),\nbut I\u0027m sure that I build tested that patch also.  oh well.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a433658c30974fc87ba3ff52d7e4e6299762aa3d",
      "tree": "8df65e22af520ca5c020281763e6874d0bb51bc5",
      "parents": [
        "e1bbd19bc4afef7adb80cca163800391c4f5773d"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Wed Jun 15 15:08:13 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 15 20:03:59 2011 -0700"
      },
      "message": "vmscan,memcg: memcg aware swap token\n\nCurrently, memcg reclaim can disable swap token even if the swap token mm\ndoesn\u0027t belong in its memory cgroup.  It\u0027s slightly risky.  If an admin\ncreates very small mem-cgroup and silly guy runs contentious heavy memory\npressure workload, every tasks are going to lose swap token and then\nsystem may become unresponsive.  That\u0027s bad.\n\nThis patch adds \u0027memcg\u0027 parameter into disable_swap_token().  and if the\nparameter doesn\u0027t match swap token, VM doesn\u0027t disable it.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Rik van Riel\u003criel@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": "a59ec1e7ff98cc4365d5b1bff4e7102e86b5716b",
      "tree": "2500a9be830853d901d6b8210f9bfbae02a9987a",
      "parents": [
        "7f81c8890c15a10f5220bebae3b6dfae4961962a"
      ],
      "author": {
        "name": "Michael Hennerich",
        "email": "michael.hennerich@analog.com",
        "time": "Wed Jun 15 15:08:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 15 20:03:59 2011 -0700"
      },
      "message": "backlight: new driver for the ADP8870 backlight devices\n\nSigned-off-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c9c30dd5f73dccaa326a54dfcf490316946aea87",
      "tree": "b7e4f9488c805cf5e29f93b25a75713f3922e823",
      "parents": [
        "0f66b5984df2fe1617c05900a39a7ef493ca9de9"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "benny@tonian.com",
        "time": "Sat Jun 11 17:08:39 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 15 11:24:28 2011 -0400"
      },
      "message": "NFSv4.1: deprecate headerpadsz in CREATE_SESSION\n\nWe don\u0027t support header padding yet so better off ditching it\n\nReported-by: Sid Moore \u003clearnmost@gmail.com\u003e\nSigned-off-by: Benny Halevy \u003cbenny@tonian.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0b760113a3a155269a3fba93a409c640031dd68f",
      "tree": "699dc3e0ebe2df11b0c67045c046deafdb56282d",
      "parents": [
        "9e3bd4e24e94d60d2e0762e919aab6c9a7fc0c5b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue May 31 15:15:34 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 15 11:24:27 2011 -0400"
      },
      "message": "NLM: Don\u0027t hang forever on NLM unlock requests\n\nIf the NLM daemon is killed on the NFS server, we can currently end up\nhanging forever on an \u0027unlock\u0027 request, instead of aborting. Basically,\nif the rpcbind request fails, or the server keeps returning garbage, we\nreally want to quit instead of retrying.\n\nTested-by: Vasily Averin \u003cvvs@sw.ru\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "09223371deac67d08ca0b70bd18787920284c967",
      "tree": "0ad0354a93ac209c8cfd2b79d03d0462aa3c5c58",
      "parents": [
        "9a432736904d386cda28b987b38ba14dae960ecc"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Tue Jun 14 13:26:25 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Jun 14 15:25:39 2011 -0700"
      },
      "message": "rcu: Use softirq to address performance regression\n\nCommit a26ac2455ffcf3(rcu: move TREE_RCU from softirq to kthread)\nintroduced performance regression. In an AIM7 test, this commit degraded\nperformance by about 40%.\n\nThe commit runs rcu callbacks in a kthread instead of softirq. We observed\nhigh rate of context switch which is caused by this. Out test system has\n64 CPUs and HZ is 1000, so we saw more than 64k context switch per second\nwhich is caused by RCU\u0027s per-CPU kthread.  A trace showed that most of\nthe time the RCU per-CPU kthread doesn\u0027t actually handle any callbacks,\nbut instead just does a very small amount of work handling grace periods.\nThis means that RCU\u0027s per-CPU kthreads are making the scheduler do quite\na bit of work in order to allow a very small amount of RCU-related\nprocessing to be done.\n\nAlex Shi\u0027s analysis determined that this slowdown is due to lock\ncontention within the scheduler.  Unfortunately, as Peter Zijlstra points\nout, the scheduler\u0027s real-time semantics require global action, which\nmeans that this contention is inherent in real-time scheduling.  (Yes,\nperhaps someone will come up with a workaround -- otherwise, -rt is not\ngoing to do well on large SMP systems -- but this patch will work around\nthis issue in the meantime.  And \"the meantime\" might well be forever.)\n\nThis patch therefore re-introduces softirq processing to RCU, but only\nfor core RCU work.  RCU callbacks are still executed in kthread context,\nso that only a small amount of RCU work runs in softirq context in the\ncommon case.  This should minimize ksoftirqd execution, allowing us to\nskip boosting of ksoftirqd for CONFIG_RCU_BOOST\u003dy kernels.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nTested-by: \"Alex,Shi\" \u003calex.shi@intel.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "9be0c37a063b657a82df718234ecfbc13307bc9b",
      "tree": "6adacbf883eb429236fedc712ef5f094e6ca5afc",
      "parents": [
        "810bf5db1e7aa71994907e71d05abc6cd6a6f482"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Apr 15 15:22:09 2011 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:56 2011 -0700"
      },
      "message": "net: Reorder incoming packets in PPPoLAC and PPPoPNS.\n\nPPP handles packet loss but does not work with out of order packets.\nThis change performs reordering of incoming data packets within a\nsliding window of one second. Since sequence number is optional,\nreceiving a packet without it will drop all queued packets.\n\nCurrently the logic is triggered by incoming packets, so queued\npackets have to wait till another packet is arrived. It is done for\nsimplicity since no additional locks or threads are required. For\nreliable protocols, a retransmission will kick it. For unreliable\nprotocols, queued packets just seem like packet loss. Time-critical\nprotocols might be broken, but they never work with queueing anyway.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n"
    },
    {
      "commit": "51d4429a2839b9bc140f2a2ccac47bbd85ec920a",
      "tree": "3ffd59895a8b6960455e35c09fe01dac3dc72956",
      "parents": [
        "0f3118dfc076266439c440023e09645835ca0885"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Mon Feb 14 16:58:48 2011 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:54 2011 -0700"
      },
      "message": "net: wireless: Add get_country_code functionality to platform\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "aecca43f09d029eb98bec88b6da3b3c6897e42f5",
      "tree": "10e0615a2b05f5444cafcbebd18f359713c7ab24",
      "parents": [
        "6bb1acf2eba2dd5200bd935286b3d9f130b71c3b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Feb 09 09:38:26 2011 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:53 2011 -0700"
      },
      "message": "USB: gadget: android: Support switching vendor ID when configuration changes\n\nBased on the list of enabled USB functions, we can now switch the vendor ID\nas well as the product ID.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "6bb1acf2eba2dd5200bd935286b3d9f130b71c3b",
      "tree": "3bfa0eca5b6a0df013c76dd8acd6188ad84526bb",
      "parents": [
        "28e23cf73c26d2bb13451804e328797a55f471e4"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Sat Feb 12 13:21:32 2011 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:53 2011 -0700"
      },
      "message": "Revert \"mmc: subtract boot sectors from disk size for eMMC 4.3+ devices\"\n\nThis reverts commit f0b0e4bec1e89014f3dcef4da8bcf95428cc771c.\n\nThe reverted commit incorrectly calculates the size of eMMC\ndevices in some (all?) cases.\n\nThis revert may cause problems in cases where the bootloader was\nbug-compatible and puts a GPT partition at the incorrect end of\nthe eMMC device.\n\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "677ef29f71cba2017015c5a804e931314dc71df6",
      "tree": "4d08ae49d4fe6000b38f7350a551286e6ee81b09",
      "parents": [
        "9b6f4a382dda68d41cbbd739095db3fd36f55f6b"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jan 07 14:52:56 2011 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:44 2011 -0700"
      },
      "message": "input: keyreset: Allow reset function to be overriden\n\nChange-Id: Ibb3dda05772b2e89d7b2646689944d309cb1f74e\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "dbc38c633f4b7abe97c53036df55fbb2040188bc",
      "tree": "57123eb96e4b840a3efd1fc4c51073f7229dd23d",
      "parents": [
        "6d51e762b1b58226ddaf922673970162e71c9ed9"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Nov 23 21:37:04 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:40 2011 -0700"
      },
      "message": "cgroup: Remove call to synchronize_rcu in cgroup_attach_task\n\nsynchronize_rcu can be very expensive, averaging 100 ms in\nsome cases.  In cgroup_attach_task, it is used to prevent\na task-\u003ecgroups pointer dereferenced in an RCU read side\ncritical section from being invalidated, by delaying the\ncall to put_css_set until after an RCU grace period.\n\nTo avoid the call to synchronize_rcu, make the put_css_set\ncall rcu-safe by moving the deletion of the css_set links\ninto free_css_set_work, scheduled by the rcu callback\nfree_css_set_rcu.\n\nThe decrement of the cgroup refcount is no longer\nsynchronous with the call to put_css_set, which can result\nin the cgroup refcount staying positive after the last call\nto cgroup_attach_task returns.  To allow the cgroup to be\ndeleted with cgroup_rmdir synchronously after\ncgroup_attach_task, have rmdir check the refcount of all\nassociated css_sets.  If cgroup_rmdir is called on a cgroup\nfor which the css_sets all have refcount zero but the\ncgroup refcount is nonzero, reuse the rmdir waitqueue to\nblock the rmdir until free_css_set_work is called.\n\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "6d51e762b1b58226ddaf922673970162e71c9ed9",
      "tree": "25231ef1d676fab8edfeb091daeb6354921c42f8",
      "parents": [
        "a0f07aae54e87a9fad6d19c0e57398f54d858f06"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Nov 23 21:37:03 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:40 2011 -0700"
      },
      "message": "cgroup: Set CGRP_RELEASABLE when adding to a cgroup\n\nChanges the meaning of CGRP_RELEASABLE to be set on any cgroup\nthat has ever had a task or cgroup in it, or had css_get called\non it.  The bit is set in cgroup_attach_task, cgroup_create,\nand __css_get.  It is not necessary to set the bit in\ncgroup_fork, as the task is either in the root cgroup, in\nwhich can never be released, or the task it was forked from\nalready set the bit in croup_attach_task.\n\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "1dab2597e7d0591c2ee1bde29e8d51e5ba707acb",
      "tree": "c7b25327f1d6064581465e3aa044ed746518aedb",
      "parents": [
        "5eed1dbca45b0113b4a33a99c18fce86995ba55a"
      ],
      "author": {
        "name": "Mike Chan",
        "email": "mike@android.com",
        "time": "Tue Jun 22 11:26:45 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:39 2011 -0700"
      },
      "message": "cpufreq: interactive: New \u0027interactive\u0027 governor\n\nThis governor is designed for latency-sensitive workloads, such as\ninteractive user interfaces.  The interactive governor aims to be\nsignificantly more responsive to ramp CPU quickly up when CPU-intensive\nactivity begins.\n\nExisting governors sample CPU load at a particular rate, typically\nevery X ms.  This can lead to under-powering UI threads for the period of\ntime during which the user begins interacting with a previously-idle system\nuntil the next sample period happens.\n\nThe \u0027interactive\u0027 governor uses a different approach. Instead of sampling\nthe CPU at a specified rate, the governor will check whether to scale the\nCPU frequency up soon after coming out of idle.  When the CPU comes out of\nidle, a timer is configured to fire within 1-2 ticks.  If the CPU is very\nbusy from exiting idle to when the timer fires then we assume the CPU is\nunderpowered and ramp to MAX speed.\n\nIf the CPU was not sufficiently busy to immediately ramp to MAX speed, then\nthe governor evaluates the CPU load since the last speed adjustment,\nchoosing the highest value between that longer-term load or the short-term\nload since idle exit to determine the CPU speed to ramp to.\n\nA realtime thread is used for scaling up, giving the remaining tasks the\nCPU performance benefit, unlike existing governors which are more likely to\nschedule rampup work to occur after your performance starved tasks have\ncompleted.\n\nThe tuneables for this governor are:\n/sys/devices/system/cpu/cpufreq/interactive/min_sample_time:\n\tThe minimum amount of time to spend at the current frequency before\n\tramping down. This is to ensure that the governor has seen enough\n\thistoric CPU load data to determine the appropriate workload.\n\tDefault is 80000 uS.\n/sys/devices/system/cpu/cpufreq/interactive/go_maxspeed_load\n\tThe CPU load at which to ramp to max speed.  Default is 85.\n\nChange-Id: Ib2b362607c62f7c56d35f44a9ef3280f98c17585\nSigned-off-by: Mike Chan \u003cmike@android.com\u003e\nSigned-off-by: Todd Poynor \u003ctoddpoynor@google.com\u003e\nBug: 3152864\n"
    },
    {
      "commit": "759378a80bdcfee878da419431b018df12ac3d2d",
      "tree": "27751a1a00bad6b71fcaf7d6250b6539756907b1",
      "parents": [
        "1fb6e37f9d1d46a0ca8777c5bd97270d455ee71b"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Oct 14 15:20:21 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:38 2011 -0700"
      },
      "message": "mmc: Fix pm_notifier obeying deferred resume\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "c0455a04b73d1de3d885956a182264af3992cdc7",
      "tree": "894589e3451f7eb3a88a90f63033b10ce4a1e7cb",
      "parents": [
        "24b3bd400fc6d22dc6d89fd30610226c5773df39"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Oct 07 14:39:16 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:37 2011 -0700"
      },
      "message": "mmc: Add \"ignore mmc pm notify\" functionality\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "4d2c26338ac3ce78b2325730bfeb4884ba60bd77",
      "tree": "42c219d7a923eb32dfe9b09554dab222a1e62866",
      "parents": [
        "fa746fabf17fdcf93450ba16bf831a8faf54e692"
      ],
      "author": {
        "name": "Gary King",
        "email": "gking@nvidia.com",
        "time": "Thu Jul 15 17:11:32 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:35 2011 -0700"
      },
      "message": "mmc: subtract boot sectors from disk size for eMMC 4.3+ devices\n\nthe csd sector count reported by eMMC 4.3+ cards includes the boot\npartition size; subtract this from the size reported to the disk\nsince the boot partition is inaccessible\n\nChange-Id: I601b83aa0159b7aa446409ea8c945b256dd0b5b1\nSigned-off-by: Gary King \u003cgking@nvidia.com\u003e\n"
    },
    {
      "commit": "be17d1d867677666e6a126fcf71c6fc4cd08df09",
      "tree": "a705c1ff62d3da31752faf3c7241262f4edd91ca",
      "parents": [
        "c69233f5544478b55ede08b2180a33729ab27788"
      ],
      "author": {
        "name": "Mike Chan",
        "email": "mike@android.com",
        "time": "Wed May 12 15:52:14 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:33 2011 -0700"
      },
      "message": "scheduler: cpuacct: Enable platform callbacks for cpuacct power tracking\n\nPlatform must register cpu power function that return power in\nmilliWatt seconds.\n\nChange-Id: I1caa0335e316c352eee3b1ddf326fcd4942bcbe8\nSigned-off-by: Mike Chan \u003cmike@android.com\u003e\n"
    },
    {
      "commit": "c69233f5544478b55ede08b2180a33729ab27788",
      "tree": "c0ea18f59072b83a7c64befea0fc69b7f05f1d77",
      "parents": [
        "c1dbe304b2f161b140b1696f9ffd45c455e5505b"
      ],
      "author": {
        "name": "Mike Chan",
        "email": "mike@android.com",
        "time": "Mon May 10 17:54:48 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:33 2011 -0700"
      },
      "message": "scheduler: cpuacct: Enable platform hooks to track cpuusage for CPU frequencies\n\nIntroduce new platform callback hooks for cpuacct for tracking CPU frequencies\n\nNot all platforms / architectures have a set CPU_FREQ_TABLE defined\nfor CPU transition speeds. In order to track time spent in at various\nCPU frequencies, we enable platform callbacks from cpuacct for this accounting.\n\nArchitectures that support overclock boosting, or don\u0027t have pre-defined\nfrequency tables can implement their own bucketing system that makes sense\ngiven their cpufreq scaling abilities.\n\nNew file:\ncpuacct.cpufreq reports the CPU time (in nanoseconds) spent at each CPU\nfrequency.\n\nChange-Id: I10a80b3162e6fff3a8a2f74dd6bb37e88b12ba96\nSigned-off-by: Mike Chan \u003cmike@android.com\u003e\n"
    },
    {
      "commit": "c1dbe304b2f161b140b1696f9ffd45c455e5505b",
      "tree": "d6a63e7cbfc2de282931c3258908ea4742eb34e6",
      "parents": [
        "2921bbb7b51515ef881bafef686f3fd9cc366b6f"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Apr 20 19:54:09 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:33 2011 -0700"
      },
      "message": "misc: add akm8975 compass driver\n\nOriginally written by HTC. Contributions by Motorola and AKM.\n  misc: Import akm8975 from Motorola\n\nMajor style and code cleanups by Praveen Bharathi \u003cpbharathi@motorola.com\u003e\n  misc: akm8975: clean up code violations in akm8975.c\n  misc: akm8975: Clean up coding style, add suspend and resume\n\nChange-Id: I4196913f15aec2dfbed47506d3dc085aada8e92d\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "058abe5367489f424afa14753b642c036ed9c2be",
      "tree": "0b23a8a3fe64908222c2c4bd68009e0710edc329",
      "parents": [
        "df8bfc3d773ded0c6a201c731954a242f8a718f9"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Jun 03 10:55:33 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:32 2011 -0700"
      },
      "message": "network: wireless: Add get_mac_addr functionality to platform\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "39958f678c52fac3d522f345d61b9ffa1b4bfecb",
      "tree": "e01b8fb0077935862a16af6aec6190f79e3a2dde",
      "parents": [
        "29023ce8df1bbc9236dc1f632e9cdf77019dffb0"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu May 06 15:37:55 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:31 2011 -0700"
      },
      "message": "sched: Add a generic notifier when a task struct is about to be freed\n\nThis patch adds a notifier which can be used by subsystems that may\nbe interested in when a task has completely died and is about to\nhave it\u0027s last resource freed.\n\n  The Android lowmemory killer uses this to determine when a task\nit has killed has finally given up its goods.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "f4713d3a28ad0981db2b857eea84c00c6812852b",
      "tree": "88b74d5cde7ff8266ec7967cd37a3ad71e5adfed",
      "parents": [
        "97f59a17e9fb9fb6c1f953e423bde35aebf4fbff"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Mar 18 16:04:18 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:28 2011 -0700"
      },
      "message": "wlan: Extract generic wlan platform data from tiwlan specific header\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "93739c0025f11be799729e946fdf69473fc4ffc9",
      "tree": "10d594021c51e8388f66d1f3a267466e8b4e0cd8",
      "parents": [
        "261a79980b356d131d8004e5bf507d64c0e7fba1"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jul 29 20:21:28 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:15 2011 -0700"
      },
      "message": "serial_core: Add wake_peer uart operation which is called before starting UART TX. The idea here is to provide a mechanism where we can wakeup our peer before sending data.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "24087d74f5146ae7dc6b7a84b58fab1e3b90d7a4",
      "tree": "a3c10e325cc8acae02cf61b5f1ceb64af3e03627",
      "parents": [
        "3e3d03562f2c47e358388c5d8d955c90e206c081"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jun 11 10:49:48 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:15 2011 -0700"
      },
      "message": "wl127x-rfkill: Add power control driver for TI WL127X Bluetooth chips\n\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "3e3d03562f2c47e358388c5d8d955c90e206c081",
      "tree": "dea783bdf01ab5a4364dd7897c0a9f31d8fc1365",
      "parents": [
        "0da19af0b8c8b8d8bd19a262479d49d8061c0c13"
      ],
      "author": {
        "name": "Brian Swetland",
        "email": "swetland@google.com",
        "time": "Tue Apr 08 22:34:46 2008 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:15 2011 -0700"
      },
      "message": "kernel_debugger_core: add interrupt-context debugger core\n\nThis provides kernel_debugger() which can be called from an interrupt\ncontext low level debugger wedge to execute commands that inspect\nkernel state.  It doesn\u0027t do much on its own.\n\nSigned-off-by: Brian Swetland \u003cswetland@google.com\u003e\n\nkernel_debugger_core: Add sysrq command.\n\nsysrq \u003cc\u003e will run the sysrq command \u003cc\u003e and dump what\nwas added to the kernel log while the command ran.\n\nSigned-off-by: Brian Swetland \u003cswetland@google.com\u003e\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "622495a5adf75911922749bb10ba7b1b8c6b8639",
      "tree": "25f1814a20e391b820417e3674f5cb75c6ba7f24",
      "parents": [
        "764fc0ee29cc7e19167c2a73ebd6548a9ffbc88f"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jun 19 07:15:05 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "security: Add AID_NET_RAW and AID_NET_ADMIN capability check in cap_capable().\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n"
    },
    {
      "commit": "764fc0ee29cc7e19167c2a73ebd6548a9ffbc88f",
      "tree": "a88317d43032f18c1266887de9410303461e327e",
      "parents": [
        "60df15772858da0ea198f11bf3e506685e15c84f"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jun 13 02:29:04 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "net: PPPoPNS and PPPoLAC fixes.\n\nnet: Fix a bitmask in PPPoPNS and rename constants in PPPoPNS and PPPoLAC.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nnet: Fix a potential deadlock while releasing PPPoLAC/PPPoPNS socket.\n\nPPP driver guarantees that no thread will be executing start_xmit() after\nreturning from ppp_unregister_channel(). To achieve this, a spinlock (downl)\nis used. In pppolac_release(), ppp_unregister_channel() is called after sk_udp\nis locked. At the same time, another thread might be running in pppolac_xmit()\nwith downl. Thus a deadlock will occur if the thread tries to lock sk_udp.\nThe same situation might happen on sk_raw in pppopns_release().\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nnet: Force PPPoLAC and PPPoPNS to bind an interface before creating PPP channel.\n\nIt is common to manipulate the routing table after configuring PPP device.\nSince both PPPoLAC and PPPoPNS run over IP, care must be taken to make sure\nthat there is no loop in the routing table.\nAlthough this can be done by adding a host route, it might still cause\nproblems when the interface is down for some reason.\n\nTo solve this, this patch forces both drivers to bind an interface before\ncreating PPP channel, so the system will not re-route the tunneling sockets\nto another interface when the original one is down. Another benefit is that\nnow the host route is no longer required, so there is no need to remove it\nwhen PPP channel is closed.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nnet: Avoid sleep-inside-spinlock in PPPoLAC and PPPoPNS.\n\nSince recv() and xmit() are called with a spinlock held, routines which might\nsleep cannot be used. This issue is solved by following changes:\n\nIncoming packets are now processed in backlog handler, recv_core(), instead of\nrecv(). Since backlog handler is always executed with socket spinlock held, the\nrequirement of ppp_input() is still satisfied.\n\nOutgoing packets are now processed in workqueue handler, xmit_core(), instead of\nxmit(). Note that kernel_sendmsg() is no longer used to prevent touching dead\nsockets.\n\nIn release(), lock_sock() and pppox_unbind_sock() ensure that no thread is in\nrecv_core() or xmit(). Then socket handlers are restored before release_sock(),\nso no packets will leak in backlog queue.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nnet: Fix msg_iovlen in PPPoLAC and PPPoPNS.\n\nAlthough any positive value should work (which is always true in both drivers),\nthe correct value should be 1.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n"
    },
    {
      "commit": "60df15772858da0ea198f11bf3e506685e15c84f",
      "tree": "5ea8fc74bb4b6dc1704f19a022ca0d1f7269c0ce",
      "parents": [
        "36d00741d5e6bca5f5a05239cbabaa22a6dd9f88"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jun 12 01:09:30 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "net: add PPP on PPTP Network Server (PPPoPNS) driver.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nppopns: dont include px_proto define in if_pppopns.h\n\nChange-Id: I27e687667db5b45182562f4a517a2e6cec6b1350\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "36d00741d5e6bca5f5a05239cbabaa22a6dd9f88",
      "tree": "17ab88d7fa9e19875c04a0519c94499abfe83399",
      "parents": [
        "1d38bc7d0523af2233b4280e2aeab34c6a076665"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri May 08 04:02:40 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:13 2011 -0700"
      },
      "message": "net: add PPP on L2TP Access Concentrator (PPPoLAC) driver.\n\nChange-Id: I3ae3ee7520951ae24269db0ef2898c6455cf6bcc\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nppolac: dont include px_proto define in if_pppolac.h\n\nChange-Id: I55bc9cf91ea0e9e8f7bf5d6e241d188e1269343a\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "5a7cd71e61f44959e1f0dd7196a83ab4760dde5f",
      "tree": "e39f8c91d1662e00239e0cd645c647b42104a318",
      "parents": [
        "8da0417ce464fcd7bd74348c300adfdf5066e04d"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Dec 18 09:55:20 2008 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:12 2011 -0700"
      },
      "message": "tiwlan: Add abstract wifi control functions support\n"
    },
    {
      "commit": "e6be8941f44a6561e9d42e759e5644d096bae7c7",
      "tree": "c049c7883937d9dd5952ddc94a7a187d5a5781b9",
      "parents": [
        "00bc4089eff55f9c2024186937546c8e8d6cccb0"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Dec 10 16:30:15 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:12 2011 -0700"
      },
      "message": "USB: gadget: composite: Use separate switches for connected and config state\n\nAlso remove disconnect debouncing, which didn\u0027t actually work on some platforms\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "677ba87bdfc5765bb2ed80692d74f8de41b83f11",
      "tree": "91ad07b17d6ddf65db0811aabe4f46c0b5331e73",
      "parents": [
        "51d5755259a7deb468d3f99fdde1109df425f955"
      ],
      "author": {
        "name": "John Michelau",
        "email": "john.michelau@motorola.com",
        "time": "Mon Nov 08 18:05:37 2010 -0600"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:11 2011 -0700"
      },
      "message": "usb: gadget: Multiple ACM gadget instances\n\n- Added multiple ACM instance support in Android gadget\n- Fixed multiple instance naming issue in ACM function\n- Increased max instances from 4 to 8\n\nChange-Id: I65f1b0be94da859bab7ec0ad7cd804b896c7c4c5\nSigned-off-by: John Michelau \u003cjohn.michelau@motorola.com\u003e\n"
    }
  ],
  "next": "3e800b6fa0f559b4cda0dfc866b85c94138d1c99"
}
