)]}'
{
  "log": [
    {
      "commit": "6dbff369024f97a8b1366e7e8fa4a199698c9695",
      "tree": "6f7fec15fd58f2314e9bc7511ef98eced36f5f3d",
      "parents": [
        "4faf7d4ac0d99a360f5633e422636243786b767a"
      ],
      "author": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Sat Apr 20 21:49:48 2013 -0700"
      },
      "committer": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Sat Apr 20 21:49:48 2013 -0700"
      },
      "message": "lexikon: adjust default max cpufreq\n\nChange-Id: I479fd76b293022fec6e2c40e29ee1ea91d8319ee\n"
    },
    {
      "commit": "4faf7d4ac0d99a360f5633e422636243786b767a",
      "tree": "2952b948d0e40636dc330c00b5596bf033dfc125",
      "parents": [
        "d794f0ecaa850d297e5a35b5c524fc76f44f161b"
      ],
      "author": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Tue Feb 19 20:54:53 2013 -0700"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Tue Feb 19 20:54:53 2013 -0700"
      },
      "message": "msm7x30: Import *hid from qsd8k kernel.\n\nChange-Id: I5ac3739d741be29cdc8b2f851bde3d2813624990\n"
    },
    {
      "commit": "d794f0ecaa850d297e5a35b5c524fc76f44f161b",
      "tree": "b10bf44409363be2afd3a3d7263c993b92ce5b6e",
      "parents": [
        "18eee359abd0cbba140cc7c4dd9310509fbbc0e8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Nov 11 14:05:08 2010 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Feb 04 23:02:51 2013 -0700"
      },
      "message": "atomic: add atomic_inc_not_zero_hint()\n\nFollowup of perf tools session in Netfilter WorkShop 2010\n\nIn the network stack we make high usage of atomic_inc_not_zero() in\ncontexts we know the probable value of atomic before increment (2 for udp\nsockets for example)\n\nUsing a special version of atomic_inc_not_zero() giving this hint can help\nprocessor to use less bus transactions.\n\nOn x86 (MESI protocol) for example, this avoids entering Shared state,\nbecause \"lock cmpxchg\" issues an RFO (Read For Ownership)\n\nakpm: Adds a new include/linux/atomic.h.  This means that new code should\nhenceforth include linux/atomic.h and not asm/atomic.h.  The presence of\ninclude/linux/atomic.h will in fact cause checkpatch.pl to warn about use\nof asm/atomic.h.  The new include/linux/atomic.h becomes the place where\narch-neutral atomic_t code should be placed.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nReviewed-by: \"Paul E. McKenney\" \u003cpaulmck@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": "18eee359abd0cbba140cc7c4dd9310509fbbc0e8",
      "tree": "87f1697327488225b49219e23847536981750aa8",
      "parents": [
        "4136c5531b387641d96c03d24ca765afa5183673"
      ],
      "author": {
        "name": "Alex Page",
        "email": "frigids@gmail.com",
        "time": "Sun Feb 03 02:06:30 2013 -0500"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun Feb 03 13:52:19 2013 -0700"
      },
      "message": "Configs: Enable UHID\n\nChange-Id: I19e8b8300f30f3aefb28b79489f9c47b88d2f0d0\n"
    },
    {
      "commit": "4136c5531b387641d96c03d24ca765afa5183673",
      "tree": "3171685b7ca481f1ffe6d386dcbc375ab705fad2",
      "parents": [
        "5b8e23e00f9dae72f40a0c87fe6a26264f6b99fd"
      ],
      "author": {
        "name": "Alan Ott",
        "email": "alan@signal11.us",
        "time": "Tue Jan 18 03:04:39 2011 -0500"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:42:10 2013 +0000"
      },
      "message": "HID: Add Support for Setting and Getting Feature Reports from hidraw\n\nPer the HID Specification, Feature reports must be sent and received on\nthe Configuration endpoint (EP 0) through the Set_Report/Get_Report\ninterfaces.  This patch adds two ioctls to hidraw to set and get feature\nreports to and from the device.  Modifications were made to hidraw and\nusbhid.\n\nNew hidraw ioctls:\n  HIDIOCSFEATURE - Perform a Set_Report transfer of a Feature report.\n  HIDIOCGFEATURE - Perform a Get_Report transfer of a Feature report.\n\nChange-Id: I9bc52faf4af89f943b10d575f266a7f27b7469a0\nSigned-off-by: Alan Ott \u003calan@signal11.us\u003e\nSigned-off-by: Antonio Ospite \u003cospite@studenti.unina.it\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n\nConflicts:\n\n\tdrivers/hid/hidraw.c\n"
    },
    {
      "commit": "5b8e23e00f9dae72f40a0c87fe6a26264f6b99fd",
      "tree": "f517543f0a90d8fbb042e0ca4cd230e318f75604",
      "parents": [
        "b44e8e88d49e21cf63335c2e99e81b4258a86295"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Sat Jul 14 18:59:25 2012 -0300"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:42:02 2013 +0000"
      },
      "message": "HID: uhid: Fix sending events with invalid data\n\nThis was detected because events with invalid types were arriving\nto userspace.\n\nThe code before this patch would only work for the first event in the\nqueue (when uhid-\u003etail is 0).\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nReviewed-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "b44e8e88d49e21cf63335c2e99e81b4258a86295",
      "tree": "46548964d3c733e5db65421b2f8953ad528e4ba0",
      "parents": [
        "56c6b5584fae45030ef7098d6ba2b544380798a1"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Jun 18 17:08:08 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:41:55 2013 +0000"
      },
      "message": "HID: uhid: silence gcc warning\n\ngcc is giving me:\n\ndrivers/hid/uhid.c: In function ‘uhid_hid_get_raw’:\ndrivers/hid/uhid.c:157: warning: ‘len’ may be used uninitialized in this function\n\nwhich is clearly bogus, as\n\n- when used as memcpy() argument, it\u0027s initialized properly\n- the code is structured in a way that either \u0027ret\u0027 or \u0027len\u0027\n  is always initialized, so the return statement always has\n  an initialized value.\n\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "56c6b5584fae45030ef7098d6ba2b544380798a1",
      "tree": "5f7b7014ac4f50df09b92247b219d43595b0e311",
      "parents": [
        "a63b877a3fc294402f6bbf7ca72d36c443f6eb78"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:28 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:41:48 2013 +0000"
      },
      "message": "MAINTAINERS: add UHID entry\n\nAdd an UHID entry to the MAINTAINERS file.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "a63b877a3fc294402f6bbf7ca72d36c443f6eb78",
      "tree": "9822ceebf27ec75759535b3bd4adc0c4b6300575",
      "parents": [
        "1a9533c9084c35871d2a47222dfef71f680eff4b"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:27 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:41:29 2013 +0000"
      },
      "message": "HID: uhid: add example program\n\nThis adds an example user-space program that emulates a 3 button mouse\nwith wheel. It detects keyboard presses and moves the mouse accordingly.\n\nIt register a fake HID device to feed the raw HID reports into the kernel.\nIn this example, you could use uinput to get the same result, but this\nshows how to get the same behavior with uhid so you don\u0027t need HID parsers\nin user-space.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "1a9533c9084c35871d2a47222dfef71f680eff4b",
      "tree": "479b16ec96a511c8b5c6f0307d9d60e1636d72cb",
      "parents": [
        "128fe4a4005c99b6a90831fe5ff75d82c0c61157"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:26 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:41:19 2013 +0000"
      },
      "message": "HID: uhid: add documentation\n\nThis describes the protocol used by uhid for user-space applications. It\ndescribes the details like non-blocking I/O and readv/writev for multiple\nevents per syscall.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "128fe4a4005c99b6a90831fe5ff75d82c0c61157",
      "tree": "11210471166afe9de998d0c9fbf9b52f3f81913a",
      "parents": [
        "de0514d2c08d071081ef0931dfe0a7dcde2a2e6c"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:25 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:41:11 2013 +0000"
      },
      "message": "HID: uhid: implement feature requests\n\nHID standard allows sending a feature request to the device which is\nanswered by an HID report. uhid implements this by sending a UHID_FEATURE\nevent to user-space which then must answer with UHID_FEATURE_ANSWER. If it\ndoesn\u0027t do this in a timely manner, the request is discarded silently.\n\nWe serialize the feature requests, that is, there is always only a single\nactive feature-request sent to user-space, other requests have to wait.\nHIDP and USB-HID do it the same way.\n\nBecause we discard feature-requests silently, we must make sure to match\na response to the corresponding request. We use sequence-IDs for this so\nuser-space must copy the ID from the request into the answer.\nFeature-answers are ignored if they do not contain the same ID as the\ncurrently pending feature request.\n\nInternally, we must make sure that feature-requests are synchronized with\nUHID_DESTROY and close() events. We must not dead-lock when closing the\nHID device, either, so we have to use separate locks.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "de0514d2c08d071081ef0931dfe0a7dcde2a2e6c",
      "tree": "4e8633dd0448ac427356a54ebfa14db174f3b13b",
      "parents": [
        "1b9098c06e8bbb84ad3369a8308ffbeee32015e7"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:24 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:40:54 2013 +0000"
      },
      "message": "HID: uhid: forward raw output reports to user-space\n\nSome drivers that use non-standard HID features require raw output reports\nsent to the device. We now forward these requests directly to user-space\nso the transport-level driver can correctly send it to the device or\nhandle it correspondingly.\n\nThere is no way to signal back whether the transmission was successful,\nmoreover, there might be lots of messages coming out from the driver\nflushing the output-queue. However, there is currently no driver that\ncauses this so we are safe. If some drivers need to transmit lots of data\nthis way, we need a method to synchronize this and can implement another\nUHID_OUTPUT_SYNC event.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "1b9098c06e8bbb84ad3369a8308ffbeee32015e7",
      "tree": "c8f03ebf3342a7a925d948b07c94ae1d1931326b",
      "parents": [
        "b2db45e03422c2a9a407139cf1d09b20bc27f1ec"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:23 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:40:46 2013 +0000"
      },
      "message": "HID: uhid: forward output request to user-space\n\nIf the hid-driver wants to send standardized data to the device it uses a\nlinux input_event. We forward this to the user-space transport-level\ndriver so they can perform the requested action on the device.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "b2db45e03422c2a9a407139cf1d09b20bc27f1ec",
      "tree": "5d8cd6a33b7ae8fb4571b7527e43352d16a3cfd7",
      "parents": [
        "a5baee69343affdc92dc71897bf665d7b45196ec"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:22 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:40:31 2013 +0000"
      },
      "message": "HID: uhid: forward open/close events to user-space\n\nHID core notifies us with *_open/*_close callbacks when there is an actual\nuser of our device. We forward these to user-space so they can react on\nthis. This allows user-space to skip I/O unless they receive an OPEN\nevent. When they receive a CLOSE event they can stop I/O again to save\nenergy.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "a5baee69343affdc92dc71897bf665d7b45196ec",
      "tree": "87c78b5384a4f51c759d52bb4d971d808719718e",
      "parents": [
        "74d078fcb5f5b735b74102466cbf4677e3625f7d"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:21 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:40:21 2013 +0000"
      },
      "message": "HID: uhid: add UHID_START and UHID_STOP events\n\nWe send UHID_START and UHID_STOP events to user-space when the HID core\nstarts/stops the device. This notifies user-space about driver readiness\nand data-I/O can start now.\n\nThis directly forwards the callbacks from hid-core to user-space.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "74d078fcb5f5b735b74102466cbf4677e3625f7d",
      "tree": "207b12c2e59c88114f8516c96b52975ae511d517",
      "parents": [
        "297ef3e6a9cb6d47a6e27e7a7166082c021f2438"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:20 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:40:11 2013 +0000"
      },
      "message": "HID: uhid: forward hid report-descriptor to hid core\n\nWhen the uhid_hid_parse callback is called we simply forward it to\nhid_parse_report() with the data that we got in the UHID_CREATE event.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "297ef3e6a9cb6d47a6e27e7a7166082c021f2438",
      "tree": "cbe0cdf611fe729452f915a744728bcd52ef0486",
      "parents": [
        "d5d69254b58464fdc44b7e75fbcd05dd4ac857b6"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:19 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:40:01 2013 +0000"
      },
      "message": "HID: uhid: allow feeding input data into uhid devices\n\nThis adds a new event type UHID_INPUT which allows user-space to feed raw\nHID reports into the HID subsystem. We copy the data into kernel memory\nand directly feed it into the HID core.\n\nThere is no error handling of the events couldn\u0027t be parsed so user-space\nshould consider all events successfull unless read() returns an error.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "d5d69254b58464fdc44b7e75fbcd05dd4ac857b6",
      "tree": "20c64be53dad28abe2239569f6f8fce259a04fb3",
      "parents": [
        "d7d0ab85e90794220d8f4e71d99feaea599a65c2"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:18 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:39:50 2013 +0000"
      },
      "message": "HID: uhid: add UHID_CREATE and UHID_DESTROY events\n\nUHID_CREATE and UHID_DESTROY are used to create and destroy a device on an\nopen uhid char-device. Internally, we allocate and register an HID device\nwith the HID core and immediately start the device. From now on events may\nbe received or sent to the device.\n\nThe UHID_CREATE event has a payload similar to the data used by\nBluetooth-HIDP when creating a new connection.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "d7d0ab85e90794220d8f4e71d99feaea599a65c2",
      "tree": "14e2aa2b07b4377c06dcd406189a2cd8105eac20",
      "parents": [
        "5705b3fa1a0816fdaa01bb92a3f1e632631f1752"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:17 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:39:42 2013 +0000"
      },
      "message": "HID: uhid: implement write() on uhid devices\n\nSimilar to read() you can only write() a single event with one call to an\nuhid device. To write multiple events use writev() which is supported by\nuhid.\n\nWe currently always return -EOPNOTSUPP but other events will be added in\nlater patches.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "5705b3fa1a0816fdaa01bb92a3f1e632631f1752",
      "tree": "ebe5029eea313544547f4a4cce2a138bb8af4692",
      "parents": [
        "70b5be80dc3406784d891072c10dfa1b16e26746"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:16 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:39:34 2013 +0000"
      },
      "message": "HID: uhid: implement read() on uhid devices\n\nUser-space can use read() to get a single event from uhid devices. read()\ndoes never return multiple events. This allows us to extend the event\nstructure and still keep backwards compatibility.\n\nIf user-space wants to get multiple events in one syscall, they should use\nthe readv()/writev() syscalls which are supported by uhid.\n\nThis introduces a new lock which helps us synchronizing simultaneous reads\nfrom user-space. We also correctly return -EINVAL/-EFAULT only on errors\nand retry the read() when some other thread captured the event faster than\nwe did.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "70b5be80dc3406784d891072c10dfa1b16e26746",
      "tree": "b40f8f63307cb9325f0a61e87016d3f203682d59",
      "parents": [
        "1520861202797c383a6b6dd6f582a06cc9bfc606"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:15 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:39:21 2013 +0000"
      },
      "message": "HID: uhid: allow poll()\u0027ing on uhid devices\n\nAs long as the internal buffer is not empty, we return POLLIN to\nuser-space.\n\nuhid-\u003ehead and uhid-\u003etail are no atomics so the comparison may return\ninexact results. However, this doesn\u0027t matter here as user-space would\nneed to poll() in two threads simultaneously to trigger this. And in this\ncase it doesn\u0027t matter if a cached result is returned or the exact new\nresult as user-space does not know which thread returns first from poll()\nand the following read(). So it is safe to compare the values without\nlocking.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "1520861202797c383a6b6dd6f582a06cc9bfc606",
      "tree": "db0f8bea34f2b43cd32c9a1119eed17fa43d4ab7",
      "parents": [
        "4e759c52e2495d866a51901848f422ce0625a5f7"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:14 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:38:44 2013 +0000"
      },
      "message": "HID: uhid: add internal message buffer\n\nWhen receiving messages from the HID subsystem, we need to process them\nand store them in an internal buffer so user-space can read() on the char\ndevice to retrieve the messages.\n\nThis adds a static buffer for 32 messages to each uhid device. Each\nmessage is dynamically allocated so the uhid_device structure does not get\ntoo big.\n\nuhid_queue() adds a message to the buffer. If the buffer is full, the\nmessage is discarded. uhid_queue_event() is an helper for messages without\npayload.\n\nThis also adds a public header: uhid.h. It contains the declarations for\nthe user-space API. It is built around \"struct uhid_event\" which contains\na type field which specifies the event type and each event can then add a\nvariable-length payload. For now, there is only a dummy event but later\npatches will add new event types and payloads.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "4e759c52e2495d866a51901848f422ce0625a5f7",
      "tree": "4b68673525ef2071a240c6ce0abb47e9129d038a",
      "parents": [
        "9d8a70fecf052ddddbebd76179ca43cbba38823d"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:13 2012 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "evervolv.gerrit2@p000000.pubip.peer1.net",
        "time": "Sun Feb 03 20:38:30 2013 +0000"
      },
      "message": "HID: uhid: introduce user-space I/O driver support for HID\n\nThis adds a dummy driver that will support user-space I/O drivers for the\nHID subsystem. This allows to write transport-level drivers like USB-HID\nand Bluetooth-HID in user-space.\n\nLow-Energy Bluetooth needs this to feed HID data that is parsed in\nuser-space back into the kernel.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "9d8a70fecf052ddddbebd76179ca43cbba38823d",
      "tree": "bdadc37efd9482820bf9b3e830e73368e9975b94",
      "parents": [
        "d0311216440b799692e0f231dbc1556651a05b18"
      ],
      "author": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 23:44:47 2013 -0800"
      },
      "committer": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 23:44:47 2013 -0800"
      },
      "message": "kernel/msm7x30: lexikon: more defconfig changes\n\nChange-Id: I449690233d398f283be9b9317b84642cd6b4ddbb\n"
    },
    {
      "commit": "d0311216440b799692e0f231dbc1556651a05b18",
      "tree": "b1f5179689939d69588d46219d043264b56291b8",
      "parents": [
        "d2ec649b14c6089c628697107f873daf78f6096c"
      ],
      "author": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 19:33:31 2013 -0800"
      },
      "committer": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 19:33:31 2013 -0800"
      },
      "message": "lexikon: bring defconfig up to par with evervolv\n\nChange-Id: Id6f76712cdabf7ecc2c1bad265f6cb9dc99fa9ca\n"
    },
    {
      "commit": "d2ec649b14c6089c628697107f873daf78f6096c",
      "tree": "8ac14543d1120806c87a4ee43182cc0a7b75670f",
      "parents": [
        "9e4311e696f448308b43bc985788f08848b473b3"
      ],
      "author": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 19:31:03 2013 -0800"
      },
      "committer": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 19:31:03 2013 -0800"
      },
      "message": "lexikon: update defconfig\n\nChange-Id: I8c6f72eef0203d9342ab99cb845e06bb4c015036\n"
    },
    {
      "commit": "9e4311e696f448308b43bc985788f08848b473b3",
      "tree": "760db944ebf7053e50925e13f5cf2e80f4c46d70",
      "parents": [
        "faaf5bd4002cf51ce147a56e46da7e3af731c4ec"
      ],
      "author": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 19:29:48 2013 -0800"
      },
      "committer": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 19:29:48 2013 -0800"
      },
      "message": "lexikon: add CONFIG_MDP4_HW_VSYNC\n\nChange-Id: I5c8dd94161576f6ff698601407dc51bc4dce93cc\n"
    },
    {
      "commit": "faaf5bd4002cf51ce147a56e46da7e3af731c4ec",
      "tree": "0803870c13e0f0532857bce3ab8f6dfb2cdb3b19",
      "parents": [
        "0a0a32ef3416f61b506e41d3fecedd96baa58552"
      ],
      "author": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 19:26:18 2013 -0800"
      },
      "committer": {
        "name": "e334",
        "email": "e334cn@gmail.com",
        "time": "Wed Jan 02 19:26:18 2013 -0800"
      },
      "message": "Import modified lexikon board files\n\nChange-Id: Ib7cbbc54c1b8e5540ba3d7ff76a2d58ce96b8bfe\n"
    },
    {
      "commit": "0a0a32ef3416f61b506e41d3fecedd96baa58552",
      "tree": "e07dfa169c9cb148f84b768f1a6211a543d57cf6",
      "parents": [
        "ab7d71edd087587870777813c5f78ec9b69cf80d"
      ],
      "author": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Tue Dec 11 20:30:51 2012 -0700"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Tue Dec 11 20:30:51 2012 -0700"
      },
      "message": "fb: fix reserved usage for 4.2\n\nChange-Id: Id6240f62c9694e816fa36f754b381a1d23471233\n"
    },
    {
      "commit": "ab7d71edd087587870777813c5f78ec9b69cf80d",
      "tree": "7b4bcad3baa0ea4a01001fc6bbd8d49165a95183",
      "parents": [
        "72ddeb0c9cb606ac2f6e9ca07be9b504ae63ed81"
      ],
      "author": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Tue Dec 11 20:24:44 2012 -0700"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Tue Dec 11 20:24:44 2012 -0700"
      },
      "message": "video: msm: add mdp version to id string\n\nChange-Id: I1482225a914f6520aeacc2c0c38d076ff68d4601\n"
    },
    {
      "commit": "72ddeb0c9cb606ac2f6e9ca07be9b504ae63ed81",
      "tree": "922f92d48d21571160ef9eabd8451199b1820cb0",
      "parents": [
        "2f92ada3c0f4690548438bf55d731e1450fba6e2"
      ],
      "author": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Nov 10 00:09:51 2012 -0700"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Nov 10 00:11:42 2012 -0700"
      },
      "message": "kernel/msm7x30: Update vivow defconfig.\n\nChange-Id: I434ef93fc25cebbd0e510e2cf51df217daebc2f6\n"
    },
    {
      "commit": "2f92ada3c0f4690548438bf55d731e1450fba6e2",
      "tree": "40298c9aea4b8193521f2506c9dd4dbcfe72283f",
      "parents": [
        "e9ea1d83a6113a39a4aa373112b3a42c9c1cb845"
      ],
      "author": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Nov 10 00:08:21 2012 -0700"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Nov 10 00:11:37 2012 -0700"
      },
      "message": "kernel/msm7x30: Update speedy defconfig.\n\nChange-Id: I40f34d41bff485830d1b5728d83127a6df840f16\n"
    },
    {
      "commit": "e9ea1d83a6113a39a4aa373112b3a42c9c1cb845",
      "tree": "203cdbb70a9f60db1a060fac2627de58d425a64f",
      "parents": [
        "f10d845e5aa52ed6b315e5593440b7c97426a775"
      ],
      "author": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Nov 10 00:11:30 2012 -0700"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Nov 10 00:11:30 2012 -0700"
      },
      "message": "kernel/msm7x30: Add vivow defconfig.\n\nChange-Id: I0fb826a68b7bf57da132f8c517539df008430486\n"
    },
    {
      "commit": "f10d845e5aa52ed6b315e5593440b7c97426a775",
      "tree": "77a8bc2462af1f543690287758b0835fd9a23750",
      "parents": [
        "63447764434f764c67b2e483fa285dd5883b8647"
      ],
      "author": {
        "name": "Andrew Boren",
        "email": "andrew@cherrybomb.main",
        "time": "Sun Oct 28 17:06:14 2012 -0700"
      },
      "committer": {
        "name": "Andrew Boren",
        "email": "andrew@cherrybomb.main",
        "time": "Sun Oct 28 17:06:14 2012 -0700"
      },
      "message": "fix for speedy\n"
    },
    {
      "commit": "63447764434f764c67b2e483fa285dd5883b8647",
      "tree": "2361fbba0825cbbbee1a8b169b0db8782d3f14f7",
      "parents": [
        "ef29127edd0b99b5217e815e1f8e31901c7aceee"
      ],
      "author": {
        "name": "Rob Beane",
        "email": "robbeane@gmail.com",
        "time": "Wed Oct 24 13:34:09 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:15:20 2012 -0400"
      },
      "message": "staging: android: logger: Update from primou 3.0 kernel\n\nChange-Id: I1281b4716c54614d69723bae2a51b2ba9f2adda3\n\nstaging: android: logger: Reduce default log size\n\nChange-Id: I259aa69e9c5e69f327628f5ebbbc3ec9d45fbcad\n"
    },
    {
      "commit": "ef29127edd0b99b5217e815e1f8e31901c7aceee",
      "tree": "931361b9150f0d9518309ca91b34c3598769e107",
      "parents": [
        "b88b9e41d905e2e051f42253451a0c02e26de972"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Wed Sep 26 19:52:59 2012 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:15:02 2012 -0400"
      },
      "message": "staging: android: lowmemorykiller: Change default debug_level to 1\n\nThe select...to kill messages are not very useful when not debugging\nthe lowmemorykiller itself. After the change to check TIF_MEMDIE\ninstead of using a task notifer this message can also get very\nnoisy.\n\nChange-Id: Ice171c25801d6faa454b885a23b24b002423b754\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "b88b9e41d905e2e051f42253451a0c02e26de972",
      "tree": "d0466c4cc0d67a6cfb8373a6dd7dc706d339f929",
      "parents": [
        "9b5257f2c5c73388ea2abb19434d14ca49d8eb48"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Nov 05 11:47:12 2010 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:14:25 2012 -0400"
      },
      "message": "staging: binder: Fix use of uninitialized variable.\n\nUnder an extremely rare condition, the variable return_error may\nnot be set.  This patch initializes the value to a known \"bad\"\nvalue, and checks before return to ensure return_error has been\nset.\n\nSigned-off-by: Nick Kralevich \u003cnnk@google.com\u003e\n"
    },
    {
      "commit": "9b5257f2c5c73388ea2abb19434d14ca49d8eb48",
      "tree": "ccf539c7d5353ce2ef9484a65aa3832867d0c8cb",
      "parents": [
        "ce9a9a34c99ee9ef4d112d44443564c00329d01c"
      ],
      "author": {
        "name": "Jozsef Kadlecsik",
        "email": "kadlec@blackhole.kfki.hu",
        "time": "Thu Nov 25 03:15:07 2010 +0000"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:14:17 2012 -0400"
      },
      "message": "ipv6: Prepare the tree for un-inlined jhash.\n\njhash is widely used in the kernel and because the functions\nare inlined, the cost in size is significant. Also, the new jhash\nfunctions are slightly larger than the previous ones so better un-inline.\nAs a preparation step, the calls to the internal macros are replaced\nwith the plain jhash function calls.\n\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ce9a9a34c99ee9ef4d112d44443564c00329d01c",
      "tree": "3cfb2cee40fd03418a7f35f8835f180a5927928c",
      "parents": [
        "b8d8a863a0cb92275ff61d3cd25f552dd555be96"
      ],
      "author": {
        "name": "Jozsef Kadlecsik",
        "email": "kadlec@blackhole.kfki.hu",
        "time": "Fri Dec 03 02:39:01 2010 +0000"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:14:09 2012 -0400"
      },
      "message": "The new jhash implementation\n\nThe current jhash.h implements the lookup2() hash function by Bob Jenkins.\nHowever, lookup2() is outdated as Bob wrote a new hash function called\nlookup3(). The patch replaces the lookup2() implementation of the \u0027jhash*\u0027\nfunctions with that of lookup3().\n\nYou can read a longer comparison of the two and other hash functions at\nhttp://burtleburtle.net/bob/hash/doobs.html.\n\nChange-Id: Ia319e0e1ade37687096d76e777d08937d05c1d4e\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b8d8a863a0cb92275ff61d3cd25f552dd555be96",
      "tree": "e3ddfa943e5aa30c997cc2b7975f5e76fd9e8466",
      "parents": [
        "e27814ec2da0358f81a8b9e6c6abe7c1ac55bf81"
      ],
      "author": {
        "name": "Shubhraprakash Das",
        "email": "sadas@codeaurora.org",
        "time": "Mon Nov 21 13:02:22 2011 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:13:59 2012 -0400"
      },
      "message": "pmem: Check for valid virtual address while flushing\n\nReturn invalid error if a NULL virtual address is\npassed for pmem cache maintenance ioctl\u0027s\n\nChange-Id: I18c369d4c2ac790b622408a988d171d6f75c4cd3\nSigned-off-by: Shubhraprakash Das \u003csadas@codeaurora.org\u003e\n"
    },
    {
      "commit": "e27814ec2da0358f81a8b9e6c6abe7c1ac55bf81",
      "tree": "f35798d49f8a80e9ee6b395e4a4ec0b795d898da",
      "parents": [
        "4703fc4f382cc739c84bff584c318298b35863be"
      ],
      "author": {
        "name": "Laura Abbott",
        "email": "lauraa@codeaurora.org",
        "time": "Sun Jun 12 13:29:08 2011 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:13:48 2012 -0400"
      },
      "message": "pmem: Correctly account for aligned blocks\n\nwhen finding an aligned chunk, the allocator cannot assume that\nbit 0 will point to an aligned block. The only way to guarantee\na block will be aligned is to pass in the starting bit of a block\nthat is aligned. if t is the start bit which points to an aligned\nblock, and s is the spacing, bit t+n*s is guaranteed to be aligned\nto spacing s for positive integer values of n.\n\nCRs-Fixed: 288000\nSigned-off-by: Laura Abbott \u003clauraa@codeaurora.org\u003e\n"
    },
    {
      "commit": "4703fc4f382cc739c84bff584c318298b35863be",
      "tree": "a2a9f3f4d38c3444c32a6795eef1bd1e655e9cd4",
      "parents": [
        "91d689740b0116def5a097f5c763a65add9e724e"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Mon Aug 09 17:19:06 2010 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:13:41 2012 -0400"
      },
      "message": "shmem: reduce pagefault lock contention\n\nI\u0027m running a shmem pagefault test case (see attached file) under a 64 CPU\nsystem.  Profile shows shmem_inode_info-\u003elock is heavily contented and\n100% CPUs time are trying to get the lock.  In the pagefault (no swap)\ncase, shmem_getpage gets the lock twice, the last one is avoidable if we\nprealloc a page so we could reduce one time of locking.  This is what\nbelow patch does.\n\nThe result of the test case:\n2.6.35-rc3: ~20s\n2.6.35-rc3 + patch: ~12s\nso this is 40% improvement.\n\nOne might argue if we could have better locking for shmem.  But even shmem\nis lockless, the pagefault will soon have pagecache lock heavily contented\nbecause shmem must add new page to pagecache.  So before we have better\nlocking for pagecache, improving shmem locking doesn\u0027t have too much\nimprovement.  I did a similar pagefault test against a ramfs file, the\ntest result is ~10.5s.\n\n[akpm@linux-foundation.org: fix comment, clean up code layout, elimintate code duplication]\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: \"Zhang, Yanmin\" \u003cyanmin.zhang@intel.com\u003e\nCc: Tim Chen \u003ctim.c.chen@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "91d689740b0116def5a097f5c763a65add9e724e",
      "tree": "b40101b4d0cc085f5d575b3a9f04e37235f35fd0",
      "parents": [
        "9ce7c4a1d7158c928c9733a72698e4fdebc8b602"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Mon Aug 09 17:19:03 2010 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:13:30 2012 -0400"
      },
      "message": "gcc-4.6: mm: fix unused but set warnings\n\nNo real bugs, just some dead code and some fixups.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ce7c4a1d7158c928c9733a72698e4fdebc8b602",
      "tree": "d330e21ee9f12b8a006be6d2544a3ae67b980379",
      "parents": [
        "2fc89ed49bf3e03db7af2ae3ad1ef189c19a9e86"
      ],
      "author": {
        "name": "Cesar Eduardo Barros",
        "email": "cesarb@cesarb.net",
        "time": "Mon Aug 09 17:18:32 2010 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:13:22 2012 -0400"
      },
      "message": "kmap_atomic: make kunmap_atomic() harder to misuse\n\nkunmap_atomic() is currently at level -4 on Rusty\u0027s \"Hard To Misuse\"\nlist[1] (\"Follow common convention and you\u0027ll get it wrong\"), except in\nsome architectures when CONFIG_DEBUG_HIGHMEM is set[2][3].\n\nkunmap() takes a pointer to a struct page; kunmap_atomic(), however, takes\ntakes a pointer to within the page itself.  This seems to once in a while\ntrip people up (the convention they are following is the one from\nkunmap()).\n\nMake it much harder to misuse, by moving it to level 9 on Rusty\u0027s list[4]\n(\"The compiler/linker won\u0027t let you get it wrong\").  This is done by\nrefusing to build if the type of its first argument is a pointer to a\nstruct page.\n\nThe real kunmap_atomic() is renamed to kunmap_atomic_notypecheck()\n(which is what you would call in case for some strange reason calling it\nwith a pointer to a struct page is not incorrect in your code).\n\nThe previous version of this patch was compile tested on x86-64.\n\n[1] http://ozlabs.org/~rusty/index.cgi/tech/2008-04-01.html\n[2] In these cases, it is at level 5, \"Do it right or it will always\n    break at runtime.\"\n[3] At least mips and powerpc look very similar, and sparc also seems to\n    share a common ancestor with both; there seems to be quite some\n    degree of copy-and-paste coding here. The include/asm/highmem.h file\n    for these three archs mention x86 CPUs at its top.\n[4] http://ozlabs.org/~rusty/index.cgi/tech/2008-03-30.html\n[5] As an aside, could someone tell me why mn10300 uses unsigned long as\n    the first parameter of kunmap_atomic() instead of void *?\n\nSigned-off-by: Cesar Eduardo Barros \u003ccesarb@cesarb.net\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e (arch/arm)\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e (arch/mips)\nCc: David Howells \u003cdhowells@redhat.com\u003e (arch/frv, arch/mn10300)\nCc: Koichi Yasutake \u003cyasutake.koichi@jp.panasonic.com\u003e (arch/mn10300)\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e (arch/parisc)\nCc: Helge Deller \u003cdeller@gmx.de\u003e (arch/parisc)\nCc: \"James E.J. Bottomley\" \u003cjejb@parisc-linux.org\u003e (arch/parisc)\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e (arch/powerpc)\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e (arch/powerpc)\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e (arch/sparc)\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e (arch/x86)\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e (arch/x86)\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e (arch/x86)\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e (include/asm-generic)\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e (\"Hard To Misuse\" list)\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2fc89ed49bf3e03db7af2ae3ad1ef189c19a9e86",
      "tree": "14ab0b737abfa2e31cc9fc993bddbc8afa9564eb",
      "parents": [
        "475488ba217cfd8f4e9da3c1fb06a7603e1558b2"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Aug 16 10:34:01 2012 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:13:09 2012 -0400"
      },
      "message": "mmc: Make sure host is disabled on suspend\n\nChange-Id: Ie0bf2004e173cef8dad66722a152658d7727ab65\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "475488ba217cfd8f4e9da3c1fb06a7603e1558b2",
      "tree": "4c852997865dbc49d2aa1e07d6bc994f7b36648c",
      "parents": [
        "e9049c0852f5b15b408848c3dcba4553d4d8aab8"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Tue Aug 28 16:53:32 2012 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:12:55 2012 -0400"
      },
      "message": "netfilter: xt_qtaguid: report only uid tags to non-privileged processes\n\nIn the past, a process could only see its own stats (uid-based summary,\nand details).\nNow we allow any process to see other UIDs uid-based stats, but still\nhide the detailed stats.\n\nChange-Id: I7666961ed244ac1d9359c339b048799e5db9facc\nSigned-off-by: JP Abgrall \u003cjpa@google.com\u003e\n"
    },
    {
      "commit": "e9049c0852f5b15b408848c3dcba4553d4d8aab8",
      "tree": "4ed530b0ad6e7089ee32fddf87170e2722c2ada1",
      "parents": [
        "5c1be6e7a51505a0ccedb5c44a19ce6767dd68a0"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Fri May 25 20:15:56 2012 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:12:49 2012 -0400"
      },
      "message": "Staging: android: binder: Add some missing binder_stat_br calls\n\nCached thread return errors, death notifications and new looper\nrequests were not included in the stats.\n\nChange-Id: Iabe14b351b662d3f63009ecb3900f92fc3d72cc4\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "5c1be6e7a51505a0ccedb5c44a19ce6767dd68a0",
      "tree": "6e81d98d94167229cf8780290c50e6817b5287c6",
      "parents": [
        "15ac692f6328c9368aba2ec80abde0015d735d7b"
      ],
      "author": {
        "name": "Zhengwang Ruan",
        "email": "ruan.zhengwang@gmail.com",
        "time": "Wed Mar 07 10:36:57 2012 +0800"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:12:42 2012 -0400"
      },
      "message": "Staging:android: Change type for binder_debug_no_lock switch to bool\n\nGCC warns that module_param_named() indirectly returns a bool type value\nwhich is different from \u0027int\u0027 type binder_debug_no_lock declared. Change\nit to bool because it is a internal switch for debugging.\n\nSigned-off-by: Zhengwang Ruan \u003cruan.zhengwang@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "15ac692f6328c9368aba2ec80abde0015d735d7b",
      "tree": "82de66ec977c550c0652a6f0c4872ecbf805efa1",
      "parents": [
        "f523221ab0e4d414d38479addd5b511e44e8bf77"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Wed Feb 01 15:29:13 2012 -0800"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:12:35 2012 -0400"
      },
      "message": "Staging: android: binder: Fix crashes when sharing a binder file between processes\n\nOpening the binder driver and sharing the file returned with\nother processes (e.g. by calling fork) can crash the kernel.\nPrevent these crashes with the following changes:\n- Add a mutex to protect against two processes mmapping the\n  same binder_proc.\n- After locking mmap_sem, check that the vma we want to access\n  (still) points to the same mm_struct.\n- Use proc-\u003etsk instead of current to get the files struct since\n  this is where we get the rlimit from.\n\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\nCc: stable \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "f523221ab0e4d414d38479addd5b511e44e8bf77",
      "tree": "3fee1524c33ea1d13137f8b8924f101c99eb0138",
      "parents": [
        "d08ca1bc211b2f06e853a103f6632d5356873561"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Fri Jan 20 19:56:21 2012 -0800"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:12:28 2012 -0400"
      },
      "message": "Staging: android: binder: Don\u0027t call dump_stack in binder_vma_open\n\nIf user-space partially unmaps the driver, binder_vma_open\nwould dump the kernel stack. This is not a kernel bug however\nand will be treated as if the whole area was unmapped once\nbinder_vma_close gets called.\n\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\nCc: stable \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "d08ca1bc211b2f06e853a103f6632d5356873561",
      "tree": "3d5d4d900efb474681ee4b73e0b3ae8d0f3a22a2",
      "parents": [
        "fc6a98843165c9ab4a8d7ba3119a86b0a3a12d83"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Wed Mar 21 09:24:57 2012 +0800"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:12:19 2012 -0400"
      },
      "message": "Staging: android: timed_gpio: Fix resource leak in timed_gpio_probe error paths\n\nIf gpio_request fails, we need to free all allocated resources.\nCurrent code uses wrong array index to access gpio_data array.\nSo current code actually frees gpio_data[i].gpio by j times.\n\nThis patch moves the error handling code to err_out and thus improves\nreadability.\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "fc6a98843165c9ab4a8d7ba3119a86b0a3a12d83",
      "tree": "95efa02b933f44f684327608c29b959593123068",
      "parents": [
        "d99d86d2fad96e8885b893f976b714b77338298b"
      ],
      "author": {
        "name": "Tracey Dent",
        "email": "tdent48227@gmail.com",
        "time": "Sun Jan 22 21:28:46 2012 -0500"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Oct 24 22:12:10 2012 -0400"
      },
      "message": "drivers/staging/android/timed_gpio.c: Stlye fixes\n\nJust made it more neat and not bother scripts/checkpatch.pl\n\nSigned-off-by: Tracey Dent \u003ctdent48227@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "d99d86d2fad96e8885b893f976b714b77338298b",
      "tree": "542849cef07ee88f8da6f8797fab2c20b07c962f",
      "parents": [
        "e9f755bac9da0d96fc23dea93319db978bb408d8"
      ],
      "author": {
        "name": "Rajeshwar Kurapaty",
        "email": "rkurapat@codeaurora.org",
        "time": "Fri Sep 21 10:58:23 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Oct 05 21:02:40 2012 -0400"
      },
      "message": "vidc: send flush done if flush is issued in EoS while encoding\n\nThere is a race condition in encoder, when an input buffer\nis received with an EoS flag but doesn\u0027t have an output\nbuffer to process that and if simultaneously flush is issued.\nThis is fixed by sending flush done if flush is issued in EoS.\n\nCRs-Fixed: 353081\nChange-Id: I925f49779ed5cb91bfab805ba4b7102c1e3f728b\nSigned-off-by: Rajeshwar Kurapaty \u003crkurapat@codeaurora.org\u003e\n(cherry picked from commit 602d62927c6db96f8d636f7795203b19e8c412c3)\n"
    },
    {
      "commit": "e9f755bac9da0d96fc23dea93319db978bb408d8",
      "tree": "3c4297bb05fc3b4bd60afcfc69f139d9a3dc49fa",
      "parents": [
        "b504f6ca96705efae605227dab8e22e21ac8d05f"
      ],
      "author": {
        "name": "Rammohan Basavaraju",
        "email": "rammoh@codeaurora.org",
        "time": "Thu Aug 30 19:29:15 2012 +0530"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Oct 05 21:01:22 2012 -0400"
      },
      "message": "msm: kgsl: Update pagetable on context destruction for A20x\n\nEnsure that pagetable is updated during context destruction. This\nresolves stability issues during Camera launch/exit scenarios. Applies\nonly to A20x GPUs. This change is already done for Z180 device.\n\nChange-Id: I955c7220aa8234009f5bca0a273093e47147279d\nSigned-off-by: Rammohan Basavaraju \u003crammoh@codeaurora.org\u003e\n"
    },
    {
      "commit": "b504f6ca96705efae605227dab8e22e21ac8d05f",
      "tree": "0b07935f6e8a0983a582bdd9826bb39d7755271c",
      "parents": [
        "10e16dd1cdbb869809c52e323a0fce6c94a88adb"
      ],
      "author": {
        "name": "Rammohan Basavaraju",
        "email": "rammoh@codeaurora.org",
        "time": "Fri Aug 17 22:56:29 2012 +0530"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Oct 05 21:01:09 2012 -0400"
      },
      "message": "msm: kgsl: Increase REG_RBBM_CNTL value to 0xFFFF for A200\n\nIncrease number of clocks that RBBM will wait before de-asserting\nthe Register Clock Active signal. This fixes kernel panics during\nstability tests on multiple devices\n\nChange-Id: I50ad69f28b50444e88239c2332bd5756db1ae089\nCRs-fixed: 372793\nSigned-off-by: Rammohan Basavaraju \u003crammoh@codeaurora.org\u003e\n"
    },
    {
      "commit": "10e16dd1cdbb869809c52e323a0fce6c94a88adb",
      "tree": "a670ad8c45c18cfa8ccd46da323d57db9f33551c",
      "parents": [
        "97613cd40c16e97d5fd515dfe2af1d76ac3e1374"
      ],
      "author": {
        "name": "Jordan Crouse",
        "email": "jcrouse@codeaurora.org",
        "time": "Thu Aug 16 09:45:29 2012 -0600"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Oct 05 21:00:59 2012 -0400"
      },
      "message": "msm: kgsl: Do bounds checking on user supplied GPU addresses\n\nAdd bounds checking to kgsl_sharedmem_find_region to ensure that GPU\naddresses supplied by the user via KGSL_IOCTL_SHAREMEM_FREE and\nKGSL_IOCTL_CFF_SYNCMEM are within a valid range for the MMU scheme of\nchoice.\n\nCRs-Fixed: 380296\nSigned-off-by: Jordan Crouse \u003cjcrouse@codeaurora.org\u003e\n(cherry picked from commit e22e21d93260cee3aff0dff7247635d9624c8aa5)\n\nChange-Id: Ic0dedbad2d55d1029ff512bc4e7bf3acd1e67841\nSigned-off-by: Jordan Crouse \u003cjcrouse@codeaurora.org\u003e\n"
    },
    {
      "commit": "97613cd40c16e97d5fd515dfe2af1d76ac3e1374",
      "tree": "13056ea6fedf027ee5b3a8df74c72557252ae9dc",
      "parents": [
        "e8fe52c3b5ac452de86231aa7e14b88a6e1f44a7"
      ],
      "author": {
        "name": "Jeremy Gebben",
        "email": "jgebben@codeaurora.org",
        "time": "Mon Apr 23 16:02:47 2012 -0600"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Oct 05 21:00:50 2012 -0400"
      },
      "message": "msm: kgsl: use correct 2d ringbuffer offset in resume\n\nThe 2d timestamp is used as an index into the ringbuffer.\nNow that z180_dev-\u003ecurrent_timestamp is preserved across\nresume, make sure that ADDR_VGV3_NEXTADDR is set to the\ngpu address that corresponds to the current timestamp.\n\nCRs-Fixed: 347025\nChange-Id: Ib7dc4579943ab24e04279ede1555539ec21adabd\nSigned-off-by: Jeremy Gebben \u003cjgebben@codeaurora.org\u003e\n"
    },
    {
      "commit": "e8fe52c3b5ac452de86231aa7e14b88a6e1f44a7",
      "tree": "f0e32900bef6fe36a5ecc2092f897f3e9f0b2541",
      "parents": [
        "d347eaa51d4fec9f25796fdb29eebd014b7207af"
      ],
      "author": {
        "name": "Flemmard",
        "email": "flemmard@gmail.com",
        "time": "Fri Aug 10 11:20:23 2012 +0200"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Oct 05 21:00:41 2012 -0400"
      },
      "message": "i2c: chips: corrected a warning for BMA150\n\nChange-Id: Iec6d0fe0fe159007b7c4a7a9e5ac6a8c6fbec41e\n"
    },
    {
      "commit": "d347eaa51d4fec9f25796fdb29eebd014b7207af",
      "tree": "43c9c9fd3e46cf242b3e5f5a1f45dddc86ac74c3",
      "parents": [
        "68a315f84f5776886c5b2d3837bc61bab5cf77da"
      ],
      "author": {
        "name": "Shubhraprakash Das",
        "email": "sadas@codeaurora.org",
        "time": "Tue Aug 14 00:25:43 2012 -0700"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Oct 05 21:00:23 2012 -0400"
      },
      "message": "lib: genalloc: Change chunk allocation to vmalloc\n\nChange the chunk allocation from kmalloc to vmalloc for\nallocations greater than a page. This allows large\nchunks to be allocated from physically non-contiguous\nmemory and increases the chance of the allocation\nsucceeding.\n\nCRs-fixed: 387655\nSigned-off-by: Shubhraprakash Das \u003csadas@codeaurora.org\u003e\n(cherry picked from commit 0614b96dc8e4c8a0dd0db41aec5a79daa3bdf091)\n\nConflicts:\n\n\tlib/genalloc.c\n\nChange-Id: Ic0dedbad9d277d0842591b1f075ce3b80c8c05de\nSigned-off-by: Jordan Crouse \u003cjcrouse@codeaurora.org\u003e\n"
    },
    {
      "commit": "68a315f84f5776886c5b2d3837bc61bab5cf77da",
      "tree": "026b58edc2cbb205b020ddd5299dbb927e8d8f7b",
      "parents": [
        "1d191864bdeb4332c3f2bfb7456fddb0e611db24"
      ],
      "author": {
        "name": "Rob Beane",
        "email": "robbeane@gmail.com",
        "time": "Sat Sep 08 23:52:42 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:56:44 2012 -0400"
      },
      "message": "i2c: chips: update cm3628 from vivo source.\n\nCherry-picked from: Evan McClain \u003caeroevan@gmail.com\u003e\n\nChange-Id: Icd30002667e3718bc8743e9951886e9a1042b7be\n"
    },
    {
      "commit": "1d191864bdeb4332c3f2bfb7456fddb0e611db24",
      "tree": "2a9ef418fea88b305d0893c9d9f128fe20aadf78",
      "parents": [
        "af3a3cf747fee04ef1b7b8591e3c1349cc0265d4"
      ],
      "author": {
        "name": "Rob Beane",
        "email": "robbeane@gmail.com",
        "time": "Sat Sep 08 23:52:06 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:56:37 2012 -0400"
      },
      "message": "i2c: chips: update bma150 from vivo source.\n\nCherry-picked from: Evan McClain \u003caeroevan@gmail.com\u003e\n\nChange-Id: I25f175201df14c9a73a547292c39ef70886a8794\n"
    },
    {
      "commit": "af3a3cf747fee04ef1b7b8591e3c1349cc0265d4",
      "tree": "1bf5bcc8f7918a0b95b71f61b76a6f7996d5c0a5",
      "parents": [
        "05a4270fb418dd49c361f033bd7888d5bad0bfa7"
      ],
      "author": {
        "name": "Rob Beane",
        "email": "robbeane@gmail.com",
        "time": "Sat Sep 08 23:51:39 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:56:30 2012 -0400"
      },
      "message": "i2c: chips: update akm8975 from vivo source.\n\nCherry-picked from: Evan McClain \u003caeroevan@gmail.com\u003e\n\nChange-Id: If06e906c8fffc4fe769fa25d744b2c1e91d4f4e0\n"
    },
    {
      "commit": "05a4270fb418dd49c361f033bd7888d5bad0bfa7",
      "tree": "5ca8cca5ef8299f511d46b77863a5dacc58bdcfd",
      "parents": [
        "07fb284668c16960c5b0b00b6ae53bcb33060846"
      ],
      "author": {
        "name": "Rajesh Kemisetti",
        "email": "rajeshk@codeaurora.org",
        "time": "Fri Jun 29 20:21:31 2012 +0530"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:52:48 2012 -0400"
      },
      "message": "msm: kgsl: Add TLB flush for each submit in case of 8x25/7x2xa\n\nAdd TLB flush for each submit to prevent target freeze\nin case of 8x25/7x27a/7x25a targets.\n\nCRs-fixed: 379991\nSigned-off-by: Rajesh Kemisetti \u003crajeshk@codeaurora.org\u003e\n(cherry picked from commit 22a06d18c6eb100419616ddf7a2c4ac403420a9e)\n\nChange-Id: I7c34660128c791c9329b41246af39879625d64d3\nSigned-off-by: Srivalli Oguri \u003coguri@codeaurora.org\u003e\n"
    },
    {
      "commit": "07fb284668c16960c5b0b00b6ae53bcb33060846",
      "tree": "4f08522f938bfcfe419398571dc7529b6336db0c",
      "parents": [
        "a6a9ac1bb08e1f1cda863fe3c7fff4efc0deead6"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:50:23 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:50:23 2012 -0400"
      },
      "message": "net: wireless: bcm4329_204: Try to fix possible typo.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "a6a9ac1bb08e1f1cda863fe3c7fff4efc0deead6",
      "tree": "316b09cb13c38640101653a04820bca297d72ea8",
      "parents": [
        "73abcd5303f809f35e555277b5935e4977f89363"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:49:31 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:49:31 2012 -0400"
      },
      "message": "net: wireless: bcm4329: Try to fix possible typo.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "73abcd5303f809f35e555277b5935e4977f89363",
      "tree": "7534a9f18c3c05e0b92687c80aaf7436d223256e",
      "parents": [
        "6d135ab5419b8edae212d26141b2a8d8d3f63035"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:48:02 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sun Sep 16 23:48:02 2012 -0400"
      },
      "message": "cpufreq: hopefully fixed CONFIG_VDD_USERSPACE to allow for undervolting.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "6d135ab5419b8edae212d26141b2a8d8d3f63035",
      "tree": "6a6db1b0335aaec7ddfc85b524d8ab42dc4601d6",
      "parents": [
        "97f044c19fa57ec77781cbf1b38d8c312445f082"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Sep 14 21:59:45 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Sep 14 21:59:45 2012 -0400"
      },
      "message": "Revert \"Update kgsl and msm_fb from caf jb_chocolate\"\n\nThis reverts commit 97f044c19fa57ec77781cbf1b38d8c312445f082.\n\nGoing to need to do this a bit more carefully...\n"
    },
    {
      "commit": "97f044c19fa57ec77781cbf1b38d8c312445f082",
      "tree": "3e35b9471d8e4aaeb43204d45941e086d96e95bd",
      "parents": [
        "cb060a05dd1f19af2c067761f5aec6f3e4f48f1f"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Sep 12 00:33:53 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Sep 12 00:33:53 2012 -0400"
      },
      "message": "Update kgsl and msm_fb from caf jb_chocolate\n\nCurrent as of 9f50d27978515e62323231539cdb44f897386b29\nmsm_fb: hdmi: Correct checksum value\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "cb060a05dd1f19af2c067761f5aec6f3e4f48f1f",
      "tree": "6a6db1b0335aaec7ddfc85b524d8ab42dc4601d6",
      "parents": [
        "011a302a24ac1effd31273a959bd880142d75596"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Sep 05 23:36:33 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Sep 05 23:36:33 2012 -0400"
      },
      "message": "vivo: cal_ -\u003e call_\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "011a302a24ac1effd31273a959bd880142d75596",
      "tree": "40b3e66c7ececb4632230daf5fb3532f5675a20a",
      "parents": [
        "c54cfe8e62434af59dfad2c9706a72c59c914273"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Aug 15 13:13:26 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Aug 15 13:13:26 2012 -0400"
      },
      "message": "Revert \"Remove graphite optimizations.\"\n\nThis reverts commit a2287aa13f020b37f2d46b38283fc5c166969a50.\n"
    },
    {
      "commit": "c54cfe8e62434af59dfad2c9706a72c59c914273",
      "tree": "95d8264c7f0f799a204924297f6dbbacb949237e",
      "parents": [
        "887bb02a663d9fd5d4e1e0f90933c5707f2269ab"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Aug 15 12:29:41 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Wed Aug 15 12:29:41 2012 -0400"
      },
      "message": "cpufreq: Fix rt_workqueue issues.\n\nEverything should build now, but things are really messy after all of these\nmerges...\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "887bb02a663d9fd5d4e1e0f90933c5707f2269ab",
      "tree": "ffc3ac0a798444f7d8e8db6069c6f87c90665016",
      "parents": [
        "b3388976e9e519102ffc21518dca77b52ee8c5fb"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Aug 13 22:03:08 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Aug 13 22:03:08 2012 -0400"
      },
      "message": "Fix merge issues.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "b3388976e9e519102ffc21518dca77b52ee8c5fb",
      "tree": "ccffb3771c8c60adc731e1786ff21bd0117c755c",
      "parents": [
        "6037212953884600a9668980ab133980e45b54bf",
        "fe6995c8863edd408590941dc525d1430296a71a"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Aug 13 16:14:23 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Aug 13 16:14:23 2012 -0400"
      },
      "message": "Merge remote-tracking branch \u0027jerl92/android-msm-2.6.35-ics\u0027 into android-msm-2.6.35-ics-aeroevan\n\nConflicts:\n\tarch/arm/mach-msm/devices_htc.c\n\tblock/Kconfig.iosched\n\tblock/Makefile\n\tblock/vr-iosched.c\n\tdrivers/base/syscore.c\n\tdrivers/cpufreq/Kconfig\n\tdrivers/cpufreq/Makefile\n\tdrivers/cpufreq/acpi-cpufreq.c\n\tdrivers/cpufreq/cpufreq.c\n\tdrivers/cpufreq/cpufreq_interactivex.c\n\tdrivers/cpufreq/cpufreq_lagfree.c\n\tdrivers/cpufreq/cpufreq_ondemand.c\n\tdrivers/cpufreq/cpufreq_smartass.c\n\tdrivers/cpufreq/cpufreq_stats.c\n\tdrivers/cpufreq/pcc-cpufreq.c\n\tdrivers/cpuidle/cpuidle.c\n\tdrivers/cpuidle/governors/menu.c\n\tinclude/linux/cpufreq.h\n\tinclude/trace/events/power.h\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "6037212953884600a9668980ab133980e45b54bf",
      "tree": "24647fe6f09712bc718b3e28ec6e9f9a10dbe989",
      "parents": [
        "443a99ad4ea11d5e7e02657f75dab6fb22e1d691"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Aug 13 15:28:55 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Aug 13 15:28:55 2012 -0400"
      },
      "message": "Revert \"msm: camera: updated codes from newer HTC 7x30 kernel\"\n\nThis reverts commit 705118c462ee8470fb67cb5c730033f34610c337.\n"
    },
    {
      "commit": "443a99ad4ea11d5e7e02657f75dab6fb22e1d691",
      "tree": "085c8c8daf4c5a5b80e4ace48efd40d0c0b26454",
      "parents": [
        "1f6c2a9fb84c1bd51ec1d0a45880949dcbc335f9"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Aug 13 15:28:32 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Aug 13 15:28:32 2012 -0400"
      },
      "message": "Revert \"msm: camera: add multishot support from HTC\"\n\nThis reverts commit 06adb86297ad9dde1b888a9406fd4545fbcbb9b8.\n"
    },
    {
      "commit": "1f6c2a9fb84c1bd51ec1d0a45880949dcbc335f9",
      "tree": "cc3acf708b7f6bc5d7a08a3ce276a6dff8863471",
      "parents": [
        "5d7cfc28ca10180dc650f5737a01fceb178673ff"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:19:37 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:19:37 2012 -0400"
      },
      "message": "vivow: config: update for v12.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "5d7cfc28ca10180dc650f5737a01fceb178673ff",
      "tree": "eee59b8a14dfc9ef4bc453bd843ebe5a3e6df3fe",
      "parents": [
        "ec04262664806beea1d7f613cc6f1d3ddf6d68db"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:16:58 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:16:58 2012 -0400"
      },
      "message": "mm: vmalloc: fix merge issues.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "ec04262664806beea1d7f613cc6f1d3ddf6d68db",
      "tree": "59c320307dfa93e2fd30c94322a68e1bece48dcd",
      "parents": [
        "e1eebc0379a6772eab4c440281921b07fd1a9438"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:16:35 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:16:35 2012 -0400"
      },
      "message": "cpufreq: ondemand: fix merge issues.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "e1eebc0379a6772eab4c440281921b07fd1a9438",
      "tree": "2f61ca073e49b2d68bbcec37e8b0eb4a71826124",
      "parents": [
        "8a81f85c8c540ec764e8fe8491713f6689ee74cc"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:15:51 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:15:51 2012 -0400"
      },
      "message": "cpufreq: interactive: fix merge issues.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "8a81f85c8c540ec764e8fe8491713f6689ee74cc",
      "tree": "09a0f0e66995e6263711417897c02a232f8512b1",
      "parents": [
        "a2287aa13f020b37f2d46b38283fc5c166969a50"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:14:36 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:14:36 2012 -0400"
      },
      "message": "vivow: Add CONFIG_MDP4_HW_VSYNC stuff.\n\nAlso fix cal -\u003e call rename.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "a2287aa13f020b37f2d46b38283fc5c166969a50",
      "tree": "94c2a5df4e37a7392e448c840558aca317e36f7b",
      "parents": [
        "03406ca08deacd433cca1335926c13490acfea2e"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:13:53 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Mon Jul 30 17:13:53 2012 -0400"
      },
      "message": "Remove graphite optimizations.\n\nRequired to build with AOSP gcc 4.6 (from jellybean)\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "fe6995c8863edd408590941dc525d1430296a71a",
      "tree": "2db5a04884297011229469cd9df09b8139b91a48",
      "parents": [
        "3d47ef79adb1770160a789c6d43857d90faa1229"
      ],
      "author": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 29 10:22:14 2012 -0400"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 29 10:22:14 2012 -0400"
      },
      "message": "Revert \"[PATCH] ADD: Bluetooth code from 3.0rc6 kernel (by Imoseyon)\"\n\nThis reverts commit 569fb73b19573f64eb6d15da1b047bd46218e549.\n"
    },
    {
      "commit": "3d47ef79adb1770160a789c6d43857d90faa1229",
      "tree": "edc1688d22a6f4f77ef216a3e6aaa54c18017351",
      "parents": [
        "cb6fe44506740a3b2c0432f1583d504598b232a8"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Tue Jul 17 14:33:57 2012 -0700"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 29 10:16:47 2012 -0400"
      },
      "message": "cpufreq: Fix sysfs deadlock with concurrent hotplug/frequency switch\n\nRunning one program that continuously hotplugs and replugs a cpu\nconcurrently with another program that continuously writes to the\nscaling_set_speed node eventually deadlocks with:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: possible recursive locking detected ]\n3.4.0 #37 Tainted: G        W\n---------------------------------------------\nfilemonkey/122 is trying to acquire lock:\n (s_active#13){++++.+}, at: [\u003cc01a3d28\u003e] sysfs_remove_dir+0x9c/0xb4\n\nbut task is already holding lock:\n (s_active#13){++++.+}, at: [\u003cc01a22f0\u003e] sysfs_write_file+0xe8/0x140\n\nother info that might help us debug this:\n Possible unsafe locking scenario:\n\n       CPU0\n       ----\n  lock(s_active#13);\n  lock(s_active#13);\n\n *** DEADLOCK ***\n\n May be due to missing lock nesting notation\n\n2 locks held by filemonkey/122:\n #0:  (\u0026buffer-\u003emutex){+.+.+.}, at: [\u003cc01a2230\u003e] sysfs_write_file+0x28/0x140\n #1:  (s_active#13){++++.+}, at: [\u003cc01a22f0\u003e] sysfs_write_file+0xe8/0x140\n\nstack backtrace:\n[\u003cc0014fcc\u003e] (unwind_backtrace+0x0/0x120) from [\u003cc00ca600\u003e] (validate_chain+0x6f8/0x1054)\n[\u003cc00ca600\u003e] (validate_chain+0x6f8/0x1054) from [\u003cc00cb778\u003e] (__lock_acquire+0x81c/0x8d8)\n[\u003cc00cb778\u003e] (__lock_acquire+0x81c/0x8d8) from [\u003cc00cb9c0\u003e] (lock_acquire+0x18c/0x1e8)\n[\u003cc00cb9c0\u003e] (lock_acquire+0x18c/0x1e8) from [\u003cc01a3ba8\u003e] (sysfs_addrm_finish+0xd0/0x180)\n[\u003cc01a3ba8\u003e] (sysfs_addrm_finish+0xd0/0x180) from [\u003cc01a3d28\u003e] (sysfs_remove_dir+0x9c/0xb4)\n[\u003cc01a3d28\u003e] (sysfs_remove_dir+0x9c/0xb4) from [\u003cc02d0e5c\u003e] (kobject_del+0x10/0x38)\n[\u003cc02d0e5c\u003e] (kobject_del+0x10/0x38) from [\u003cc02d0f74\u003e] (kobject_release+0xf0/0x194)\n[\u003cc02d0f74\u003e] (kobject_release+0xf0/0x194) from [\u003cc0565a98\u003e] (cpufreq_cpu_put+0xc/0x24)\n[\u003cc0565a98\u003e] (cpufreq_cpu_put+0xc/0x24) from [\u003cc05683f0\u003e] (store+0x6c/0x74)\n[\u003cc05683f0\u003e] (store+0x6c/0x74) from [\u003cc01a2314\u003e] (sysfs_write_file+0x10c/0x140)\n[\u003cc01a2314\u003e] (sysfs_write_file+0x10c/0x140) from [\u003cc014af44\u003e] (vfs_write+0xb0/0x128)\n[\u003cc014af44\u003e] (vfs_write+0xb0/0x128) from [\u003cc014b06c\u003e] (sys_write+0x3c/0x68)\n[\u003cc014b06c\u003e] (sys_write+0x3c/0x68) from [\u003cc000e0e0\u003e] (ret_fast_syscall+0x0/0x3c)\n\nThis is because store() in cpufreq.c indirectly grabs a kobject\nwith kobject_get() and is the last one to call kobject_put()\nindirectly via cpufreq_cpu_put().\n\nFix this deadlock by introducing two new functions,\ncpufreq_cpu_get_sysfs() and cpufreq_cpu_put_sysfs() which do the\nsame thing as cpufreq_cpu_{get,put}() but don\u0027t grab the kobject.\n\nCRs-fixed: 366560\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n(cherry picked from commit f82ef51be26b44b83d86afa56b3cd9c743023470)\n\nChange-Id: Ia692e64dc3ce40f0ff3e209025a346f7d9b569da\nSigned-off-by: Ramakrishna Prasad N \u003ccrpn@codeaurora.org\u003e\n"
    },
    {
      "commit": "03406ca08deacd433cca1335926c13490acfea2e",
      "tree": "f99176cbe4ae70b214eee44bf9674ba37c47a5f2",
      "parents": [
        "851e0a6c453b19bdeddbf29f6ae3f6452214c177"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sat Jul 28 20:45:33 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sat Jul 28 20:45:33 2012 -0400"
      },
      "message": "Fix merge typo.\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "851e0a6c453b19bdeddbf29f6ae3f6452214c177",
      "tree": "3e3fe98d9dd3cfedaf5dcc3cc7ac802ee078997e",
      "parents": [
        "c527d28b2375ceb4490cb06ef3474d72e80bdc19",
        "06adb86297ad9dde1b888a9406fd4545fbcbb9b8"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sat Jul 28 20:44:27 2012 -0400"
      },
      "committer": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Sat Jul 28 20:44:27 2012 -0400"
      },
      "message": "Merge remote-tracking branch \u0027Andromadus/android-msm-2.6.35-ics-bfs\u0027 into android-msm-2.6.35-ics-aeroevan\n\nConflicts:\n\tDocumentation/cpu-freq/governors.txt\n\tDocumentation/kernel-parameters.txt\n\tMakefile\n\tarch/arm/mach-msm/acpuclock-7x30.c\n\tarch/arm/mach-msm/devices_htc.c\n\tarch/arm/mach-msm/qdsp5v2_1x/audio_lpa.c\n\tblock/Kconfig.iosched\n\tblock/Makefile\n\tblock/sio-iosched.c\n\tdrivers/cpufreq/Kconfig\n\tdrivers/cpufreq/Makefile\n\tdrivers/cpufreq/cpufreq.c\n\tdrivers/cpufreq/cpufreq_interactive.c\n\tdrivers/cpufreq/cpufreq_ondemand.c\n\tdrivers/cpufreq/cpufreq_smartass2.c\n\tdrivers/staging/zram/Kconfig\n\tdrivers/staging/zram/Makefile\n\tdrivers/staging/zram/zram_drv.c\n\tdrivers/staging/zram/zram_sysfs.c\n\tdrivers/video/msm/vidc/720p/ddl/vcd_ddl_errors.c\n\tdrivers/video/msm/vidc/720p/ddl/vcd_ddl_properties.c\n\tdrivers/video/msm/vidc/common/dec/vdec.c\n\tinclude/linux/cpufreq.h\n\tinclude/linux/sched.h\n\tinit/Kconfig\n\tkernel/sched.c\n\tkernel/sched_autogroup.c\n\tkernel/sched_autogroup.h\n\tkernel/sched_bfs.c\n\tkernel/sched_debug.c\n\tkernel/sysctl.c\n\tmm/oom_kill.c\n\nSigned-off-by: Evan McClain \u003caeroevan@gmail.com\u003e\n"
    },
    {
      "commit": "cb6fe44506740a3b2c0432f1583d504598b232a8",
      "tree": "7437607d60ae6c07b4b5c924bed978407e757331",
      "parents": [
        "6b8bfa4ecd8d7a21ce9f6ce23d8bbc28fa65ae84"
      ],
      "author": {
        "name": "Ranjhith Kalisamy",
        "email": "ranjhith@codeaurora.org",
        "time": "Fri Jun 22 19:37:51 2012 +0530"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Fri Jul 20 12:26:21 2012 -0400"
      },
      "message": "msm: kgsl: Issue packet to set shader bases on A20x/220 GPU\n\nWhen GMEM save is not performed, the events to reuse shader space\ncan get dropped. This make the CP block to wait indefinitely\ncausing a hang. To unblock this, issue a packet to set shader bases.\nThis applies only to A20x/220 GPU.\n\nCRs-fixed: 365465\nSigned-off-by: Ranjhith Kalisamy \u003cranjhith@codeaurora.org\u003e\n(cherry picked from commit d71cfd6ee15626dfd66e2b94ed524fbd2488fe91)\n\nChange-Id: I9a4bb72de7922e22f5c9a2d7972062e5ec15a187\nSigned-off-by: Srivalli Oguri \u003coguri@codeaurora.org\u003e\n"
    },
    {
      "commit": "6b8bfa4ecd8d7a21ce9f6ce23d8bbc28fa65ae84",
      "tree": "bb988879d049d7074f12a4a07bca5dd2b7ee05b3",
      "parents": [
        "580d18bb9e6d58b7051c6fbcf4dd08c1cde1fc80"
      ],
      "author": {
        "name": "Shubhraprakash Das",
        "email": "sadas@codeaurora.org",
        "time": "Fri Jun 01 14:08:03 2012 -0600"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Fri Jul 20 12:26:06 2012 -0400"
      },
      "message": "msm: kgsl: Add draw workaround commands after every 50 context switches\n\nWe need to add a draw workaround command sequence after every 50 context\nswitches if the gmem has not been saved in those 50 switches. This\nworkaround is required to prevent the GPU from deadlocking. Since gmem\nsave commands have draw calls in them we only need to execute this\nworkaround if the gmem has not been saved. The number 50 was chosen\nempirically.\n\nCRs-fixed: 362302\nChange-Id: I1a659c85736c47fe6f45030b20ce7a12851b0815\nSigned-off-by: Shubhraprakash Das \u003csadas@codeaurora.org\u003e\n\nConflicts:\n\n\tdrivers/gpu/msm/adreno.h\n\tdrivers/gpu/msm/adreno_a3xx.c\n\nSigned-off-by: Anshuman Dani \u003cadani@codeaurora.org\u003e\n"
    },
    {
      "commit": "580d18bb9e6d58b7051c6fbcf4dd08c1cde1fc80",
      "tree": "ac0c1c078f88f216946fbd9c61bd00ac21e25c7f",
      "parents": [
        "6fc4cefda88293fee993288d7cb57e79cee2ab3c"
      ],
      "author": {
        "name": "Harsh Vardhan Dwivedi",
        "email": "hdwivedi@codeaurora.org",
        "time": "Fri Jun 15 13:02:27 2012 -0600"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Fri Jul 20 12:25:54 2012 -0400"
      },
      "message": "msm: kgsl: Modify kgsl_core_exit to release resources carefully.\n\nkgsl_core_exit() should not call kgsl_sharedmem_uninit_sysfs() and\ndevice_unregister() if those resources have not been allocated.\nWe check this by seeing if kgsl_driver.virtdev has been\npopulated or not.\n\nCRs-fixed: 359477\nChange-Id: Ic040667b29bd4e006e6f29a50809d94a2bb4b469\nSigned-off-by: Harsh Vardhan Dwivedi \u003chdwivedi@codeaurora.org\u003e\n"
    },
    {
      "commit": "6fc4cefda88293fee993288d7cb57e79cee2ab3c",
      "tree": "a69627857493aeb0d75801f79dd84313ff8f8632",
      "parents": [
        "a4c32d218aaccca3c322cf62ee5c50d3c342d805"
      ],
      "author": {
        "name": "Ranjhith Kalisamy",
        "email": "ranjhith@codeaurora.org",
        "time": "Fri Jun 01 17:05:13 2012 +0530"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Fri Jul 20 12:25:42 2012 -0400"
      },
      "message": "msm: kgsl: Follow reverse sequence of init procedure during exit\n\nFixes kernel warnings about sysfs entries being unavailable when they\nare removed during exit.\n\nChange-Id: I6caaaff935b31d3f39a3610cdd2b048baf2f1a97\nSigned-off-by: Ranjhith Kalisamy \u003cranjhith@codeaurora.org\u003e\n"
    },
    {
      "commit": "a4c32d218aaccca3c322cf62ee5c50d3c342d805",
      "tree": "99b0e633cb1f606db9736793e5f72b5ece97b04b",
      "parents": [
        "8219629b667f0fc9335b7fd6ffab96ee7bbf231b"
      ],
      "author": {
        "name": "Ranjhith Kalisamy",
        "email": "ranjhith@codeaurora.org",
        "time": "Thu May 31 19:15:11 2012 +0530"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Fri Jul 20 12:25:26 2012 -0400"
      },
      "message": "msm: kgsl: Pass correct datatype to kgsl_mmu_ptpool_destroy()\n\nThis fixes a crash due to NULL pointer access when allocation of DMA\nCoherent memory fails.\n\nChange-Id: I7ea7405713682aaa7cd660ef341a968342dc0880\nSigned-off-by: Ranjhith Kalisamy \u003cranjhith@codeaurora.org\u003e\n"
    },
    {
      "commit": "8219629b667f0fc9335b7fd6ffab96ee7bbf231b",
      "tree": "5c487f0af138356d8c5057f7be921abac760df94",
      "parents": [
        "3c3d9edaa4f2ebd3617ad8b617a58362e7d89ec7"
      ],
      "author": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 15 14:01:20 2012 -0400"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 15 14:01:20 2012 -0400"
      },
      "message": "Revert \"msm: kgsl: Optimize page_alloc allocations\"\n\nThis reverts commit 1d540a3b34e98a09190874ffaff183359ea05e48.\n"
    },
    {
      "commit": "3c3d9edaa4f2ebd3617ad8b617a58362e7d89ec7",
      "tree": "6783fc0e8d2a5673dedc7f7a05fd472cb3cafa04",
      "parents": [
        "1d540a3b34e98a09190874ffaff183359ea05e48"
      ],
      "author": {
        "name": "Ranjhith Kalisamy",
        "email": "ranjhith@codeaurora.org",
        "time": "Wed Jun 27 21:00:03 2012 +0530"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 15 13:34:20 2012 -0400"
      },
      "message": "msm: kgsl: Align busy times with the end times of samples\n\nMake sure that the busy times are calculated at the end of the\ncurrent sample and before the next sample starts. This prevents\nfalse alarms of busy timer events being triggered. Applies only\nto devices with idlestats power policy.\n\nSigned-off-by: Ranjhith Kalisamy \u003cranjhith@codeaurora.org\u003e\n(cherry picked from commit 4018a9b5281e1c8bc41c3d54ff8d6d7c866434d0)\n\nChange-Id: I5be7729eedca1e698cbb822342175e2b08b154b1\nSigned-off-by: Sridhar Gujje \u003csgujje@codeaurora.org\u003e\n"
    },
    {
      "commit": "1d540a3b34e98a09190874ffaff183359ea05e48",
      "tree": "b34c033be588fa81441d945b5e0b371ac9a9788b",
      "parents": [
        "dae2cf43e619139d2080b25a2a07dbcbb94ff448"
      ],
      "author": {
        "name": "Jordan Crouse",
        "email": "jcrouse@codeaurora.org",
        "time": "Mon Jul 02 17:50:15 2012 -0600"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 15 13:34:12 2012 -0400"
      },
      "message": "msm: kgsl: Optimize page_alloc allocations\n\nUser memory needs to be zeroed out before it is sent to the user.\nTo do this, the kernel maps the page, memsets it to zero and then\nunmaps it.  By virtue of mapping it, this forces us to flush the\ndcache to ensure cache coherency between kernel and user mappings.\nOriginally, the page_alloc loop was using GFP_ZERO (which does a\nmap, memset, and unmap for each individual page) and then we were\nadditionally calling flush_dcache_page() for each page killing us\non performance.  It is far more efficient, especially for large\nallocations (\u003e 1MB), to allocate the pages without GFP_ZERO and\nthen to vmap the entire allocation, memset it to zero, flush the\ncache and then unmap. This process is slightly slower for very\nsmall allocations, but only by a few microseconds, and is well\nwithin the margin of acceptability. In all, the new scheme is\nfaster than the default for all sizes greater than 16k, and is\nalmost 4X faster for 2MB and 4MB allocations which are common for\ntextures and very large buffer objects.\n\nThe downside is that if there isn\u0027t enough vmalloc room for the\nallocation that we are forced to fallback to a slow page by\npage memset/flush, but this should happen rarely (if at all) and\nis only included for completeness.\n\nCRs-Fixed: 372638\nSigned-off-by: Jordan Crouse \u003cjcrouse@codeaurora.org\u003e\n(cherry picked from commit 89bd323f4b9c4c2382e5361c52f25f86db330583)\n\nChange-Id: I160d23c25d7cae7b9d432f9f79945e01bcbe89e9\nSigned-off-by: Sridhar Gujje \u003csgujje@codeaurora.org\u003e\n"
    },
    {
      "commit": "dae2cf43e619139d2080b25a2a07dbcbb94ff448",
      "tree": "e005f42aa9de2dde69c282aaa879d4fae57d0ca6",
      "parents": [
        "56839737580d22d5cb2fdc10a683ad55dcfc58a0"
      ],
      "author": {
        "name": "Jordan Crouse",
        "email": "jcrouse@codeaurora.org",
        "time": "Fri May 18 10:05:02 2012 -0600"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 15 13:34:04 2012 -0400"
      },
      "message": "msm: kgsl: Map a guard page on the back of GPU MMU regions\n\nAdd a guard page on the backside of page_alloc MMU mappings to protect\nagainst an over zealous GPU pre-fetch engine that sometimes oversteps the\nend of the mapped region. The same phsyical page can be re-used for each\nmapping so we only need to allocate one phsyical page to rule them all\nand in the darkness bind them.\n\nChange-Id: Ic0dedbad01e1eae5832bb79cc1446353656cf0af\nSigned-off-by: Jordan Crouse \u003cjcrouse@codeaurora.org\u003e\n"
    },
    {
      "commit": "56839737580d22d5cb2fdc10a683ad55dcfc58a0",
      "tree": "915bc0bf46796da8193fcf933897a2deb4cc99f3",
      "parents": [
        "a882d3560c5490ca260ce456ef1846f28a5896bf"
      ],
      "author": {
        "name": "Vikram Mulukutla",
        "email": "markivx@codeaurora.org",
        "time": "Wed Jun 27 17:25:46 2012 -0700"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 15 13:33:56 2012 -0400"
      },
      "message": "panic: Fix a possible deadlock in panic()\n\npanic_lock is meant to ensure that panic processing takes\nplace only on one cpu; if any of the other cpus encounter\na panic, they will spin waiting to be shut down.\n\nHowever, this causes a regression in this scenario:\n\n1. Cpu 0 encounters a panic and acquires the panic_lock\n   and proceeds with the panic processing.\n2. There is an interrupt on cpu 0 that also encounters\n   an error condition and invokes panic.\n3. This second invocation fails to acquire the panic_lock\n   and enters the infinite while loop in panic_smp_self_stop.\n\nThus all panic processing is stopped, and the cpu is stuck\nfor eternity in the while(1) inside panic_smp_self_stop.\n\nTo address this, disable local interrupts with\nlocal_irq_disable before acquiring the panic_lock. This will\nprevent interrupt handlers from executing during the panic\nprocessing, thus avoiding this particular problem.\n\nSigned-off-by: Vikram Mulukutla \u003cmarkivx@codeaurora.org\u003e\n(cherry picked from commit dd58afef43357f265e803c317bbaa91f8c440663)\n\nChange-Id: I5f7ebcf2a028df265a57922b6c959e686a82026a\nSigned-off-by: Swetha Basineni \u003csbasin@codeaurora.org\u003e\n"
    },
    {
      "commit": "a882d3560c5490ca260ce456ef1846f28a5896bf",
      "tree": "f2ede8b48be9f33680781080ad272024f0d43765",
      "parents": [
        "36ca1d6059a2d485b05aa53c62df48ba84aea003"
      ],
      "author": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 08 15:34:00 2012 -0400"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 08 15:34:00 2012 -0400"
      },
      "message": "Fix: cpufreq_interactive\n"
    },
    {
      "commit": "36ca1d6059a2d485b05aa53c62df48ba84aea003",
      "tree": "f8d0bdd7ce8e6fd2603070f19be93109fde6e6d6",
      "parents": [
        "158d7c559aad38756bb6c3372743eff3d0bbd9eb"
      ],
      "author": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 08 15:29:35 2012 -0400"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 08 15:29:35 2012 -0400"
      },
      "message": "Revert \"ext4: add missing save_error_info() to ext4_error()\"\n\nThis reverts commit 8679dc2d16a9abf3044517b7eefd7585d82ffe98.\n"
    },
    {
      "commit": "158d7c559aad38756bb6c3372743eff3d0bbd9eb",
      "tree": "90734865bebe9d0b942fa4a89fe83ebbf73a6052",
      "parents": [
        "52576bcf4c79d57863dd1a3db0d64794c7ded785"
      ],
      "author": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sat May 26 10:11:52 2012 -0400"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 08 15:27:38 2012 -0400"
      },
      "message": "Revert \"arm: mm: restrict kernel memory permissions if CONFIG_STRICT_MEMORY_RWX set\"\n\nThis reverts commit 4d311e4f9b6332043871b63aac1887a52065e790.\n\nConflicts:\n\n\tarch/arm/mm/mmu.c\n"
    },
    {
      "commit": "52576bcf4c79d57863dd1a3db0d64794c7ded785",
      "tree": "f974c85be99375f75bb92721b9761257555c90c5",
      "parents": [
        "33243fba1ff05a615a0fd56be55d751b58c64b9f"
      ],
      "author": {
        "name": "Larry Bassel",
        "email": "lbassel@codeaurora.org",
        "time": "Thu Mar 03 10:27:23 2011 -0800"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 08 15:27:29 2012 -0400"
      },
      "message": "arm: fix misleading message when CONFIG_STRICT_MEMORY_RWX set\n\nIf CONFIG_STRICT_MEMORY_RWX is set, a message was printed\nthat access was being restricted for bank 0, rather than\nin general.\n\nChange-Id: I7dbfecdde9a0e4a4724238567e9170dde30c05bf\nSigned-off-by: Larry Bassel \u003clbassel@codeaurora.org\u003e\n"
    },
    {
      "commit": "33243fba1ff05a615a0fd56be55d751b58c64b9f",
      "tree": "81661cbacd7ce461a84bd9e4c7fce89b178e2a43",
      "parents": [
        "235ff9b32e257f285f31bf034c63309263496989"
      ],
      "author": {
        "name": "Jordan Crouse",
        "email": "jcrouse@codeaurora.org",
        "time": "Wed Jun 20 08:22:16 2012 -0600"
      },
      "committer": {
        "name": "Jeremie",
        "email": "jer_l_@live.ca",
        "time": "Sun Jul 08 15:25:24 2012 -0400"
      },
      "message": "msm: kgsl: Return the raw chipid in kgsl_gpuid\n\nThere are some subtle differences between revisions of GPUs\nthat are not reflected in the GPU ID value. Return the raw\nchipid (derived from the hardware) along with the GPU ID\nwhen queried.\n\nChange-Id: Ic0dedbad035a80726e6fedc066ec11b78b79da2b\nSigned-off-by: Jordan Crouse \u003cjcrouse@codeaurora.org\u003e\n"
    }
  ],
  "next": "235ff9b32e257f285f31bf034c63309263496989"
}
