)]}'
{
  "log": [
    {
      "commit": "be17d1d867677666e6a126fcf71c6fc4cd08df09",
      "tree": "a705c1ff62d3da31752faf3c7241262f4edd91ca",
      "parents": [
        "c69233f5544478b55ede08b2180a33729ab27788"
      ],
      "author": {
        "name": "Mike Chan",
        "email": "mike@android.com",
        "time": "Wed May 12 15:52:14 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:33 2011 -0700"
      },
      "message": "scheduler: cpuacct: Enable platform callbacks for cpuacct power tracking\n\nPlatform must register cpu power function that return power in\nmilliWatt seconds.\n\nChange-Id: I1caa0335e316c352eee3b1ddf326fcd4942bcbe8\nSigned-off-by: Mike Chan \u003cmike@android.com\u003e\n"
    },
    {
      "commit": "c69233f5544478b55ede08b2180a33729ab27788",
      "tree": "c0ea18f59072b83a7c64befea0fc69b7f05f1d77",
      "parents": [
        "c1dbe304b2f161b140b1696f9ffd45c455e5505b"
      ],
      "author": {
        "name": "Mike Chan",
        "email": "mike@android.com",
        "time": "Mon May 10 17:54:48 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:33 2011 -0700"
      },
      "message": "scheduler: cpuacct: Enable platform hooks to track cpuusage for CPU frequencies\n\nIntroduce new platform callback hooks for cpuacct for tracking CPU frequencies\n\nNot all platforms / architectures have a set CPU_FREQ_TABLE defined\nfor CPU transition speeds. In order to track time spent in at various\nCPU frequencies, we enable platform callbacks from cpuacct for this accounting.\n\nArchitectures that support overclock boosting, or don\u0027t have pre-defined\nfrequency tables can implement their own bucketing system that makes sense\ngiven their cpufreq scaling abilities.\n\nNew file:\ncpuacct.cpufreq reports the CPU time (in nanoseconds) spent at each CPU\nfrequency.\n\nChange-Id: I10a80b3162e6fff3a8a2f74dd6bb37e88b12ba96\nSigned-off-by: Mike Chan \u003cmike@android.com\u003e\n"
    },
    {
      "commit": "c1dbe304b2f161b140b1696f9ffd45c455e5505b",
      "tree": "d6a63e7cbfc2de282931c3258908ea4742eb34e6",
      "parents": [
        "2921bbb7b51515ef881bafef686f3fd9cc366b6f"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Apr 20 19:54:09 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:33 2011 -0700"
      },
      "message": "misc: add akm8975 compass driver\n\nOriginally written by HTC. Contributions by Motorola and AKM.\n  misc: Import akm8975 from Motorola\n\nMajor style and code cleanups by Praveen Bharathi \u003cpbharathi@motorola.com\u003e\n  misc: akm8975: clean up code violations in akm8975.c\n  misc: akm8975: Clean up coding style, add suspend and resume\n\nChange-Id: I4196913f15aec2dfbed47506d3dc085aada8e92d\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "2921bbb7b51515ef881bafef686f3fd9cc366b6f",
      "tree": "01a3326a7b81b947aa279c41ef2a37df0e0b8699",
      "parents": [
        "6809f0087c72d4b3eab3563c4b36bab52a9d8e7c"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Fri Jul 02 12:48:48 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:33 2011 -0700"
      },
      "message": "drivers: input: misc: Fix section mismatch warning\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "6809f0087c72d4b3eab3563c4b36bab52a9d8e7c",
      "tree": "cebf18ced5f326220e22b0c4c2f00fc371b6cbe7",
      "parents": [
        "f23ba5021d5c4e35f0973dd0a15aa7dceaea0293"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Thu Apr 15 10:04:01 2010 +0100"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:32 2011 -0700"
      },
      "message": "Implement read(2) in ashmem driver\n\nBug: 2595601\nChange-Id: I47c0016f594f9354fb8658ccb26e3d395bcb137b\nSigned-off-by: Bjorn Bringert \u003cbringert@android.com\u003e\n"
    },
    {
      "commit": "f23ba5021d5c4e35f0973dd0a15aa7dceaea0293",
      "tree": "57de522ee4dcbd2c04d73966e3c05fe8f1a31c2c",
      "parents": [
        "da65eba112b2bcd1f54eb41bb0960078eba1657e"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Wed Jan 05 16:04:43 2011 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:32 2011 -0700"
      },
      "message": "net: wireless: bcm4329: convert sempahore mutexes to real mutexes\n\nChange-Id: I1cf1b0bfc2167d1be535d5066951796a569788e5\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "da65eba112b2bcd1f54eb41bb0960078eba1657e",
      "tree": "2c8ac975489804bcd23daaafb835646acf15c4c8",
      "parents": [
        "058abe5367489f424afa14753b642c036ed9c2be"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Wed May 19 18:53:11 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:32 2011 -0700"
      },
      "message": "network: wireless: bcm4329: Add bcm4329 driver\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Add \"HANG\" event and console monitoring\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Remove unnecessary set_freezable() calls\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Update to Version 4.218.238\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Fix MAC address import\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Fix wlan card removal\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Update to Version 4.218.239\n    Add reading mac address from platform data\n    Add dhd_os_proto_block protection for dhd_preinit_ioctls\n    Revert dhdsdio_clk() changes\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add SoftAP MAC address randomization\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Add 2.6.35 compatibility and fix memory leak in set_multicast_list\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@android.com\u003e\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Reduce driver loading time\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Set special OUI: 02:1A:11:FH:HH:HH for SoftAP\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Fix BUS DOWN in IOCTL\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnetwork: wireless: bcm4329: Add driver SETSUSPEND command\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix packet filter to only filter out non-unicast frames\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add wakelock processing in ioctl and messaging\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to 4.218.245 (combo scan)\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to Version 4.218.246 and setband fix\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add wakelock processing to WEXT requests\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Force scan when driver is loaded\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix scan timeout for abg case\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix dhd_bus_watchdog() race conditions\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix unregister_early_suspend() in dhd_detach()\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add memory barriers to wait functions\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix \"setsuspend\" behavior\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Increase PMU_MAX_TRANSITION_DLY to 1 sec\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Turn OFF packet filtering during DHCP session\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Disable packet filtering\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Send \"HANG\" message only once\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to Version 4.218.248\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix HW_OOB interrupt processing\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix interrupt enabling for level interrupt\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nRevert \"net: wireless: bcm4329: Fix interrupt enabling for level interrupt\"\n\nThis reverts commit 261d21bbfffef6261696d0d13672d2e4f9d76f05.\n\nRevert \"net: wireless: bcm4329: Fix HW_OOB interrupt processing\"\n\nThis reverts commit 8bd035daa820dc5612ae311262c71dc133871046.\n\nnet: wireless: bcm4329: Fix HW_OOB interrupt processing\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix roaming failure case\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix roaming setting on resume\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add debug print for cscan failure\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Ignore error if scan results are empty\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Enable packet filtering during low power mode\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to Version 4.218.248.6\n\nFix watchdog time rescheduling, fix first scan no-return\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix interrupt enabling in case of error\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix setting HT clock race conditions\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix setting HT clock race conditions in driver start\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to Version 4.218.248-10\n\nAdd KEEP_ALIVE feature, fix \u0027driver rssi\u0027 processing, fix roaming processing\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Improve BT-coex for eSCO\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix race conditions for sysioc_thread\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to version 4.218.248-11\n\nCheck for \u0027driver start\u0027 failure, Set keep-alive feature forever\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Check for out of bounds in scan results parsing\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add check for out of bounds scan buffer\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to version 4.218.248-12\n\n - Fix crash during Specific Scan handling\n - Fix potential insmod crash by increase Registration Timeout to 12 sec\n - Added max time restriction to PNO scan timer\n - New IWPRIV \"AP_STA_DISASSOC\" to disassoc STAs in SoftAP mode\n - Add new setting to SoftAP \"AP_SET_CFG\" to enable Hidden SSID\n - Fixs bugs for SoftAP AP_SET_MAC_FLTR iwpriv commnd\n - Add STAs rssi filed to SoftAP \"AP_GET_STA_LIST\" IWPRIV commnd\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix watchdog termination after \u0027driver stop\u0027\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Enable KEEP_ALIVE feature\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add FW Reload event processing\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix Softap start/stop race conditions\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Set first channel passive scan to 30 ms\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to Version 4.218.248-15\n\n- Increase default Listen Interval to 20 Beacons\n- Add logic to adjust SKIP_DTIM if Listen Interval \u003c DTIM * DTIM_SKIP to\n  avoid data lost due to fact that packet maybe not retrieved during Listen\n  Interval and AP may toss it\n- Fix problem with Hidden AP setting after AP reconfigure\n- Add new SoftAP optional parameter as COUNTRY to pass country code to SoftAP\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Improve way to detect BT SCO connection for BT-coex\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Use non-DFS channels only for US\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add \u0027setdfschannels\u0027 command\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix watchdog syncronization during start/stop\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix driver \u0027start\u0027 retry ability\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Fix memory leak in case of dhd_bus_init() failure\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Add CONFIG_FIRST_SCAN option\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to Version 4.218.248-17\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\nnet: wireless: bcm4329: Update to version 4.218.248-18\n\n- Improve BT-coex to differentiate HID and SCO device during DHCP session\n- Enforce DTIM\u003d1 for any SoftAP settings to optimize internal memory logic\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "058abe5367489f424afa14753b642c036ed9c2be",
      "tree": "0b23a8a3fe64908222c2c4bd68009e0710edc329",
      "parents": [
        "df8bfc3d773ded0c6a201c731954a242f8a718f9"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Jun 03 10:55:33 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:32 2011 -0700"
      },
      "message": "network: wireless: Add get_mac_addr functionality to platform\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "df8bfc3d773ded0c6a201c731954a242f8a718f9",
      "tree": "e145b1032b6caf3c7cf9a093146e519f7ec3f6ea",
      "parents": [
        "2c974b9155274dfecfe497c33122a5b51cab6378"
      ],
      "author": {
        "name": "Mike Chan",
        "email": "mike@android.com",
        "time": "Fri May 28 14:32:19 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:31 2011 -0700"
      },
      "message": "net: activity_stats: Add statistics for network transmission activity\n\nWhen enabled, tracks the frequency of network transmissions\n(inbound and outbound) and buckets them accordingly.\nBuckets are determined by time between network activity.\n\nEach bucket represents the number of network transmisions that were\nN sec or longer apart. Where N is defined as 1 \u003c\u003c bucket index.\n\nThis network pattern tracking is particularly useful for wireless\nnetworks (ie: 3G) where batching network activity closely together\nis more power efficient than far apart.\n\nNew file: /proc/net/stat/activity\n\noutput:\n\nMin Bucket(sec) Count\n              1 7\n              2 0\n              4 1\n              8 0\n             16 0\n             32 2\n             64 1\n            128 0\n\nChange-Id: I4c4cd8627b872a55f326b1715c51bc3bdd6e8d92\nSigned-off-by: Mike Chan \u003cmike@android.com\u003e\n"
    },
    {
      "commit": "2c974b9155274dfecfe497c33122a5b51cab6378",
      "tree": "9c18409bae02c018cc1a9aae5948743626117bcc",
      "parents": [
        "d3ea858955dffd13432737258861f08ec4ef4889"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu May 06 15:43:46 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:31 2011 -0700"
      },
      "message": "staging: android: lowmemorykiller: Remove bitrotted codepath\n\nNow that we\u0027re murder-synchronous, this code path will never be\ncalled (and if it does, it doesn\u0027t tell us anything useful other\nthan we killed a task that was already being killed by somebody\nelse but hadn\u0027t gotten its\u0027 signal yet)\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "d3ea858955dffd13432737258861f08ec4ef4889",
      "tree": "80a8e5190e5dce68e19db7cbcc7437b32093f1d1",
      "parents": [
        "39958f678c52fac3d522f345d61b9ffa1b4bfecb"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu May 06 15:40:07 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:31 2011 -0700"
      },
      "message": "staging: android: lowmemorykiller: Fix task_struct leak\n\nAs it turns out, the CONFIG_PROFILING interfaces leak a\ntask struct if the notifier chain returns NOTIFY_OK.. doh.\n\nThis patch reworks lowmemkiller to use the new generic task\nfree notifier chain.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "39958f678c52fac3d522f345d61b9ffa1b4bfecb",
      "tree": "e01b8fb0077935862a16af6aec6190f79e3a2dde",
      "parents": [
        "29023ce8df1bbc9236dc1f632e9cdf77019dffb0"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu May 06 15:37:55 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:31 2011 -0700"
      },
      "message": "sched: Add a generic notifier when a task struct is about to be freed\n\nThis patch adds a notifier which can be used by subsystems that may\nbe interested in when a task has completely died and is about to\nhave it\u0027s last resource freed.\n\n  The Android lowmemory killer uses this to determine when a task\nit has killed has finally given up its goods.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "29023ce8df1bbc9236dc1f632e9cdf77019dffb0",
      "tree": "8e8eb609720ee0a5026d0375b2cbfd6f5f7782bd",
      "parents": [
        "f665be65af9d530812f7ce5bd1831e3a785e3db5"
      ],
      "author": {
        "name": "Christopher Lais",
        "email": "chris+android@zenthought.org",
        "time": "Sat May 01 15:51:48 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:30 2011 -0700"
      },
      "message": "binder: Fix memory corruption via page aliasing\n\nbinder_deferred_release was not unmapping the page from the buffer\nbefore freeing it, causing memory corruption.  This only happened\nwhen page(s) had not been freed by binder_update_page_range, which\nproperly unmaps the pages.\n\nThis only happens on architectures with VIPT aliasing.\n\nTo reproduce, create a program which opens, mmaps, munmaps, then closes\nthe binder very quickly.  This should leave a page allocated when the\nbinder is released.  When binder_deferrred_release is called on the\nclose, the page will remain mapped to the address in the linear\nproc-\u003ebuffer.  Later, we may map the same physical page to a different\nvirtual address that has different coloring, and this may cause\naliasing to occur.\n\nPAGE_POISONING will greatly increase your chances of noticing any\nproblems.\n\nChange-Id: I6941bf212881b8bf846bdfda43d3609c7ae4892e\n\nSigned-off-by: Christopher Lais \u003cchris+android@zenthought.org\u003e\n"
    },
    {
      "commit": "f665be65af9d530812f7ce5bd1831e3a785e3db5",
      "tree": "bca2b5ce7883454723142949432024fb2125174c",
      "parents": [
        "076f80cb854992a6731e20058ddb0e2ba10220aa"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed May 05 11:38:42 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:30 2011 -0700"
      },
      "message": "staging: android: lowmemkiller: Substantially reduce overhead during reclaim\n\nThis patch optimizes lowmemkiller to not do any work when it has an outstanding\nkill-request. This greatly reduces the pressure on the task_list lock\n(improving interactivity), as well as improving the vmscan performance\nwhen under heavy memory pressure (by up to 20x in tests).\n\nNote: For this enhancement to work, you need CONFIG_PROFILING\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "076f80cb854992a6731e20058ddb0e2ba10220aa",
      "tree": "66655db165754b4436f5a560ce1e5630d396e5e4",
      "parents": [
        "6698346415bb0ba7e282af5845176548662ce3c3"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Tue Apr 27 20:57:04 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:30 2011 -0700"
      },
      "message": "[ARM] Do not call flush_cache_user_range with mmap_sem held\n\nWe can\u0027t be holding the mmap_sem while calling flush_cache_user_range\nbecause the flush can fault. If we fault on a user address, the\npage fault handler will try to take mmap_sem again. Since both places\nacquire the read lock, most of the time it succeeds. However, if another\nthread tries to acquire the write lock on the mmap_sem (e.g. mmap) in\nbetween the call to flush_cache_user_range and the fault, the down_read\nin do_page_fault will deadlock.\n\nAlso, since we really can\u0027t be holding the mmap_sem while calling\nflush_cache_user_range AND vma is actually unused by the flush itself,\nget rid of vma as an argument.\n\nChange-Id: If55409bde41ad1060fa4fe7cbd4ac530d4d9a106\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "6698346415bb0ba7e282af5845176548662ce3c3",
      "tree": "2e731b4330a057ea019fa6d42097b624fb76bd1e",
      "parents": [
        "167412f55b25bd79f0c7f3efc767957b5aeadbc6"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Apr 26 15:11:04 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:30 2011 -0700"
      },
      "message": "lowmemorykiller: Don\u0027t try to kill the same pid over and over\n\n  Under certain circumstances, a process can take awhile to\nhandle a sig-kill (especially if it\u0027s in a scheduler group with\na very low share ratio). When this occurs, lowmemkiller returns\nto vmscan indicating the process memory has been freed - even\nthough the process is still waiting to die. Since the memory\nhasn\u0027t actually freed, lowmemkiller is called again shortly after,\nand picks the same process to die; regardless of the fact that\nit has already been \u0027scheduled\u0027 to die and the memory has already\nbeen reported to vmscan as having been freed.\n\n  Solution is to check fatal_signal_pending() on the selected\ntask, and if it\u0027s already pending destruction return; indicating\nto vmscan that no resources were freed on this pass.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "167412f55b25bd79f0c7f3efc767957b5aeadbc6",
      "tree": "5bb86d44f2fa92354161902e0cd9278f73ef862c",
      "parents": [
        "2fd62fb317e4b37af8b9f254acc1dca8a047488f"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Thu Apr 22 15:53:23 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:30 2011 -0700"
      },
      "message": "Staging: android: binder: Create dedicated workqueue for binder deferred work\n\nSome drivers flush the global workqueue when closed. This would deadlock if\nthe last reference to the file was released from the binder.\n\nChange-Id: Ifdabc0b383fecb20836d1bbb9786c632402a14e1\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "2fd62fb317e4b37af8b9f254acc1dca8a047488f",
      "tree": "98aba7fb0653f6c0c3188c490101ad57a2fc8004",
      "parents": [
        "2d8ee1f03600ce1f21322209b6005fd7796bb25a"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sat Apr 17 12:01:35 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:29 2011 -0700"
      },
      "message": "Staging: android: timed_gpio: Properly discard invalid timeout values.\n\nThe timed output device never previously checked the return value of sscanf,\nresulting in an uninitialized int being passed to enable() if input value\nwas invalid.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "2d8ee1f03600ce1f21322209b6005fd7796bb25a",
      "tree": "bc36f0bae47ca0ebbc065b7208045e6a047f9b9d",
      "parents": [
        "9e677a4ddc90f6a9c69e98bc2b241930d433b9ac"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Apr 20 22:33:05 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:29 2011 -0700"
      },
      "message": "android-common: include linux/slab.h\n\nChange-Id: Ib9655177bfaf00bd5682e1ac0d7e813e16a47eea\n"
    },
    {
      "commit": "9e677a4ddc90f6a9c69e98bc2b241930d433b9ac",
      "tree": "03f61e25a652aecde74ca7c930a22778ec11d81d",
      "parents": [
        "b2a4ab2aa07da53d7f05f880b763e40e60c7d122"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 15 15:21:51 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:29 2011 -0700"
      },
      "message": "android-common: Fix slab.h includes for 2.6.34-rc4\n"
    },
    {
      "commit": "b2a4ab2aa07da53d7f05f880b763e40e60c7d122",
      "tree": "11406d1b6dad8be5a346f98d7d2c49cb3f8aa041",
      "parents": [
        "76cca8597f82a2c08ae93f9c2f54bc0729d01b2e"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Fri Mar 12 20:05:32 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:29 2011 -0700"
      },
      "message": "rtc: alarm: Don\u0027t use save_time_delta.\n\nChange-Id: Iaefeca497de02fe36b7f5d79075912f6e349ec53\nSigned-off-by: Arve HjÃ¸nnevÃ¥g \u003carve@android.com\u003e\n"
    },
    {
      "commit": "76cca8597f82a2c08ae93f9c2f54bc0729d01b2e",
      "tree": "1aca9aea51d9a6ca73638cdafd2999f57cb2181a",
      "parents": [
        "d512bb109fbef3ffeb2a45505b0133e4df4f3980"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Apr 28 20:57:50 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:29 2011 -0700"
      },
      "message": "binder: Move debugging information from procfs to debugfs\n\nChange-Id: Ia0f9c8cec68054c6600a799ef864ebf1185c93ab\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "d512bb109fbef3ffeb2a45505b0133e4df4f3980",
      "tree": "eb7412bc5d6abcc83a425a12586fb1fb1cf6711a",
      "parents": [
        "5803e96b7f94bb2f3949181fd6f22c919994bf3b"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Apr 28 20:57:50 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:28 2011 -0700"
      },
      "message": "binder: Use seq_file for debug interface.\n\nChange-Id: I6e9c064ba024329099cb833b2ae9ab43c2ad8c6d\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "5803e96b7f94bb2f3949181fd6f22c919994bf3b",
      "tree": "7fb0ebb2b678ce426301a782371b1eb62307b811",
      "parents": [
        "f4713d3a28ad0981db2b857eea84c00c6812852b"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Apr 07 12:08:27 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:28 2011 -0700"
      },
      "message": "fs: partitions: Fix warnings in fs/partitions/check.c\n\nChange-Id: I4398ace0c55d4833b1fcbb7a4e71ab8f0b1b044a\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "f4713d3a28ad0981db2b857eea84c00c6812852b",
      "tree": "88b74d5cde7ff8266ec7967cd37a3ad71e5adfed",
      "parents": [
        "97f59a17e9fb9fb6c1f953e423bde35aebf4fbff"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Mar 18 16:04:18 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:28 2011 -0700"
      },
      "message": "wlan: Extract generic wlan platform data from tiwlan specific header\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "97f59a17e9fb9fb6c1f953e423bde35aebf4fbff",
      "tree": "62b788294f79697131c982144ab2a2193f697217",
      "parents": [
        "845fdd0f75d67ce7e3df457fd9d1dd88f90cb60f"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Mar 17 12:02:26 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:28 2011 -0700"
      },
      "message": "apanic: make APANIC_LABEL depend on APANIC\n\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "845fdd0f75d67ce7e3df457fd9d1dd88f90cb60f",
      "tree": "aded4ea5c7ea34e31ec71e2600c97c4bb1de9fc2",
      "parents": [
        "af62b25adba1fe01c91aa88c95d1584371ab2bf9"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Feb 23 16:09:47 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:27 2011 -0700"
      },
      "message": "android: logger: Add new system log for framework/system log messages\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "af62b25adba1fe01c91aa88c95d1584371ab2bf9",
      "tree": "b03c0757132204a2e7a423f17f6319ca32e30624",
      "parents": [
        "617a3dcb3fc460098b5347b9c49ff59ce6f4b05d"
      ],
      "author": {
        "name": "Mike Chan",
        "email": "mike@android.com",
        "time": "Tue Feb 16 14:18:55 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:27 2011 -0700"
      },
      "message": "power: wakelock: Print active wakelocks when has_wake_lock() is called\n\nWhen DEBUG_SUSPEND is enabled print active wakelocks when we check\nif there are any active wakelocks.\n\nIn print_active_locks(), print expired wakelocks if DEBUG_EXPIRE is enabled\n\nChange-Id: Ib1cb795555e71ff23143a2bac7c8a58cbce16547\nSigned-off-by: Mike Chan \u003cmike@android.com\u003e\n"
    },
    {
      "commit": "617a3dcb3fc460098b5347b9c49ff59ce6f4b05d",
      "tree": "ce02a4e1ae383585bc8f8d50c152f5837885b10e",
      "parents": [
        "5fec81a237197cc64b9d23ccbfdbf643c88a5a91"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Feb 09 12:08:48 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:27 2011 -0700"
      },
      "message": "mmc: core: Release delayed mmc work wakelock after deep disable\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "5fec81a237197cc64b9d23ccbfdbf643c88a5a91",
      "tree": "9f1a8306851eceac060c2658597fc6d07ef7e187",
      "parents": [
        "5ef087073bcc1d8601d0f024e067f5ddae449ab6"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sat Oct 10 09:35:24 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:24 2011 -0700"
      },
      "message": "block: genhd: Add disk/partition specific uevent callbacks for partition info\n\n\tFor disk devices, a new uevent parameter \u0027NPARTS\u0027 specifies the number\nof partitions detected by the kernel. Partition devices get \u0027PARTN\u0027 which\nspecifies the partitions index in the table.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "5ef087073bcc1d8601d0f024e067f5ddae449ab6",
      "tree": "8d596198a2a2b636068f549f74209c4606e19985",
      "parents": [
        "3d7e11cae5b3b6178fae6c1b2196ed7565478013"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Wed Jan 06 17:17:33 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:22 2011 -0700"
      },
      "message": "Staging: android: timed_gpio: Request gpios.\n\nChange-Id: I9e98250a04e5505ce2db2edd355e8fdf8391cabd\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "3d7e11cae5b3b6178fae6c1b2196ed7565478013",
      "tree": "819685ec8e7614391abc2173e393804c18af1a69",
      "parents": [
        "310cd14451caec695f8df1d07ecb7943f59f8064"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Thu Dec 17 23:42:08 2009 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:20 2011 -0700"
      },
      "message": "Staging: android: ram_console: Start ram console earlier\n\nChange-Id: I15d809d8c3002e5bf397a2b154e3803ea0e73642\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "310cd14451caec695f8df1d07ecb7943f59f8064",
      "tree": "fd671682b258197039366a34cd6ca66e8501a352",
      "parents": [
        "d2e9d64b77d4aaedee9fd273bf66448a21fc45ba"
      ],
      "author": {
        "name": "Tom Zhu",
        "email": "a2289c@android-hal-04.(none)",
        "time": "Thu Sep 24 10:58:50 2009 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:19 2011 -0700"
      },
      "message": "misc: apanic: erase kpanic when no data\n\nerase kpanic partition when there is no data(console and thread)\n\nSigned-off-by: Tom Zhu \u003ca2289c@android-hal-04.(none)\u003e\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "d2e9d64b77d4aaedee9fd273bf66448a21fc45ba",
      "tree": "faf66bbfdc03e8bac57bd45a19b210ed20a82a31",
      "parents": [
        "e3af8d4fce4970d4206dbe06f22a9c1b5e322858"
      ],
      "author": {
        "name": "Tom Zhu",
        "email": "ling.zhu@motorola.com",
        "time": "Mon Sep 21 16:36:05 2009 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:18 2011 -0700"
      },
      "message": "misc: apanic: bad block handling\n\nAdd bad block handling in apanic\n\nSigned-off-by: Tom Zhu \u003cling.zhu@motorola.com\u003e\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nmisc: apanic: Improved bad-block / watchdog handling\n\n1. handle cases that there is no more good blocks\n2. touch softlockup watchdog at the start of apanic\n3. change unsigned char get_bb() to unsigned int get_bb()\n4. return idx instead of rc2, to keep the previous written pages.\n\nSigned-off-by: Tom Zhu \u003cling.zhu@motorola.com\u003e\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "e3af8d4fce4970d4206dbe06f22a9c1b5e322858",
      "tree": "1ad3cabf1a63cdbfcfebc846403c06eaa80095dd",
      "parents": [
        "01c99685db1325935e8b983c240397543fab9c96"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Sep 17 14:27:41 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:18 2011 -0700"
      },
      "message": "ramconsole/apanic: Ensure ramconsole does not get cluttered by apanic threads\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "01c99685db1325935e8b983c240397543fab9c96",
      "tree": "0971ba7bcd3310b206a51a7eeb5d12289c5f13ca",
      "parents": [
        "a97e6c5d4a92b7dbdb0e34a52c94e972640ac2e9"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Sep 01 13:43:01 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:18 2011 -0700"
      },
      "message": "drivers: apanic: Android kernel panic handler.\n\n\tThis driver triggers when the kernel panics and attempts to\nwrite critical debug data to the flash.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\ndrivers: apanic: checkpatch fixes\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\napanic: Fix a few cases of calling non-atomic things from atomic\n\nWe need to pay special care to not enrage cond_resched(), and the\nbase nand bb stuff calls schedule() so thats out.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "a97e6c5d4a92b7dbdb0e34a52c94e972640ac2e9",
      "tree": "83fea4e274937e34c808f3d09fa2518c9a9504e8",
      "parents": [
        "ce84ca9acef1cb5209b7d0f1fff7b6a5640fab2f"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Sep 16 12:39:10 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:18 2011 -0700"
      },
      "message": "proc: smaps: Allow smaps access for CAP_SYS_RESOURCE\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "ce84ca9acef1cb5209b7d0f1fff7b6a5640fab2f",
      "tree": "44175201674c01f542e2ee653c91d5c437a98d59",
      "parents": [
        "d3f8fd3e74564f3241dc2ef7501b1ae13f7d1f13"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Aug 06 10:25:21 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:18 2011 -0700"
      },
      "message": "kernel: printk: Add non exported function for clearing the log ring buffer\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "d3f8fd3e74564f3241dc2ef7501b1ae13f7d1f13",
      "tree": "8a362b6ff729444914871cef0cdd63577e0d4e1b",
      "parents": [
        "b571c837e6fd557647ec7c14d4e5aeb9188990f3"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Aug 25 16:52:22 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:17 2011 -0700"
      },
      "message": "[ARM] process: Add display of memory around registers when displaying regs.\n\nThis is extremely useful in diagnosing remote crashes, and is based heavily\non original work by \u003cmd@google.com\u003e.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\nCc: Michael Davidson \u003cmd@google.com\u003e\n\n[ARM] process: Use uber-safe probe_kernel_address() to read mem when dumping.\n\nThis prevents the dump from taking pagefaults / external aborts.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "b571c837e6fd557647ec7c14d4e5aeb9188990f3",
      "tree": "cc4e2008ee74e93b2c3e23ec0d75416f491fdaad",
      "parents": [
        "9272a144e54b2fb53fea8552b4f797b069a6f425"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Aug 20 10:50:45 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:17 2011 -0700"
      },
      "message": "mtd: nand: Add naieve panic_write support for generic nand devices.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nmtd: nand_base: fix nand_panic_wait\n\nfix the problem of nand_panic_wait\n\nSigned-off-by: Tom Zhu \u003ca2289c@android-hal-04.(none)\u003e\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "9272a144e54b2fb53fea8552b4f797b069a6f425",
      "tree": "cf6fc82b2d20ebcf38899cfd8691661be335afef",
      "parents": [
        "f86e4b09b7297ac880b88bb19e23661dfeeb47f7"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Aug 13 09:40:42 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:17 2011 -0700"
      },
      "message": "drivers: power: Add watchdog timer to catch drivers which lockup during suspend.\n\n\tRather than hard-lock the kernel, we now BUG() when a driver takes\n\u003e 3 seconds to suspend. If the underlying platform supports panic dumps,\nthen the data can be collected for debug.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "f86e4b09b7297ac880b88bb19e23661dfeeb47f7",
      "tree": "59e75c4f0d7c0f332b4edffe4d1be492ec1d426a",
      "parents": [
        "c172849ed873e4785bdf9be18d5298427239f33a"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Apr 08 16:23:32 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:17 2011 -0700"
      },
      "message": "Bluetooth: Hack: Don\u0027t dereference null pointer.\n\nThis avoids the S305 panic during incoming connection.\n\nS305 sends PSM 25 L2CAP connection request before the L2CAP info response.\nWhen we receive that info response we crash on null pointer here.\n\nBug: 2127637\nChange-Id: Ib637516251f46fa9a9c87ac015dc2f27df5a27fd\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "c172849ed873e4785bdf9be18d5298427239f33a",
      "tree": "ce4d078708c54cb4c11d265095ee1a9054a02b44",
      "parents": [
        "5c9b4de70db251b1b8e9d927948e9604a5aaeccd"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Dec 09 00:15:41 2009 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:16 2011 -0700"
      },
      "message": "Bluetooth: Add ACL MTU, available buffers and total buffers to hci_conn_info.\n\nThis provides userspace debugging tools access to ACL flow control state.\n\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "5c9b4de70db251b1b8e9d927948e9604a5aaeccd",
      "tree": "64e71850f4e803ad767e131d42a359d9f047852b",
      "parents": [
        "40a803df07b9954d28258f77ca14ecc83d087891"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Sep 22 15:19:46 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:16 2011 -0700"
      },
      "message": "Bluetooth: Fallback to SCO on error code 0x10 (Connection Accept Timeout).\n\nThis is to support the Motorola HF850 carkit which reports the error code 0x10\nfor an eSCO attempt, even though it advertises eSCO support. Here is the\nhcidump:\n\n2009-09-22 15:40:24.492391 \u003c HCI Command: Setup Synchronous Connection\n(0x01|0x0028) plen 17\n    handle 1 voice setting 0x0060\n2009-09-22 15:40:24.493002 \u003e HCI Event: Command Status (0x0f) plen 4\n    Setup Synchronous Connection (0x01|0x0028) status 0x00 ncmd 1\n2009-09-22 15:40:30.594869 \u003e HCI Event: Synchronous Connect Complete (0x2c)\nplen 17\n    status 0x10 handle 257 bdaddr 00:50:CD:20:C6:84 type eSCO\n    Error: Connection Accept Timeout Exceeded\n\nWith this patch we will retry with a SCO connection, which succeeds.\n\nUnfortunately the Moto HF850 also takes 5 seconds to return the error for the\neSCO attempt, so it will still take 5 seconds to fallback to SCO with this\npatch.\n\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "40a803df07b9954d28258f77ca14ecc83d087891",
      "tree": "60c2113570c84e1c9e6861a51085bbd67130ccc1",
      "parents": [
        "1349d4abcad09162ab1a3d8fa5523ee227806c4a"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Fri Sep 18 18:29:23 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:16 2011 -0700"
      },
      "message": "Bluetooth: Increase timeout for legacy pairing from 10 seconds to 40 seconds.\n\nLegacy pairing is a bit of a problem because on the incoming end it is\nimpossible to know pairing has begun:\n\n2009-09-18 18:29:24.115692 \u003e HCI Event: Connect Request (0x04) plen 10\n    bdaddr 00:23:D4:04:51:7A class 0x58020c type ACL\n2009-09-18 18:29:24.115966 \u003c HCI Command: Accept Connection Request (0x01|0x0009) plen 7\n    bdaddr 00:23:D4:04:51:7A role 0x00\n    Role: Master\n2009-09-18 18:29:24.117065 \u003e HCI Event: Command Status (0x0f) plen 4\n    Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1\n2009-09-18 18:29:24.282928 \u003e HCI Event: Role Change (0x12) plen 8\n    status 0x00 bdaddr 00:23:D4:04:51:7A role 0x00\n    Role: Master\n2009-09-18 18:29:24.291534 \u003e HCI Event: Connect Complete (0x03) plen 11\n    status 0x00 handle 1 bdaddr 00:23:D4:04:51:7A type ACL encrypt 0x00\n2009-09-18 18:29:24.291839 \u003c HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2\n    handle 1\n2009-09-18 18:29:24.292144 \u003e HCI Event: Page Scan Repetition Mode Change (0x20) plen 7\n    bdaddr 00:23:D4:04:51:7A mode 1\n2009-09-18 18:29:24.293823 \u003e HCI Event: Command Status (0x0f) plen 4\n    Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1\n2009-09-18 18:29:24.303588 \u003e HCI Event: Max Slots Change (0x1b) plen 3\n    handle 1 slots 5\n2009-09-18 18:29:24.309448 \u003e HCI Event: Read Remote Supported Features (0x0b) plen 11\n    status 0x00 handle 1\n    Features: 0xff 0xff 0x2d 0xfe 0x9b 0xff 0x79 0x83\n2009-09-18 18:29:24.345916 \u003c HCI Command: Remote Name Request (0x01|0x0019) plen 10\n    bdaddr 00:23:D4:04:51:7A mode 2 clkoffset 0x0000\n2009-09-18 18:29:24.346923 \u003e HCI Event: Command Status (0x0f) plen 4\n    Remote Name Request (0x01|0x0019) status 0x00 ncmd 1\n2009-09-18 18:29:24.375793 \u003e HCI Event: Remote Name Req Complete (0x07) plen 255\n    status 0x00 bdaddr 00:23:D4:04:51:7A name \u0027test\u0027\n2009-09-18 18:29:34.332190 \u003c HCI Command: Disconnect (0x01|0x0006) plen 3\n    handle 1 reason 0x13\n\nThere are some mainline patches such as \"Add different pairing timeout for\nLegacy Pairing\" but they do not address the HCI sequence above.\n\nI think the real solution is to avoid using CreateBond(), and instead make\nthe profile connection immediately. This way both sides will use a longer\ntimeout because there is a higher level connection in progress, and we will\nnot end up with the useless HCI sequence above.\n\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "1349d4abcad09162ab1a3d8fa5523ee227806c4a",
      "tree": "29c303fa52b2147dd5a6a257a2566b1a2fc22c65",
      "parents": [
        "93739c0025f11be799729e946fdf69473fc4ffc9"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jul 09 12:23:44 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:16 2011 -0700"
      },
      "message": "Bluetooth: Do not attempt to send dlci disconnect when in BT_CONFIG.\n\nThis fixes a bug where shutdown() and close() on a rfcomm socket during ACL\nconnection would not cause HCI Create Connection Cancel.\n\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "93739c0025f11be799729e946fdf69473fc4ffc9",
      "tree": "10d594021c51e8388f66d1f3a267466e8b4e0cd8",
      "parents": [
        "261a79980b356d131d8004e5bf507d64c0e7fba1"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jul 29 20:21:28 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:15 2011 -0700"
      },
      "message": "serial_core: Add wake_peer uart operation which is called before starting UART TX. The idea here is to provide a mechanism where we can wakeup our peer before sending data.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "261a79980b356d131d8004e5bf507d64c0e7fba1",
      "tree": "f836d654e4c20745c893d40982e004c81409bb42",
      "parents": [
        "24087d74f5146ae7dc6b7a84b58fab1e3b90d7a4"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Dec 04 17:37:05 2008 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:15 2011 -0700"
      },
      "message": "rfkill: Introduce CONFIG_RFKILL_PM and use instead of CONFIG_PM to power down\n\nSome platforms do not want to power down rfkill devices on suspend.\n\nChange-Id: I62a11630521c636d54a4a02ab9037a43435925f5\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "24087d74f5146ae7dc6b7a84b58fab1e3b90d7a4",
      "tree": "a3c10e325cc8acae02cf61b5f1ceb64af3e03627",
      "parents": [
        "3e3d03562f2c47e358388c5d8d955c90e206c081"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jun 11 10:49:48 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:15 2011 -0700"
      },
      "message": "wl127x-rfkill: Add power control driver for TI WL127X Bluetooth chips\n\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "3e3d03562f2c47e358388c5d8d955c90e206c081",
      "tree": "dea783bdf01ab5a4364dd7897c0a9f31d8fc1365",
      "parents": [
        "0da19af0b8c8b8d8bd19a262479d49d8061c0c13"
      ],
      "author": {
        "name": "Brian Swetland",
        "email": "swetland@google.com",
        "time": "Tue Apr 08 22:34:46 2008 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:15 2011 -0700"
      },
      "message": "kernel_debugger_core: add interrupt-context debugger core\n\nThis provides kernel_debugger() which can be called from an interrupt\ncontext low level debugger wedge to execute commands that inspect\nkernel state.  It doesn\u0027t do much on its own.\n\nSigned-off-by: Brian Swetland \u003cswetland@google.com\u003e\n\nkernel_debugger_core: Add sysrq command.\n\nsysrq \u003cc\u003e will run the sysrq command \u003cc\u003e and dump what\nwas added to the kernel log while the command ran.\n\nSigned-off-by: Brian Swetland \u003cswetland@google.com\u003e\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "0da19af0b8c8b8d8bd19a262479d49d8061c0c13",
      "tree": "af1ba23b042e0ebf4f075c552e217362a45d1df3",
      "parents": [
        "fc4fb2825c927af3a67ff5120816e2a37748d6af"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Mon Apr 14 21:35:25 2008 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "printk: Fix log_buf_copy termination.\n\nIf idx was non-zero and the log had wrapped, len did not get truncated\nto stop at the last byte written to the log.\n"
    },
    {
      "commit": "fc4fb2825c927af3a67ff5120816e2a37748d6af",
      "tree": "b6503feedd22ff0614ee0e823be68a735c984fce",
      "parents": [
        "ebd4673cf669673567d8e5990fc45bfc12fe69ac"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Thu Jan 15 19:07:27 2009 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "Revert \"printk: remove unused code from kernel/printk.c\"\n\nThis reverts commit acff181d3574244e651913df77332e897b88bff4.\n"
    },
    {
      "commit": "ebd4673cf669673567d8e5990fc45bfc12fe69ac",
      "tree": "835e9aa9cfeb61acfc45bb2f47e1bf200b3573d3",
      "parents": [
        "622495a5adf75911922749bb10ba7b1b8c6b8639"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Jun 30 11:23:04 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "net: Replace AID_NET_RAW checks with capable(CAP_NET_RAW).\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n"
    },
    {
      "commit": "622495a5adf75911922749bb10ba7b1b8c6b8639",
      "tree": "25f1814a20e391b820417e3674f5cb75c6ba7f24",
      "parents": [
        "764fc0ee29cc7e19167c2a73ebd6548a9ffbc88f"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jun 19 07:15:05 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "security: Add AID_NET_RAW and AID_NET_ADMIN capability check in cap_capable().\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n"
    },
    {
      "commit": "764fc0ee29cc7e19167c2a73ebd6548a9ffbc88f",
      "tree": "a88317d43032f18c1266887de9410303461e327e",
      "parents": [
        "60df15772858da0ea198f11bf3e506685e15c84f"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jun 13 02:29:04 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "net: PPPoPNS and PPPoLAC fixes.\n\nnet: Fix a bitmask in PPPoPNS and rename constants in PPPoPNS and PPPoLAC.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nnet: Fix a potential deadlock while releasing PPPoLAC/PPPoPNS socket.\n\nPPP driver guarantees that no thread will be executing start_xmit() after\nreturning from ppp_unregister_channel(). To achieve this, a spinlock (downl)\nis used. In pppolac_release(), ppp_unregister_channel() is called after sk_udp\nis locked. At the same time, another thread might be running in pppolac_xmit()\nwith downl. Thus a deadlock will occur if the thread tries to lock sk_udp.\nThe same situation might happen on sk_raw in pppopns_release().\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nnet: Force PPPoLAC and PPPoPNS to bind an interface before creating PPP channel.\n\nIt is common to manipulate the routing table after configuring PPP device.\nSince both PPPoLAC and PPPoPNS run over IP, care must be taken to make sure\nthat there is no loop in the routing table.\nAlthough this can be done by adding a host route, it might still cause\nproblems when the interface is down for some reason.\n\nTo solve this, this patch forces both drivers to bind an interface before\ncreating PPP channel, so the system will not re-route the tunneling sockets\nto another interface when the original one is down. Another benefit is that\nnow the host route is no longer required, so there is no need to remove it\nwhen PPP channel is closed.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nnet: Avoid sleep-inside-spinlock in PPPoLAC and PPPoPNS.\n\nSince recv() and xmit() are called with a spinlock held, routines which might\nsleep cannot be used. This issue is solved by following changes:\n\nIncoming packets are now processed in backlog handler, recv_core(), instead of\nrecv(). Since backlog handler is always executed with socket spinlock held, the\nrequirement of ppp_input() is still satisfied.\n\nOutgoing packets are now processed in workqueue handler, xmit_core(), instead of\nxmit(). Note that kernel_sendmsg() is no longer used to prevent touching dead\nsockets.\n\nIn release(), lock_sock() and pppox_unbind_sock() ensure that no thread is in\nrecv_core() or xmit(). Then socket handlers are restored before release_sock(),\nso no packets will leak in backlog queue.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nnet: Fix msg_iovlen in PPPoLAC and PPPoPNS.\n\nAlthough any positive value should work (which is always true in both drivers),\nthe correct value should be 1.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n"
    },
    {
      "commit": "60df15772858da0ea198f11bf3e506685e15c84f",
      "tree": "5ea8fc74bb4b6dc1704f19a022ca0d1f7269c0ce",
      "parents": [
        "36d00741d5e6bca5f5a05239cbabaa22a6dd9f88"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jun 12 01:09:30 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:14 2011 -0700"
      },
      "message": "net: add PPP on PPTP Network Server (PPPoPNS) driver.\n\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nppopns: dont include px_proto define in if_pppopns.h\n\nChange-Id: I27e687667db5b45182562f4a517a2e6cec6b1350\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "36d00741d5e6bca5f5a05239cbabaa22a6dd9f88",
      "tree": "17ab88d7fa9e19875c04a0519c94499abfe83399",
      "parents": [
        "1d38bc7d0523af2233b4280e2aeab34c6a076665"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri May 08 04:02:40 2009 +0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:13 2011 -0700"
      },
      "message": "net: add PPP on L2TP Access Concentrator (PPPoLAC) driver.\n\nChange-Id: I3ae3ee7520951ae24269db0ef2898c6455cf6bcc\nSigned-off-by: Chia-chi Yeh \u003cchiachi@android.com\u003e\n\nppolac: dont include px_proto define in if_pppolac.h\n\nChange-Id: I55bc9cf91ea0e9e8f7bf5d6e241d188e1269343a\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "1d38bc7d0523af2233b4280e2aeab34c6a076665",
      "tree": "16c8c61cd13cc2e0d4fd879cc0cd87c893e867d6",
      "parents": [
        "22e9cd9dc9b51f5ad96588ecbfde5f3221e0e6dd"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu May 21 14:10:06 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:13 2011 -0700"
      },
      "message": "cgroup: Add generic cgroup subsystem permission checks.\n\n    Rather than using explicit euid \u003d\u003d 0 checks when trying to move\ntasks into a cgroup via CFS, move permission checks into each\nspecific cgroup subsystem. If a subsystem does not specify a\n\u0027can_attach\u0027 handler, then we fall back to doing our checks the old way.\n\n    This way non-root processes can add arbitrary processes to\na cgroup if all the registered subsystems on that cgroup agree.\n\n    Also change explicit euid \u003d\u003d 0 check to CAP_SYS_ADMIN\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "22e9cd9dc9b51f5ad96588ecbfde5f3221e0e6dd",
      "tree": "5fe1308c02f57b1a61deb03123c0bfca12824310",
      "parents": [
        "8237911c6471f56b9ace3b697b17d6d33c9e2a99"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Wed Jan 05 16:03:21 2011 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:13 2011 -0700"
      },
      "message": "fs: yaffs: don\u0027t force YAFFS_TRACE_ALWAYS for all trace levels\n\nChange-Id: I9ddc676382d26aef7f12145d412fe670cb486317\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "8237911c6471f56b9ace3b697b17d6d33c9e2a99",
      "tree": "e3730fe61f3330901bb75270ca5f46132f8ae45d",
      "parents": [
        "4bfab3c6353d4e29b5b9d823e1e27e307e7b7a7f"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue May 18 20:35:30 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:13 2011 -0700"
      },
      "message": "fs: yaffs: Import yaffs from Thu Dec 23 13:31:37 2010 +1300\n\ncommit ddf33fed15c2376bfb602d62dd018c63fce60df8\nAuthor: Timothy Manning \u003ctfhmanning@gmail.com\u003e\nDate:   Thu Dec 23 13:31:37 2010 +1300\n\n    yaffs updated direct/timothy_tests/quick_tests\n    Signed-off-by: Timothy Manning \u003ctfhmanning@gmail.com\u003e\n\nChange-Id: I5bbe5a05277bdf8a6fe188bbe4c77725b3fa2aae\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "4bfab3c6353d4e29b5b9d823e1e27e307e7b7a7f",
      "tree": "6cb1cd105bb9ee84acdadcebad0af1a590e2eebc",
      "parents": [
        "5a7cd71e61f44959e1f0dd7196a83ab4760dde5f"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@android.com",
        "time": "Sat Mar 21 18:48:54 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:12 2011 -0700"
      },
      "message": "fs: block_dump: Don\u0027t display inode changes if block_dump \u003c 2\n\nSigned-off-by: San Mehat \u003csan@android.com\u003e\n"
    },
    {
      "commit": "5a7cd71e61f44959e1f0dd7196a83ab4760dde5f",
      "tree": "e39f8c91d1662e00239e0cd645c647b42104a318",
      "parents": [
        "8da0417ce464fcd7bd74348c300adfdf5066e04d"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Thu Dec 18 09:55:20 2008 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:12 2011 -0700"
      },
      "message": "tiwlan: Add abstract wifi control functions support\n"
    },
    {
      "commit": "8da0417ce464fcd7bd74348c300adfdf5066e04d",
      "tree": "613a1b4768a4537c5cf6b908d727b777ff4e176e",
      "parents": [
        "e6be8941f44a6561e9d42e759e5644d096bae7c7"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Wed Jan 05 16:13:41 2011 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:12 2011 -0700"
      },
      "message": "usb: gadget: android: fix compilation on 2.6.37\n\nChange-Id: I9a99f007415c5be1bd1a86b138486eac51784e0d\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "e6be8941f44a6561e9d42e759e5644d096bae7c7",
      "tree": "c049c7883937d9dd5952ddc94a7a187d5a5781b9",
      "parents": [
        "00bc4089eff55f9c2024186937546c8e8d6cccb0"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Dec 10 16:30:15 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:12 2011 -0700"
      },
      "message": "USB: gadget: composite: Use separate switches for connected and config state\n\nAlso remove disconnect debouncing, which didn\u0027t actually work on some platforms\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "00bc4089eff55f9c2024186937546c8e8d6cccb0",
      "tree": "70a50c210025233526adce0b40e00a04b3360432",
      "parents": [
        "f71a394a4066f704926d53872a92bc6f8d5b469e"
      ],
      "author": {
        "name": "John Michelau",
        "email": "john.michelau@motorola.com",
        "time": "Fri Dec 10 13:51:19 2010 -0600"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:12 2011 -0700"
      },
      "message": "USB: gadget: acm,rndis: IAD class, subclass \u0026 prot should match 1st iface\n\nMicrosoft recommends that the class and subclass fields of\nan IAD match the same fields from the first interface in the\ncollection that the IAD is grouping. In practice, we are also\nfinding that the protocol fields should also match. Without\nthis change, the default Microsoft composite driver may not\ngroup interfaces properly, which is what allows child\nfunction drivers with IAD\u0027s to load correctly.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "f71a394a4066f704926d53872a92bc6f8d5b469e",
      "tree": "f44fb96ae665f0ffe4df33d818f4a6c410cacfb5",
      "parents": [
        "d5d2de6539f4a588d8a6187cfe8396d4300b4653"
      ],
      "author": {
        "name": "John Michelau",
        "email": "john.michelau@motorola.com",
        "time": "Fri Dec 10 12:09:53 2010 -0600"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:11 2011 -0700"
      },
      "message": "USB: gadget: composite: Dynamically set IAD bFirstInterface\n\nbFirstInterface should be set equal to bInterfaceNumber of\nthe first interface in a grouping. It\u0027s currently being set\nonly when a composite device is bound, and it does not get\nupdated when functions are enabled or disabled.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "d5d2de6539f4a588d8a6187cfe8396d4300b4653",
      "tree": "208e0fef98174d9d0842d8c948bd937c84f28f63",
      "parents": [
        "677ba87bdfc5765bb2ed80692d74f8de41b83f11"
      ],
      "author": {
        "name": "John Michelau",
        "email": "john.michelau@motorola.com",
        "time": "Fri Dec 10 11:33:54 2010 -0600"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:11 2011 -0700"
      },
      "message": "USB: gadget: android Fix gadget descriptor compliance for IAD\u0027s\n\nUSB-IF core team mandates that composite devices containing\nIAD\u0027s must use bDeviceClass\u003d0xEF, bDeviceSubClass\u003d0x02, \u0026\nbDeviceProtocol\u003d0x01 instead of the usual 0x00 in all fields.\nThis is not a problem currently on Linux hosts, but it is a\nproblem when connecting to Windows hosts. Without this change\nthe default Microsoft composite driver will not group\ninterfaces properly, which is what allows child function\ndrivers with IAD\u0027s to load correctly.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "677ba87bdfc5765bb2ed80692d74f8de41b83f11",
      "tree": "91ad07b17d6ddf65db0811aabe4f46c0b5331e73",
      "parents": [
        "51d5755259a7deb468d3f99fdde1109df425f955"
      ],
      "author": {
        "name": "John Michelau",
        "email": "john.michelau@motorola.com",
        "time": "Mon Nov 08 18:05:37 2010 -0600"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:11 2011 -0700"
      },
      "message": "usb: gadget: Multiple ACM gadget instances\n\n- Added multiple ACM instance support in Android gadget\n- Fixed multiple instance naming issue in ACM function\n- Increased max instances from 4 to 8\n\nChange-Id: I65f1b0be94da859bab7ec0ad7cd804b896c7c4c5\nSigned-off-by: John Michelau \u003cjohn.michelau@motorola.com\u003e\n"
    },
    {
      "commit": "51d5755259a7deb468d3f99fdde1109df425f955",
      "tree": "37160b396310e33dbdf4b7e3a6c4c088366b824c",
      "parents": [
        "ffdab0c0c40bab6de78b1952bb07aed221994b73"
      ],
      "author": {
        "name": "John Michelau",
        "email": "john.michelau@motorola.com",
        "time": "Tue Nov 30 15:36:29 2010 -0600"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:11 2011 -0700"
      },
      "message": "usb: gadget: Fixed Android gadget function discovery \u0026 product matching\n\n- Don\u0027t bind until all required functions have registered\n- Consider multi-instance functions when matching products\n\nChange-Id: I6fa10567db71d49cd81968c01d75e326ff9a17c8\nSigned-off-by: John Michelau \u003cjohn.michelau@motorola.com\u003e\n"
    },
    {
      "commit": "ffdab0c0c40bab6de78b1952bb07aed221994b73",
      "tree": "ec6b6aded00bd902b624ce1ca8c7cda5f565aea7",
      "parents": [
        "16c08c28717ba564ff2306f13803788a46d9159f"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Wed Nov 17 14:27:51 2010 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:11 2011 -0700"
      },
      "message": "usb: gadget: rndis: don\u0027t use dev_get_stats\n\nSince 2.6.36, spin_lock_bh has been added to dev_txq_stats_fold. So\ndev_get_stats cannot be called from atomic context.\n\nReplaced it by netdev_stats_to_stats64 to copy the stats directly. This\nwill work if the device driver does not need txq tx stats folding.\n\nhttp://lkml.org/lkml/2010/9/20/250\n\nChange-Id: I715b00892beda56cc369139d6e2bdc9efb6bfe79\nSigned-off-by: Benoit Goby \u003cbenoit@android.com\u003e\n"
    },
    {
      "commit": "16c08c28717ba564ff2306f13803788a46d9159f",
      "tree": "5207cada55dc78a76c93797f16ff5cbb34bc278a",
      "parents": [
        "3e800b6fa0f559b4cda0dfc866b85c94138d1c99"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Nov 17 11:16:35 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:10 2011 -0700"
      },
      "message": "USB: gadget: f_mtp: Zero length packet fixes\n\nSend zero length packets at end of transfers that are a multiple of the\nbulk max packet size as required by MTP.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "3e800b6fa0f559b4cda0dfc866b85c94138d1c99",
      "tree": "8b260589f49584a0b779545c4423955c666edb0b",
      "parents": [
        "76ac65501829684f281b5ad79b7f730b86c335c7"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Nov 16 17:14:32 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:10 2011 -0700"
      },
      "message": "USB: gadget: f_mtp: Support for file transfer length greater than 4 gigabytes\n\nFor backward compatibility with PTP, MTP is limited to a 32-bit file size.\nWhen transferring files greater than 4 gig, MTP uses 0xFFFFFFFF as the file size\nand the receiver reads until it receives a short packet.\n\nExpanded size of mtp_file_range.length to 64 bits and added support for\nwriting zero length packets.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "76ac65501829684f281b5ad79b7f730b86c335c7",
      "tree": "fce70aca72bfb8782c8798750647eacfa3db346f",
      "parents": [
        "491d4186e0a31a6a8fa638d71816a7a77db83c1e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Nov 15 15:22:21 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:10 2011 -0700"
      },
      "message": "USB: gadget: f_mtp: Return zero result for successful file transfer.\n\nReturning number of bytes transfered does not work for files \u003e 2 gig\nsince ioctl() result is a signed integer.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "491d4186e0a31a6a8fa638d71816a7a77db83c1e",
      "tree": "5383d6c7ac7f8c67d71da2946c37a3da563c77e4",
      "parents": [
        "ffab952c8608df0fede4727bf35d84fb32a2fdef"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Nov 08 10:41:31 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:09 2011 -0700"
      },
      "message": "USB: gadget: f_mtp: MTP driver cleanup:\n\nUse a work queue instead of a separate thread for file transfer ioctls\n(note: the file transfer must be done on a kernel thread rather than in\nprocess context so vfs_read and vfs_write will use the correct address space\nfor the buffers)\n\nEnforce requirement that only one ioctl call may be active at a time,\nand remove mutex in mtp_send_event that is now no longer necessary.\n\nSynchronize around use of shared variables to avoid SMP issues\n\nFix mismatched calls to fget and fput\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "ffab952c8608df0fede4727bf35d84fb32a2fdef",
      "tree": "b4e603f12e971a821d8fb82c8d074ea199d7e5d7",
      "parents": [
        "d6b1d7348ac1d5f1c51657cb750aa493974a08a9"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Thu Sep 23 18:34:27 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:09 2011 -0700"
      },
      "message": "usb: gadget: android: Remove WAKEUP flag from bmAttributes\n\nRemove USB_CONFIG_ATT_WAKEUP from bmAttributes as we don\u0027t\nsupport remote wakeup. This fixes an issue with the USB 2.0\ncompliance test tool.\n\nChange-Id: Ic15e44710069f3f05ace6a82bbfa2b85a3649027\nSigned-off-by: Benoit Goby \u003cbenoit@android.com\u003e\n"
    },
    {
      "commit": "d6b1d7348ac1d5f1c51657cb750aa493974a08a9",
      "tree": "af1be9d7baa39be78b9c62c9a922b6b5b2282873",
      "parents": [
        "1de4d4d8df6703c2af229c3a8a3c1ec4b14eabab"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Aug 23 08:17:21 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:09 2011 -0700"
      },
      "message": "USB: gadget: android: Disable MTP when RNDIS function is enabled.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "1de4d4d8df6703c2af229c3a8a3c1ec4b14eabab",
      "tree": "a85eb1aeb6e2817ce6eb4d7dfd2a818b8a7dcc72",
      "parents": [
        "7aea3853329a1af39519b5e22e06baba7fdfa1bd"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jul 06 19:27:52 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:09 2011 -0700"
      },
      "message": "USB: gadget: f_mtp: Add ioctl for sending events via the interrupt endpoint\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "7aea3853329a1af39519b5e22e06baba7fdfa1bd",
      "tree": "092b5b99a677f7dbe7cbf0a54553c50dded38b30",
      "parents": [
        "d43a1a559448193769a9e7c078fb6539b5fe875a"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Fri Jul 02 14:47:44 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:09 2011 -0700"
      },
      "message": "drivers: usb: gadget: rndis: Fix section mismatch warning\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "d43a1a559448193769a9e7c078fb6539b5fe875a",
      "tree": "5926db47af6bfef136740cf9fbf0e7fc59ef2bdd",
      "parents": [
        "577e37a65b7ee7aa7ade4b8a323fc327ff45e88e"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Fri Jul 02 14:37:57 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:08 2011 -0700"
      },
      "message": "drivers: usb: gadget: mass_storage: Fix section mismatch warning\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "577e37a65b7ee7aa7ade4b8a323fc327ff45e88e",
      "tree": "35e3b32ff4a9d87f6dd1145745789c2be4fb2b04",
      "parents": [
        "28acc1a88c75b08b2ab502a546da61b131b86f5c"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Fri Jul 02 12:46:34 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:08 2011 -0700"
      },
      "message": "drivers: usb: gadget: Fix section mismatch warning\n\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "28acc1a88c75b08b2ab502a546da61b131b86f5c",
      "tree": "b326680f5fc1187da0e6f7674ba7414451582495",
      "parents": [
        "4a4414416d5d6f9a6522aa6900473e3cdc5f1393"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jun 28 16:19:32 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:08 2011 -0700"
      },
      "message": "USB: composite: Add usb_composite_force_reset utility to force enumeration\n\nUse this rather than calling usb_gadget_disconnect and usb_gadget_connect\ndirectly to avoid sending USB disconnect events to userspace when resetting\nthe bus.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "4a4414416d5d6f9a6522aa6900473e3cdc5f1393",
      "tree": "371bb89ae5c60d142b953f3dc3e0a0a7f98af0a0",
      "parents": [
        "8da4cc8f77b0d291fa33a5474d69b12b534cb5f4"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jun 28 15:29:00 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:08 2011 -0700"
      },
      "message": "USB: gadget: android: Remove unused function android_usb_set_connected()\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "8da4cc8f77b0d291fa33a5474d69b12b534cb5f4",
      "tree": "8237fea6200b5920e80a02d3f6dd2bab6d92f0a5",
      "parents": [
        "ba83b0158e1e7ae0a0169d523c3ed5084a360233"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Jun 27 20:05:55 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:08 2011 -0700"
      },
      "message": "USB: gadget: composite: Move switch_set_state calls to a work queue\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "ba83b0158e1e7ae0a0169d523c3ed5084a360233",
      "tree": "19c06ebc5fbbd1da61f37bfb65f66c2ab18ef746",
      "parents": [
        "fb52b002c2d20205d01598f0440dc89ece98ba2d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Apr 16 10:39:22 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:08 2011 -0700"
      },
      "message": "USB: gadget: f_mtp: USB gadget function driver for MTP and PTP device support.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "fb52b002c2d20205d01598f0440dc89ece98ba2d",
      "tree": "b9e371f59e1f3e3bd1f2964bc48b773a287b1066",
      "parents": [
        "e2dc503c4220b7d86815283f7d18c0b14af64470"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Apr 16 15:32:15 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:07 2011 -0700"
      },
      "message": "USB: composite: Add support for functions overriding USB_DT_STRING descriptors\n\nNeeded for MTP support.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "e2dc503c4220b7d86815283f7d18c0b14af64470",
      "tree": "86b791420885196c018cc05bd527d5996762d976",
      "parents": [
        "0de5a69f62827cbf1cf4a254811aab65200e5a2d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jun 23 08:20:59 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:07 2011 -0700"
      },
      "message": "USB: gadget: composite: Add userspace notifications for USB state changes\n\nAdd switch to notify current USB configuration.  This can be used to detect\nUSB connect and disconnect events.\n\nBroadcast a change via the usb_composite class when a USB function is\nenabled or disabled.\n\nRename usb_function.hidden to usb_function.disabled.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "0de5a69f62827cbf1cf4a254811aab65200e5a2d",
      "tree": "b2cb16b4b56d488974a82c7bccced70936fb6e5c",
      "parents": [
        "efbf862863661f2db4851e60017653b081d22a57"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jun 15 17:34:25 2010 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:07 2011 -0700"
      },
      "message": "USB: gadget: f_mass_storage: Integrate android customizations\n\nIntegrate support for android composite driver and platform data\nwithin CONFIG_USB_ANDROID_MASS_STORAGE.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "efbf862863661f2db4851e60017653b081d22a57",
      "tree": "28297b15f5e540b55ece873cf0c27afe45e6663c",
      "parents": [
        "27d1890c42600e15ac71642b9cf863f9a0d068ba"
      ],
      "author": {
        "name": "Velempati Chiranjeevi",
        "email": "c_cvelem@qualcomm.com",
        "time": "Wed Oct 21 09:53:10 2009 +0530"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:07 2011 -0700"
      },
      "message": "USB: android gadget: mass storage: Fix format issue for Vista Host\n\nAs part of formating the mass storage device, Host sends the INQUIRY\nscsi command. As per the standard, the command length for this\ncommand should be 6 bytes, whereas the Vista host sends 12 bytes.\n\nWhen the command length of the command is not equal to the standard\nlength, the device sends a phase error as part of the status phase.\nWhen the host receives a phase error, it re-enumerates, hence the\nerror.\n\nIf the command is INQUIRY, and the command length is 12 bytes,\ntreating this as a good command and not sending the phase error\nto the host fixes this issue.\n\nSigned-off-by: Velempati Chiranjeevi \u003cc_cvelem@qualcomm.com\u003e\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "27d1890c42600e15ac71642b9cf863f9a0d068ba",
      "tree": "55d35b5fa6072359d53d9dcdb8006259464a98dd",
      "parents": [
        "0130a0e683e4266bda24c27c246dc1adaa6fad9a"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Apr 15 15:04:07 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:07 2011 -0700"
      },
      "message": "USB: gadget: f_mass_storage: Defer handling interface changes until it is safe.\n\nPulling in some code from file_storage.c, we now handle interface changes\nin do_set_config(), which is now not called until any pending requests have\nbeen successfully completed or cancelled.\n\nThis fixes a race condition that resulted in usb_ep_free_request() being called\nwhile the request is still busy.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "0130a0e683e4266bda24c27c246dc1adaa6fad9a",
      "tree": "047c3986dffe9fa4d6d1afccce0adb9af4ffd866",
      "parents": [
        "0a4c12d4fa0fdec17cd9347ea9f70453cfaffe14"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Wed Dec 10 20:01:15 2008 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:06 2011 -0700"
      },
      "message": "USB: gadget: android: mass_storage: Use spin_lock_irqsave/spin_unlock_irqrestore\n\nThe old code did not allways disable interrupts when called from thread\ncontext, but tried to lock the same spinlock from interrupt context.\n\nThis was merged from a change to drivers/usb/function/mass_storage.c\nin the android-msm-2.6.29 branch.\n\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "0a4c12d4fa0fdec17cd9347ea9f70453cfaffe14",
      "tree": "1ee9384c416432c0ba24098c3e63095b8df81a86",
      "parents": [
        "f6205641334bf29e59de6cbe62de618d7ee339e6"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Mar 17 15:42:29 2010 -0400"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:06 2011 -0700"
      },
      "message": "USB: gadget: android: check for null _android_dev in android_register_function()\n\nThis fixes a load ordering issue that occurred if a function driver loads before\nthe android gadget driver is initialized.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "f6205641334bf29e59de6cbe62de618d7ee339e6",
      "tree": "6e56642e3ba50a6e2c971bfb6dafa4f1866e895c",
      "parents": [
        "0d511c44709dfbc32174e9ee66d446ea2eaaaaee"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Mar 12 11:01:05 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:06 2011 -0700"
      },
      "message": "USB: gadget: f_mass_storage: Flush writes after every 4 MB.\n\nThis avoids excessive caching at the block level layer when copying large\nfiles to the storage device.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "0d511c44709dfbc32174e9ee66d446ea2eaaaaee",
      "tree": "12b4729b07831a6d60245c9465972b8cce5322c9",
      "parents": [
        "0f63be217580f90d85affb7c14921b73a540aa47"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Mar 10 17:05:03 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:06 2011 -0700"
      },
      "message": "USB: gadget: f_rndis: Add platform data for RNDIS vendor ID and MAC address.\n\nThis fixes a kernel panic in rndis.c when receiving the\nOID_GEN_VENDOR_DESCRIPTION command.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "0f63be217580f90d85affb7c14921b73a540aa47",
      "tree": "9003d383e662d1ec747b26a28b1e786be0b559f7",
      "parents": [
        "8c6a6b21809e2c17fea5653e9e7bb87969507766"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Feb 26 09:34:19 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:05 2011 -0700"
      },
      "message": "USB: gadget: composite: Don\u0027t increment interface number for alt settings.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "8c6a6b21809e2c17fea5653e9e7bb87969507766",
      "tree": "d6f2ab90622fdedc135b57545acc5acfb8abc829",
      "parents": [
        "352208629f9af9e79c48214ef355ad7d0056da12"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Feb 26 09:30:01 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:05 2011 -0700"
      },
      "message": "USB: gadget: composite: Don\u0027t call set_alt() on functions that are hidden.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "352208629f9af9e79c48214ef355ad7d0056da12",
      "tree": "949f1d73058736a1435669fc1e62a08345e1679e",
      "parents": [
        "a83f187e9f34cd91d05b0c3016f6afb9c91ae916"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Feb 24 10:20:59 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:05 2011 -0700"
      },
      "message": "USB: gadget: android: Disable UMS when RNDIS ethernet is active.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "a83f187e9f34cd91d05b0c3016f6afb9c91ae916",
      "tree": "d6d3b6e4c76f20879e6d7005982a9c7cb9b3a8e5",
      "parents": [
        "8f5f3914030df59d512b0b92043423179e76d046"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Feb 18 09:50:28 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:05 2011 -0700"
      },
      "message": "usb: gadget: u_ether: Remove warning from gether_disconnect()\n\ngether_disconnect() is always called before gether_connect() by the different\nUSB ethernet functions, so this warning was firing during normal operation.\n\nChange-Id: I178cc7d1f67e9e87ac2e99c6674c4db8fcddf4a0\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "8f5f3914030df59d512b0b92043423179e76d046",
      "tree": "0218e26ca5752c24b51878083bf56a6ac34d44c5",
      "parents": [
        "da574e2e1f73ee7facc5003b0f8f12d438c86203"
      ],
      "author": {
        "name": "Steve Kondik",
        "email": "shade@discord.hmsinc.com",
        "time": "Wed Feb 17 12:59:29 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:09:02 2011 -0700"
      },
      "message": "Add USB_ANDROID_RNDIS_WCEIS option.\n\nChange-Id: I85973ebfcbfae6b401fb8b402842309c72655149\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "da574e2e1f73ee7facc5003b0f8f12d438c86203",
      "tree": "7df6df262b861bff8b567bd47c5e86d9afdf3b55",
      "parents": [
        "c832ca8239edd05f4593eaa10c2893b2eaf948b6"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sat Feb 13 16:37:16 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:08:59 2011 -0700"
      },
      "message": "USB: gadget: android: Fix special case for RNDIS ethernet function\n\nOnly set device descriptor bDeviceClass field to USB_CLASS_COMM when\nthe RNDIS function is actually enabled.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "c832ca8239edd05f4593eaa10c2893b2eaf948b6",
      "tree": "f4d79d97ca4e70f1a3c347bc895fd937d9cb6e14",
      "parents": [
        "573cea55c785d7388b35cb3ef38cb71b7fd33c4d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sat Feb 13 19:16:07 2010 -0500"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 14 09:08:57 2011 -0700"
      },
      "message": "USB: composite: Compute interface numbers correctly when functions are hidden.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    }
  ],
  "next": "573cea55c785d7388b35cb3ef38cb71b7fd33c4d"
}
