)]}'
{
  "log": [
    {
      "commit": "236cc52856f6ebe47f52d50ba5431b0e172fd0d1",
      "tree": "96f0c0bbc98042006e428ed0f08ee38c102ff11f",
      "parents": [
        "367da1527aff2a4f789d03082f9fb191cdf332c4"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Sep 07 12:46:42 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Sep 07 12:46:42 2009 +0100"
      },
      "message": "ASoC: Remove unuused hw_read_t\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "e4aa8dd5cadca054a807278b04f67ce8e3b9dc42",
      "tree": "8186e049749d630b0be359cd5310bbe44675fd92",
      "parents": [
        "239a22aaa9d4d574d397b852652684ac610d1e1b",
        "59ae07a58012a96cfbc9b4c0f3a07ad07d2a2208"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Aug 24 20:44:41 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Aug 24 20:44:41 2009 +0100"
      },
      "message": "Merge branch \u0027topic/digital-mixing\u0027 into for-2.6.32\n"
    },
    {
      "commit": "79fb9387f88b6b44bbc46e19cae26d2c9fe3bb6a",
      "tree": "e291bf379268358a1a5a6d9e32a33cabedf6d0d2",
      "parents": [
        "b8e583f6012d618fb93bb38a302b63c3c6d2bfbc"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Aug 21 16:38:13 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Aug 21 17:17:59 2009 +0100"
      },
      "message": "ASoC: Add DAPM widget power decision debugfs files\n\nCurrently when built with DEBUG DAPM will dump information about\nthe power state decisions it is taking for each widget to dmesg.\nThis isn\u0027t an ideal way of getting the information - it requires\na kernel build to turn it on and off and for large hub CODECs the\nvolume of information is so large as to be illegible. When the\noutput goes to the console it can also cause a noticable impact\non performance simply to print it out.\n\nImprove the situation by adding a dapm directory to our debugfs\ntree containing a file per widget with the same information in\nit. This still requires a decision to build with debugfs support\nbut is easier to navigate and much less intrusive.\n\nIn addition to the previously displayed information active streams\nare also shown in these files.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "a4d7d550a9cfdfbc615383a08e9afa39d5a6d875",
      "tree": "b4a9076fe9e0e5f0f5175fe858e7a28fe94e8a29",
      "parents": [
        "f61c890ec631884c5b7cd8723cd8ae1917dca544"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "morimoto.kuninori@renesas.com",
        "time": "Thu Aug 20 21:01:05 2009 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Aug 20 20:01:42 2009 +0100"
      },
      "message": "ASoC: Add SuperH FSI driver support for ALSA\n\nThis driver is very simple.\nIt support playback only now.\nThis patch is tested by ms7724se board.\n\nSigned-off-by: Kuninori Morimoto \u003cmorimoto.kuninori@renesas.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "010ff262269c6ad84acba98eab2d7843919c7ccf",
      "tree": "c78ac453debd029144d4ca2a3c8a150bddd5c974",
      "parents": [
        "1ca04065c3569beb42b9376952df8c96f430f753"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Aug 17 17:39:22 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Aug 18 16:06:08 2009 +0100"
      },
      "message": "ASoC: Add input and output AIF widgets\n\nCurrently DAPM interfaces with the audio streams to and from the\nprocessor at the DAC and ADC widgets. As the digital capabilities\nof parts increases this is becoming a less and less able to meet\nthe needs of parts.\n\nTo meet the needs of these devices create new widgets interfacing\nwith the TDM bus but not integrated into any other functionality.\nAudio can then be routed to and from these widgets using existing\nrouting widgets.\n\nA slot number is provided in the definition but this is currently\nnot used yet. This is intended to support devices which can use\nmore than one TDM slot on a single interface.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4ac0478f2afaf8e778b4190d6218459a9dbf2a8f",
      "tree": "97caf69480c6fcf9a3d294e650a7548f137e5d44",
      "parents": [
        "30230f4cd7c002a40c13758d12c1c6d96100461d"
      ],
      "author": {
        "name": "Marek Vasut",
        "email": "marek.vasut@gmail.com",
        "time": "Thu Jul 30 02:55:01 2009 +0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Aug 13 22:19:37 2009 +0100"
      },
      "message": "ALSA: Allow passing platform_data for pxa2xx-ac97\n\nThis patch adds support for passing platform data to ac97 bus devices\nfrom PXA2xx-AC97 driver..\n\nSigned-off-by: Marek Vasut \u003cmarek.vasut@gmail.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "1921bab217c2c21e4b8dc78332f6ae11515fc014",
      "tree": "0577922c34d491b34c6a5aa47dab950c073ada12",
      "parents": [
        "17244c24f95ba61a12b6afeab5780a1e3f1a4c57",
        "a5479e389e989acfeca9c32eeb0083d086202280"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Aug 11 13:09:27 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Aug 11 13:09:27 2009 +0100"
      },
      "message": "Merge commit \u0027a5479e389e989acfeca9c32eeb0083d086202280\u0027 into for-2.6.32\n"
    },
    {
      "commit": "8f738d58425625faf0c1a6dbfdd4458545338551",
      "tree": "f6658fa6845f2115299a0ccf083896be91b0276d",
      "parents": [
        "35b1207b34975d7ff2ea014171229c02bdb066f1"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Aug 09 20:08:31 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Aug 09 20:08:31 2009 +0100"
      },
      "message": "ASoC: Define more formats for the AC97 CODECs\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "b7b8f9bf0cd73b90561e8123fd5ec28f4539c419",
      "tree": "f451730e88eabbf69c56fa2f2e422e0c45aab8b0",
      "parents": [
        "06cddefc1f25b847dafe392f3d5781482b3395b5"
      ],
      "author": {
        "name": "Janusz Krzysztofik",
        "email": "jkrzyszt@tis.icnet.pl",
        "time": "Thu Aug 06 13:07:32 2009 +0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Aug 07 11:48:02 2009 +0100"
      },
      "message": "TTY/ASoC: Rename N_AMSDELTA line discipline to N_V253\n\nThe patch changes the line discipline name registered in include/linux/tty.h\nand updates the ams-delta machine driver to use it.\n\nSigned-off-by: Janusz Krzysztofik \u003cjkrzyszt@tis.icnet.pl\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "06cddefc1f25b847dafe392f3d5781482b3395b5",
      "tree": "97f4df2e4ae6a1e8194ca67ede1b552802ba2334",
      "parents": [
        "b9b5cc26d0b3a9b361cc56c3a3b0d6f819b9195f",
        "27ded041f03026e8c6be9efc626e11ddfb4620c1"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Aug 07 11:43:58 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Aug 07 11:43:58 2009 +0100"
      },
      "message": "Merge branch \u0027reg-cache\u0027 into for-2.6.32\n"
    },
    {
      "commit": "a5479e389e989acfeca9c32eeb0083d086202280",
      "tree": "5bcc8940b9e7981916d1e9812957b72d6b82b8af",
      "parents": [
        "9029bb316bb99ccc7f0518c4d3e0d6adc0729c4f"
      ],
      "author": {
        "name": "Daniel Ribeiro",
        "email": "drwyrm@gmail.com",
        "time": "Mon Jun 15 21:44:31 2009 -0300"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Aug 06 15:52:24 2009 +0100"
      },
      "message": "ASoC: change set_tdm_slot api to allow slot_width override.\n\nExtend set_tdm_slot to allow the user to arbitrarily set the frame width\nand active TX/RX slots.\n\nUpdates magician.c and wm9081.c for the new set_tdm_slot(). wm9081.c\nstill doesn\u0027t handle the slot_width override.\n\nWhile being there, correct an incorrect use of SlotsPerFrm(7) use in\nbitmask on pxa-ssp.c (SSCR0_SlotsPerFrm(x) is (((x) - 1) \u003c\u003c 24)) ).\n\n(this series is meant for Mark\u0027s for-2.6.32 branch)\n\nSigned-off-by: Daniel Ribeiro \u003cdrwyrm@gmail.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "afa2f1066e7288a9e4f8e3fda277da245219dffc",
      "tree": "3f19f2e84e797e6fc45bb5f81e0dc6dae393da76",
      "parents": [
        "7084a42b965d972079201414d19a399e65b26099"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 10 23:11:24 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Aug 03 16:59:15 2009 +0100"
      },
      "message": "ASoC: Factor out I2C 8 bit address 16 bit data I/O\n\nAs part of this refactoring the type of the CODEC hw_read operation\nis changed to match the regular read operation.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "7084a42b965d972079201414d19a399e65b26099",
      "tree": "391a0ed913eb769013ca65e3c042ac043981dbfa",
      "parents": [
        "030c819e79e8ad0320486e9ccbe76d2f0870369f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 10 22:24:27 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Aug 03 16:59:09 2009 +0100"
      },
      "message": "ASoC: Add I/O control bus information to factored out cache setup\n\nWhile writes tend to be able to use a fairly bus independant format to\ndo the writes reads are all bus specific. To allow us to factor out\nthis code include the bus type as a parameter when setting up the\ncache.\n\nInitially just use this to factor out hw_write_t for I2C.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "78ed73e84d132e2d556eda90e5b76620f4390ff2",
      "tree": "288a84a76d015a0169d9fcfeba8d349e012c95c9",
      "parents": [
        "b8e22c1fe375a8c3b3e4fd7c569cb8932607bef3"
      ],
      "author": {
        "name": "Janusz Krzysztofik",
        "email": "jkrzyszt@tis.icnet.pl",
        "time": "Wed Jul 22 05:22:37 2009 +0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 31 22:38:44 2009 +0100"
      },
      "message": "TTY: Add definition of a new line discipline required by Amstrad E3 (Delta) ASoC driver\n\nThis patch adds new line discipline name an number to include/linux/tty.h. The\nline discipline will be used by the Amstrad E3 (Delta) sound driver that will\ncome next in this series of patches.\n\nCreated against linux-2.6.31-rc3.\nApplies to linux-omap-2.6 commit 7c5cb7862d32cb344be7831d466535d5255e35ac as\nwell.\n\nSigned-off-by: Janusz Krzysztofik \u003cjkrzyszt@tis.icnet.pl\u003e\nAcked-by: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "77ee09c67e051a5ebd19a53ba3945dbdc8d21b3c",
      "tree": "4fa007a15bbdf43cd4bfae2bfbc44272faaf656b",
      "parents": [
        "a1daf67d721adfecc298132550bc2967c67f764f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 31 18:26:51 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 31 18:54:48 2009 +0100"
      },
      "message": "ASoC: Allow CODECs to flag invalid registers\n\nThis helps CODECs with sparse register maps work better with the\nregister cache display interface.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "474828a40f6ddab6e2a3475a19c5c84aa3ec7d60",
      "tree": "15da7b963bbe20704bca139b355a020686f97a52",
      "parents": [
        "a7569afa8b79ca9272b0d7544335bc05b5b721d6"
      ],
      "author": {
        "name": "Marek Vasut",
        "email": "marek.vasut@gmail.com",
        "time": "Wed Jul 22 13:01:03 2009 +0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Jul 23 11:30:56 2009 +0100"
      },
      "message": "ALSA: Allow passing platform_data to devices attached to AC97 bus\n\nThis patch allows passing platform_data to devices attached to AC97 bus\n(like touchscreens, battery measurement chips ...).\n\nSigned-off-by: Marek Vasut \u003cmarek.vasut@gmail.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "3ce91d5a5a47eca6308c0a64f768c7a4466e0407",
      "tree": "4e0bf4501e995cc9e45ad62c43689a7ddc37294c",
      "parents": [
        "d0af93db12639c425adee795fabadedb52182346"
      ],
      "author": {
        "name": "Joonyoung Shim",
        "email": "jy0922.shim@samsung.com",
        "time": "Wed Jul 15 20:33:50 2009 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Jul 15 16:59:06 2009 +0100"
      },
      "message": "ASoC: add SOC_DOUBLE_R_EXT_TLV control type\n\nThis is a macro for double controls with special callback function and\nTLV. The SOC_DOUBLE_R_EXT_TLV needs two registers and one shift for\ndouble controls.\n\nSigned-off-by: Joonyoung Shim \u003cjy0922.shim@samsung.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "d0af93db12639c425adee795fabadedb52182346",
      "tree": "e631b2f730ae9957827fca03761aad4da665cf58",
      "parents": [
        "4b75e9476737dffef44a66818a4a481edd2512a1"
      ],
      "author": {
        "name": "Joonyoung Shim",
        "email": "jy0922.shim@samsung.com",
        "time": "Wed Jul 15 20:33:47 2009 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Jul 15 16:59:06 2009 +0100"
      },
      "message": "ASoC: add SOC_DOUBLE_EXT_TLV control type\n\nThis is a macro for double controls with special callback function and\nTLV. The SOC_DOUBLE_EXT_TLV needs one register and two shifts for double\ncontrols.\n\nSigned-off-by: Joonyoung Shim \u003cjy0922.shim@samsung.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "47db8e89ac04377fc4de9278d0a3d6e599c04b95",
      "tree": "ae3856d307978a4236e3d5dae79e0e4f8fb3163b",
      "parents": [
        "0a0cf58d93b49bdd3ba6049a5536e76c32ef7f88"
      ],
      "author": {
        "name": "Peter Meerwald",
        "email": "pmeerw@cosy.sbg.ac.at",
        "time": "Mon Jul 13 23:05:11 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Jul 13 23:05:11 2009 +0100"
      },
      "message": "ASoC: fixes multiple typos in comments, no functional change\n\nSigned-off-by: Peter Meerwald \u003cpmeerw@pmeerw.net\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "942c435ba79fd263a922bb114d56eccab6250662",
      "tree": "33dbd312f92e67841620823838b30c27b51686a5",
      "parents": [
        "ff7d04b130d76ab3a7b79120070346ccf3a72b3f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jun 05 16:32:59 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Jul 08 17:20:20 2009 +0100"
      },
      "message": "ASoC: Add WM8993 CODEC driver\n\nThe WM8993 is a highly integrated ultra-low power hi-fi CODEC designed\nfor portable devices such as multimedia phones.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "17a52fd60a0a0e617ed94aadb1b19751a8fa219e",
      "tree": "2c2fd4526ae219ec9435a0a4b0fc281a5ca62b7c",
      "parents": [
        "5420f30723122012c7bb868a55ff21c7d383b68e"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jul 05 17:24:50 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jul 05 17:24:50 2009 +0100"
      },
      "message": "ASoC: Begin to factor out register cache I/O functions\n\nA lot of CODECs share the same register data formats and therefore\nreplicate the code to manage access to and caching of the register\nmap. In order to reduce code duplication centralised versions of\nthis code will be introduced with drivers able to configure the use\nof the common code by calling the new snd_soc_codec_set_cache_io()\nAPI call during startup.\n\nAs an initial user the 7 bit address/9 bit data format used by many\nWolfson devices is supported for write only CODECs and the drivers\nwith straightforward register cache implementations are converted to\nuse it.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "096e49d5e6f7bd93395e7ddf7e0239e1644d0505",
      "tree": "8247ad9e691171481fa00fd3cb301bb4f03779d8",
      "parents": [
        "af0adf3e81dbcf782388b8a7d0d7094ef5e70f50"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jul 05 15:12:22 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jul 05 15:12:22 2009 +0100"
      },
      "message": "ASoC: Add CODEC volatile register operation\n\nAdd a volatile_register() operation to the CODEC structure providing a\nstandard operation to query if a register is volatile. This will be used\nto factor out the register cache I/O operations for the CODECs.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "62b1653e29d8f359c4c7e045b965dc963459473d",
      "tree": "4f0d3f541c9eead5785f4e0230c46375a819ab60",
      "parents": [
        "10121a12e2380fb34b6e646a8e367add06d036c3",
        "d5fc3b5fe374f24b6773c22e90ef4bdda718b845"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Jun 25 15:28:39 2009 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Jun 25 15:28:39 2009 +0200"
      },
      "message": "Merge branch \u0027for-2.6.32\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc\n"
    },
    {
      "commit": "f27884aeadff9654f4a1e8a05dd92f4b140afe29",
      "tree": "22db0c732fcc4e68be25190454631ee1d249e295",
      "parents": [
        "c6223048259006759237d826219f0fa4f312fb47",
        "a35d01a5d2ac533edab94a8e3b6749ab213c91c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 14:35:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 14:35:57 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/battery-2.6\n\n* git://git.infradead.org/battery-2.6:\n  da9030_battery: Fix race between event handler and monitor\n  Add MAX17040 Fuel Gauge driver\n  w1: ds2760_battery: add support for sleep mode feature\n  w1: ds2760: add support for EEPROM read and write\n  ds2760_battery: cleanups in ds2760_battery_probe()\n"
    },
    {
      "commit": "72c04902d1e27c8a324014cff1d4475c11b1cecd",
      "tree": "3e93abdd0a3eeedd6df5a1dc43170744f2fa7664",
      "parents": [
        "641cf4a668e9e69d2bc061e953422ff72a91f86e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 16:58:48 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 16:58:48 2009 -0400"
      },
      "message": "Get \"no acls for this inode\" right, fix shmem breakage\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "641cf4a668e9e69d2bc061e953422ff72a91f86e",
      "tree": "77f34986228430a13d5b2a64e52c0b681b02bf70",
      "parents": [
        "c82e6d450fda56cb2d4f68534173d3cd11b32f9f"
      ],
      "author": {
        "name": "Markus Trippelsdorf",
        "email": "markus@trippelsdorf.de",
        "time": "Wed Jun 24 22:28:52 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 16:34:50 2009 -0400"
      },
      "message": "inline functions left without protection of ifdef (acl)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c3cb5e193937c7aa50c323e7933507020bd26340",
      "tree": "ea36213ccd29dc4caf2f729fd51b2d489b591a31",
      "parents": [
        "ea94b5034bbebc964115f119d6cd330757fce7f9",
        "f40c67f0f7e2767f80f7cbcbc1ab86c4113c202e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:26:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:26:54 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm: (48 commits)\n  dm mpath: change to be request based\n  dm: disable interrupt when taking map_lock\n  dm: do not set QUEUE_ORDERED_DRAIN if request based\n  dm: enable request based option\n  dm: prepare for request based option\n  dm raid1: add userspace log\n  dm: calculate queue limits during resume not load\n  dm log: fix create_log_context to use logical_block_size of log device\n  dm target:s introduce iterate devices fn\n  dm table: establish queue limits by copying table limits\n  dm table: replace struct io_restrictions with struct queue_limits\n  dm table: validate device logical_block_size\n  dm table: ensure targets are aligned to logical_block_size\n  dm ioctl: support cookies for udev\n  dm: sysfs add suspended attribute\n  dm table: improve warning message when devices not freed before destruction\n  dm mpath: add service time load balancer\n  dm mpath: add queue length load balancer\n  dm mpath: add start_io and nr_bytes to path selectors\n  dm snapshot: use barrier when writing exception store\n  ...\n"
    },
    {
      "commit": "650a10dc484f067883fc05a2d4116e1ee3f909c0",
      "tree": "5add33fbed9ee9e64f04c47e9cecf670a1e27178",
      "parents": [
        "9937ac0cc087b03d6d73f46a5d6b38c43626e60e",
        "916d75761c971b6e630a26bd4ba472e90ac9a4b9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:22:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:22:57 2009 -0700"
      },
      "message": "Merge branch \u0027audit.b63\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b63\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:\n  Fix rule eviction order for AUDIT_DIR\n  Audit: clean up all op\u003d output to include string quoting\n  Audit: move audit_get_nd completely into audit_watch\n  audit: seperate audit inode watches into a subfile\n  Audit: clean up audit_receive_skb\n  Audit: cleanup netlink mesg handling\n  Audit: unify the printk of an skb when auditd not around\n  Audit: dereferencing krule as if it were an audit_watch\n  Audit: better estimation of execve record length\n  Audit: fix audit watch use after free\n"
    },
    {
      "commit": "0c26d7cc31cd81a82be3b9d7687217d49fe9c47e",
      "tree": "1a20b590a5d71e588af7034b21f4779e6a8bd949",
      "parents": [
        "936940a9c7e3d99b25859bf1ff140d8c2480183a",
        "21ab01e2fcbfcc0d1faba2b7336b3c0f7f3c1ac8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:17:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:17:07 2009 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (72 commits)\n  asus-laptop: remove EXPERIMENTAL dependency\n  asus-laptop: use pr_fmt and pr_\u003clevel\u003e\n  eeepc-laptop: cpufv updates\n  eeepc-laptop: sync eeepc-laptop with asus_acpi\n  asus_acpi: Deprecate in favor of asus-laptop\n  acpi4asus: update MAINTAINER and KConfig links\n  asus-laptop: platform dev as parent for led and backlight\n  eeepc-laptop: enable camera by default\n  ACPI: Rename ACPI processor device bus ID\n  acerhdf: Acer Aspire One fan control\n  ACPI: video: DMI workaround broken Acer 7720 BIOS enabling display brightness\n  ACPI: run ACPI device hot removal in kacpi_hotplug_wq\n  ACPI: Add the reference count to avoid unloading ACPI video bus twice\n  ACPI: DMI to disable Vista compatibility on some Sony laptops\n  ACPI: fix a deadlock in hotplug case\n  Show the physical device node of backlight class device.\n  ACPI: pdc init related memory leak with physical CPU hotplug\n  ACPI: pci_root: remove unused dev/fn information\n  ACPI: pci_root: simplify list traversals\n  ACPI: pci_root: use driver data rather than list lookup\n  ...\n"
    },
    {
      "commit": "936940a9c7e3d99b25859bf1ff140d8c2480183a",
      "tree": "ddce374cdab91939fef576dbdd4c66d13a9c0299",
      "parents": [
        "09ce42d3167e3f20b501fa780c2415332330fac5",
        "1cbd20d820c36f52543e3e4cd0067ebf52aa388f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:03:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:03:12 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (23 commits)\n  switch xfs to generic acl caching helpers\n  helpers for acl caching + switch to those\n  switch shmem to inode-\u003ei_acl\n  switch reiserfs to inode-\u003ei_acl\n  switch reiserfs to usual conventions for caching ACLs\n  reiserfs: minimal fix for ACL caching\n  switch nilfs2 to inode-\u003ei_acl\n  switch btrfs to inode-\u003ei_acl\n  switch jffs2 to inode-\u003ei_acl\n  switch jfs to inode-\u003ei_acl\n  switch ext4 to inode-\u003ei_acl\n  switch ext3 to inode-\u003ei_acl\n  switch ext2 to inode-\u003ei_acl\n  add caching of ACLs in struct inode\n  fs: Add new pre-allocation ioctls to vfs for compatibility with legacy xfs ioctls\n  cleanup __writeback_single_inode\n  ... and the same for vfsmount id/mount group id\n  Make allocation of anon devices cheaper\n  update Documentation/filesystems/Locking\n  devpts: remove module-related code\n  ...\n"
    },
    {
      "commit": "09ce42d3167e3f20b501fa780c2415332330fac5",
      "tree": "2f0a6e2e3ec51187f4df78e8c75aa31602a6edd4",
      "parents": [
        "d7ed9c05ebf56c04811276207d7110706debe09f",
        "7959ea254ed18faee41160b1c50b3c9664735967"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:01:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:01:12 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6:\n  bnx2: Fix the behavior of ethtool when ONBOOT\u003dno\n  qla3xxx: Don\u0027t sleep while holding lock.\n  qla3xxx: Give the PHY time to come out of reset.\n  ipv4 routing: Ensure that route cache entries are usable and reclaimable with caching is off\n  net: Move rx skb_orphan call to where needed\n  ipv6: Use correct data types for ICMPv6 type and code\n  net: let KS8842 driver depend on HAS_IOMEM\n  can: let SJA1000 driver depend on HAS_IOMEM\n  netxen: fix firmware init handshake\n  netxen: fix build with without CONFIG_PM\n  netfilter: xt_rateest: fix comparison with self\n  netfilter: xt_quota: fix incomplete initialization\n  netfilter: nf_log: fix direct userspace memory access in proc handler\n  netfilter: fix some sparse endianess warnings\n  netfilter: nf_conntrack: fix conntrack lookup race\n  netfilter: nf_conntrack: fix confirmation race condition\n  netfilter: nf_conntrack: death_by_timeout() fix\n"
    },
    {
      "commit": "073aaa1b142461d91f83da66db1184d7c1b1edea",
      "tree": "2b54d185d78f1229418fca521a93e6b55c57248b",
      "parents": [
        "06b16e9f68edaa1e71aee943d3c030bcf7380af1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 09 12:11:54 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:07 2009 -0400"
      },
      "message": "helpers for acl caching + switch to those\n\nhelpers: get_cached_acl(inode, type), set_cached_acl(inode, type, acl),\nforget_cached_acl(inode, type).\n\nubifs/xattr.c needed includes reordered, the rest is a plain switchover.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "06b16e9f68edaa1e71aee943d3c030bcf7380af1",
      "tree": "fcdbc0302571e6cda4817869a377d7498a44f776",
      "parents": [
        "281eede0328c84a8f20e0e85b807d5b51c3de4f2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 19:56:00 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:06 2009 -0400"
      },
      "message": "switch shmem to inode-\u003ei_acl\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "281eede0328c84a8f20e0e85b807d5b51c3de4f2",
      "tree": "9eb0184c7066f27593f2fd75db1593bf688c330f",
      "parents": [
        "7a77b15d9294749809de918e24bebc39e0fbc9ab"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 21:07:04 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:06 2009 -0400"
      },
      "message": "switch reiserfs to inode-\u003ei_acl\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7a77b15d9294749809de918e24bebc39e0fbc9ab",
      "tree": "d5e0d6d46dbcfece1c99854fbfc642e671d12b53",
      "parents": [
        "e68888bcb60ccba4dc21df9f2d8cd7325b64dce7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 21:01:13 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:06 2009 -0400"
      },
      "message": "switch reiserfs to usual conventions for caching ACLs\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6582a0e6f6bc7bf64817b9e1a424782855292ab0",
      "tree": "7f7ac59f476a461a33706714e7bcb635b60977af",
      "parents": [
        "5e78b435683daaaacadad1b2aeefb8904cf6acfb"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 19:53:58 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:04 2009 -0400"
      },
      "message": "switch ext3 to inode-\u003ei_acl\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f19d4a8fa6f9b6ccf54df0971c97ffcaa390b7b0",
      "tree": "552854efb57cce365c4db585f1009946aeb03062",
      "parents": [
        "3e63cbb1efca7dd3137de1bb475e2e068e38ef23"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 19:50:45 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:15:27 2009 -0400"
      },
      "message": "add caching of ACLs in struct inode\n\nNo helpers, no conversions yet.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3e63cbb1efca7dd3137de1bb475e2e068e38ef23",
      "tree": "5a7964068266e778e94c1348192d3c85eba4ac48",
      "parents": [
        "01c031945f2755c7afaaf456088543312f2b72ea"
      ],
      "author": {
        "name": "Ankit Jain",
        "email": "me@ankitjain.org",
        "time": "Fri Jun 19 14:28:07 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:15:27 2009 -0400"
      },
      "message": "fs: Add new pre-allocation ioctls to vfs for compatibility with legacy xfs ioctls\n\nThis patch adds ioctls to vfs for compatibility with legacy XFS\npre-allocation ioctls (XFS_IOC_*RESVP*). The implementation\neffectively invokes sys_fallocate for the new ioctls.\nAlso handles the compat_ioctl case.\nNote: These legacy ioctls are also implemented by OCFS2.\n\n[AV: folded fixes from hch]\n\nSigned-off-by: Ankit Jain \u003cme@ankitjain.org\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "57599cc997b81a7c4f764693a7316886a72067fe",
      "tree": "2e5cd27682614c88ec72009f9605062ada6eae25",
      "parents": [
        "fbe8cddd2d85979d273d7937a2b8a47498694d91",
        "586caae36cece718ff46b3a59b88af79e9f7a2e0"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:22:20 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:22:20 2009 -0400"
      },
      "message": "Merge branch \u0027bjorn-notify\u0027 into release\n\nConflicts:\n\tdrivers/platform/x86/eeepc-laptop.c\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "fbe8cddd2d85979d273d7937a2b8a47498694d91",
      "tree": "2ae3253bfd89337583d36afd783145786ffa531e",
      "parents": [
        "4e8a2372f9255a1464ef488ed925455f53fbdaa1",
        "e86435eb91b2bff114c5a02e46e16ce21b647ebe",
        "7fe2a6c275a5bcec52fb3ef643daaf8265b7af0d",
        "0705495d9010048e293013d9d129cf723363a0a8",
        "35a7c64fbc77bab4ca8ae477e8ab278ccd679ce2",
        "152a4e630f7ffdd7ff64427c4ba488dc0bce76af",
        "86e437f077c68112edcb6854ec036ed7e3f9a7f3",
        "c8d72a5e76988140bfdfd8722f2228d94e7fa10f",
        "7a04b8491a077471a34938b8ca060c37220953be",
        "ee1ca48fae7e575d5e399d4fdcfe0afc1212a64c",
        "9eccbc2f67efd0d19c47f40182abf2965c287add",
        "7e275cc4e8e20f82740bf40ae2f5695e9e35ff09",
        "7b768f07dce463a054c9dd84862d15ccc3d2b712",
        "8cb24c8fd70ea8431744de1ca0ca34ab45fbbdaa",
        "113b3a2b901573961509e81a28e9546cf9defef0",
        "d73772474f6ebbacbe820c31c0fa1cffa7160246",
        "056c308d3e4859334b519033d62ef050f0e0e261",
        "871043bc463e7d191e7b5b00436a8852921dd833"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:19:50 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:19:50 2009 -0400"
      },
      "message": "Merge branches \u0027acerhdf\u0027, \u0027acpi-pci-bind\u0027, \u0027bjorn-pci-root\u0027, \u0027bugzilla-12904\u0027, \u0027bugzilla-13121\u0027, \u0027bugzilla-13396\u0027, \u0027bugzilla-13533\u0027, \u0027bugzilla-13612\u0027, \u0027c3_lock\u0027, \u0027hid-cleanups\u0027, \u0027misc-2.6.31\u0027, \u0027pdc-leak-fix\u0027, \u0027pnpacpi\u0027, \u0027power_nocheck\u0027, \u0027thinkpad_acpi\u0027, \u0027video\u0027 and \u0027wmi\u0027 into release\n"
    },
    {
      "commit": "9d9609851003ebed15957f0f2ce18492739ee124",
      "tree": "2c116865d2f239b5596b22a3a79eecc82f5e1299",
      "parents": [
        "35fe4d0b1b12286a81938e9c5fdfaf639ac0ce5b"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:37 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 00:00:52 2009 -0400"
      },
      "message": "Audit: clean up all op\u003d output to include string quoting\n\nA number of places in the audit system we send an op\u003d followed by a string\nthat includes spaces.  Somehow this works but it\u0027s just wrong.  This patch\nmoves all of those that I could find to be quoted.\n\nExample:\n\nChange From: type\u003dCONFIG_CHANGE msg\u003daudit(1244666690.117:31): auid\u003d0 ses\u003d1\nsubj\u003dunconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 op\u003dremove rule\nkey\u003d\"number2\" list\u003d4 res\u003d0\n\nChange To: type\u003dCONFIG_CHANGE msg\u003daudit(1244666690.117:31): auid\u003d0 ses\u003d1\nsubj\u003dunconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 op\u003d\"remove rule\"\nkey\u003d\"number2\" list\u003d4 res\u003d0\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "86e437f077c68112edcb6854ec036ed7e3f9a7f3",
      "tree": "ac6ec8b6ac4f96ce7ef7b5e9fa057099d7ce9af1",
      "parents": [
        "07a2039b8eb0af4ff464efd3dfd95de5c02648c6"
      ],
      "author": {
        "name": "Zhao Yakui",
        "email": "yakui.zhao@intel.com",
        "time": "Tue Jun 16 11:23:13 2009 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jun 23 23:38:41 2009 -0400"
      },
      "message": "ACPI: Add the reference count to avoid unloading ACPI video bus twice\n\nSometimes both acpi video and i915 driver are compiled as modules.\nAnd there exists the strict dependency between the two drivers.\nThe acpi video bus will be unloaded in course of unloading the i915 driver.\nIf we unload the acpi video driver, then the kernel oops will be triggered.\n\nAdd the reference count to avoid unloading the ACPI video bus twice.\nThe reference count should be checked before unregistering the acpi video bus.\nIf the reference count is already zero, it won\u0027t unregister it again.\nAnd after the acpi video bus is already unregistered, the reference count\nwill be set to zero.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13396\n\nSigned-off-by: Zhao Yakui \u003cyakui.zhao@intel.com\u003e\nAcked-by: Zhang Rui \u003crui.zhang@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "be98eb2c2fc88d9d61cfeab5c11ab1118ca0bba9",
      "tree": "2fda177b596534b9ec69d98f6843d24d7e234538",
      "parents": [
        "cf5434e894a17bb8385997adc6d56642055a85d6",
        "f007e99c8e2e322b8331aba72414715119a2920d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 19:49:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 19:49:24 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  Intel-IOMMU, intr-remap: source-id checking\n  Intel-IOMMU, intr-remap: set the whole 128bits of irte when modify/free it\n  IOMMU Identity Mapping Support (drivers/pci/intel_iommu.c)\n"
    },
    {
      "commit": "cf5434e894a17bb8385997adc6d56642055a85d6",
      "tree": "60a02d312038f24ca24578ebefb47391d4a63c13",
      "parents": [
        "7b58fc21847950db8fcc6a142288b042564ffb76",
        "d246ab307d1d003c80fe279897dea22bf52b6e41"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 19:36:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 19:36:02 2009 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:\n  ocfs2/trivial: Wrap ocfs2_sysfile_cluster_lock_key within define.\n  ocfs2: Add lockdep annotations\n  vfs: Set special lockdep map for dirs only if not set by fs\n  ocfs2: Disable orphan scanning for local and hard-ro mounts\n  ocfs2: Do not initialize lvb in ocfs2_orphan_scan_lock_res_init()\n  ocfs2: Stop orphan scan as early as possible during umount\n  ocfs2: Fix ocfs2_osb_dump()\n  ocfs2: Pin journal head before accessing jh-\u003eb_committed_data\n  ocfs2: Update atime in splice read if necessary.\n  ocfs2: Provide the ocfs2_dlm_lvb_valid() stack API.\n"
    },
    {
      "commit": "d55d87fdff8252d0e2f7c28c2d443aee17e9d70f",
      "tree": "a4bfb0a47525672c690b63e85bf3f47f4ab014f7",
      "parents": [
        "d5fdd6babcfc2b0e6a8da1acf492a69fb54b4c47"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jun 22 02:25:25 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 23 16:36:25 2009 -0700"
      },
      "message": "net: Move rx skb_orphan call to where needed\n\nIn order to get the tun driver to account packets, we need to be\nable to receive packets with destructors set.  To be on the safe\nside, I added an skb_orphan call for all protocols by default since\nsome of them (IP in particular) cannot handle receiving packets\ndestructors properly.\n\nNow it seems that at least one protocol (CAN) expects to be able\nto pass skb-\u003esk through the rx path without getting clobbered.\n\nSo this patch attempts to fix this properly by moving the skb_orphan\ncall to where it\u0027s actually needed.  In particular, I\u0027ve added it\nto skb_set_owner_[rw] which is what most users of skb-\u003edestructor\ncall.\n\nThis is actually an improvement for tun too since it means that\nwe only give back the amount charged to the socket when the skb\nis passed to another socket that will also be charged accordingly.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nTested-by: Oliver Hartkopp \u003colver@hartkopp.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "517374704da44c1ba77c1600714fe214524af286",
      "tree": "878a914bb5bd383e5f883bffc2e5cbf884366a6e",
      "parents": [
        "30808ca751c3b8d81e948efb8fed7451a8321010"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Jun 22 13:16:51 2009 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jun 23 23:48:53 2009 +0100"
      },
      "message": "ASoC: Add a shutdown callback\n\nEnsure that the audio subsystem is powered down cleanly when the system\nshuts down by providing a shutdown operation. This ensures that all the\ncomponents have been returned to an off state cleanly which should avoid\naudio issues from partially charged capacitors or noise on digital inputs\nif the system is restarted quickly.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nTested-by: Ben Dooks \u003cben-linux@fluff.org\u003e\n"
    },
    {
      "commit": "f007e99c8e2e322b8331aba72414715119a2920d",
      "tree": "616bfcdda74341dc8b5d9ea1013bb7506407a961",
      "parents": [
        "c4658b4e777bebf69884f4884a9bfb2f84dd71d9"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Sat May 23 00:41:15 2009 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Jun 23 22:09:17 2009 +0100"
      },
      "message": "Intel-IOMMU, intr-remap: source-id checking\n\nTo support domain-isolation usages, the platform hardware must be\ncapable of uniquely identifying the requestor (source-id) for each\ninterrupt message. Without source-id checking for interrupt remapping\n, a rouge guest/VM with assigned devices can launch interrupt attacks\nto bring down anothe guest/VM or the VMM itself.\n\nThis patch adds source-id checking for interrupt remapping, and then\nreally isolates interrupts for guests/VMs with assigned devices.\n\nBecause PCI subsystem is not initialized yet when set up IOAPIC\nentries, use read_pci_config_byte to access PCI config space directly.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "01ff53f416757da416413bc32229770a8448b6ef",
      "tree": "31374589a0a6116ff3d756137fa0b0ac87f49e2e",
      "parents": [
        "a5c9b696ec109bb54d547fdb437a7a0c2d514670"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Jun 23 12:37:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 12:50:05 2009 -0700"
      },
      "message": "rmap: fixup page_referenced() for nommu systems\n\nAfter the recent changes that went into mm/vmscan.c to overhaul stuff, we\nended up with these warnings on no-mmu systems:\n\n  mm/vmscan.c: In function `shrink_page_list\u0027:\n  mm/vmscan.c:580: warning: unused variable `vm_flags\u0027\n  mm/vmscan.c: In function `shrink_active_list\u0027:\n  mm/vmscan.c:1294: warning: `vm_flags\u0027 may be used uninitialized in this function\n  mm/vmscan.c:1242: note: `vm_flags\u0027 was declared here\n\nThis is because the no-mmu function defines page_referenced() to work on\nthe first argument only (the page).  It does not clear the vm_flags given\nto it because for no-mmu systems, they never actually get utilized.  Since\nthat is no longer strictly true, we need to set vm_flags to 0 like\neveryone else so gcc can do proper dead code elimination without annoying\nus with unused warnings.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: David McCullough \u003cdavidm@snapgear.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5c9b696ec109bb54d547fdb437a7a0c2d514670",
      "tree": "c97533e38359a2e731bcc2c65f063a27f4f629e6",
      "parents": [
        "626f380d0b264a1e40237f5a2a3dffc5d14f256e"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Tue Jun 23 12:36:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 12:50:05 2009 -0700"
      },
      "message": "mm: pass mm to grab_swap_token\n\nIf a kthread happens to use get_user_pages() on an mm (as KSM does),\nthere\u0027s a chance that it will end up trying to read in a swap page, then\noops in grab_swap_token() because the kthread has no mm: GUP passes down\nthe right mm, so grab_swap_token() ought to be using it.\n\nWe have not identified a stronger case than KSM\u0027s daemon (not yet in\nmainline), but the issue must have come up before, since RHEL has included\na fix for this for years (though a different fix, they just back out of\ngrab_swap_token if current-\u003emm is unset: which is what we first proposed,\nbut using the right mm here seems more correct).\n\nReported-by: Izik Eidus \u003cieidus@redhat.com\u003e\nSigned-off-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f5bcf5f44796bf30a058a01c10a61b19784f0540",
      "tree": "1c78ecbb2a21f880a1508dc2fcbbcc4b169f43f3",
      "parents": [
        "defe9104833b5ad309447bbc1fcb8e5981b2d3e1",
        "129dd98194747a3b8ac1ff876d8d1f2440660d01"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:35:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:35:37 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (38 commits)\n  fusion: mptsas, fix lock imbalance\n  [SCSI] scsi_transport_fc: replace BUS_ID_SIZE by fixed count\n  sd, sr: fix Driver \u0027sd\u0027 needs updating message\n  scsi_transport_iscsi: return -EOVERFLOW for Too many iscsi targets\n  fc_transport: Selective return value from BSG timeout function\n  fc_transport: The softirq_done function registration for BSG request\n  sym53c8xx: ratelimit parity errors\n  explain the hidden scsi_wait_scan Kconfig variable\n  ibmvfc: Fix endless PRLI loop in discovery\n  ibmvfc: Process async events before command responses\n  libfc: Add runtime debugging with debug_logging module parameter\n  libfcoe: Add runtime debugging with module param debug_logging\n  fcoe: Add runtime debug logging with module parameter debug_logging\n  scsi_debug: Add support for physical block exponent and alignment\n  cnic: add NETDEV_1000 and NETDEVICES to Kconfig select\n  cnic: Fix __symbol_get() build error.\n  Revert \"[SCSI] cnic: fix error: implicit declaration of function ‘__symbol_get’\"\n  ipr: differentiate pci-x and pci-e based adapters\n  ipr: add test for MSI interrupt support\n  scsi_transport_spi: Blacklist Ultrium-3 tape for IU transfers\n  ...\n"
    },
    {
      "commit": "defe9104833b5ad309447bbc1fcb8e5981b2d3e1",
      "tree": "c399f17f5b2dfacbf6df399dd1df8b15c7573fbe",
      "parents": [
        "95b3692d9c22c659312acb466d0608bf8509f296",
        "0634a632f5dea8281ae7c9a96800582ff9eb1475"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:34:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:34:24 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:\n  asm-generic: add dummy pgprot_noncached()\n  lib/checksum.c: fix endianess bug\n  asm-generic: hook up new system calls\n  asm-generic: list Arnd as asm-generic maintainer\n  asm-generic: drop HARDIRQ_BITS definition from hardirq.h\n  asm-generic: uaccess: fix up local access_ok() usage\n  asm-generic: uaccess: add missing access_ok() check to strnlen_user()\n"
    },
    {
      "commit": "788c7df451467df71638dd79a2d63d78c6e13b9c",
      "tree": "30714df634b620784b7a04fefc51d8c09291de38",
      "parents": [
        "a800faec1b21d7133b5f0c8c6dac593b7c4e118d"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Tue Jun 23 13:49:05 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:23:33 2009 -0700"
      },
      "message": "hugetlb: fault flags instead of write_access\n\nhandle_mm_fault() is now passing fault flags rather than write_access\ndown to hugetlb_fault(), so better recognize that in hugetlb_fault(),\nand in hugetlb_no_page().\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0634a632f5dea8281ae7c9a96800582ff9eb1475",
      "tree": "77314bb143deb7b19bdd8f5cf6229a7720cc5378",
      "parents": [
        "32a9ff9cc55b42543a84bca90b070df92af72671"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Jun 23 13:51:19 2009 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Jun 23 14:34:30 2009 +0200"
      },
      "message": "asm-generic: add dummy pgprot_noncached()\n\nMost architectures now provide a pgprot_noncached(), the\nremaining ones can simply use an dummy default implementation,\nexcept for cris and xtensa, which should override the\ndefault appropriately.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: Magnus Damm \u003cmagnus.damm@gmail.com\u003e\n"
    },
    {
      "commit": "d5fdd6babcfc2b0e6a8da1acf492a69fb54b4c47",
      "tree": "e4ebdb5d6c4b1ddc16f83e701e3e6038c379a497",
      "parents": [
        "0cf08dcb78e8d61b6d4b2eb5cdb296d969971626"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Tue Jun 23 04:31:07 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 23 04:31:07 2009 -0700"
      },
      "message": "ipv6: Use correct data types for ICMPv6 type and code\n\nChange all the code that deals directly with ICMPv6 type and code\nvalues to use u8 instead of a signed int as that\u0027s the actual data\ntype.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0d3159be9a36fd8b7b1cf88b812d951add53d11",
      "tree": "eb2be10df0843457ed94f8560ceb956fd37dd60c",
      "parents": [
        "2c0b19ac3b73199fe7b3fbff884051046554c048"
      ],
      "author": {
        "name": "Trent Piepho",
        "email": "xyzzy@speakeasy.org",
        "time": "Sat May 30 21:45:46 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:21:18 2009 -0300"
      },
      "message": "V4L/DVB (11901): v4l2: Create helper function for bounding and aligning images\n\nMost hardware has limits on minimum and maximum image dimensions and also\nrequirements about alignment.  For example, image width must be even or a\nmultiple of four.  Some hardware has requirements that the total image size\n(width * height) be a multiple of some power of two.\n\nv4l_bound_align_image() will enforce min and max width and height, power of\ntwo alignment on width and height, and power of two alignment on total\nimage size.\n\nIt uses an efficient algorithm that will try to find the \"closest\" image\nsize that meets the requirements.\n\nSigned-off-by: Trent Piepho \u003cxyzzy@speakeasy.org\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "f0222c7d860f09a61bec5e500539f28db0184b38",
      "tree": "abcd69a4421985d205ede4df0365c7616d192453",
      "parents": [
        "90135c96869fa0ef3182282b2a661b57fcdb7230"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Tue Jun 09 17:12:33 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:15:47 2009 -0300"
      },
      "message": "V4L/DVB (12125): v4l2: add new s_config subdev ops and v4l2_i2c_new_subdev_cfg/board calls\n\nAdd a new s_config core ops call: this is called with the irq and platform\ndata to be used to initialize the subdev.\n\nAdded new v4l2_i2c_new_subdev_cfg and v4l2_i2c_new_subdev_board calls\nthat allows you to pass these new arguments.\n\nThe existing v4l2_i2c_new_subdev functions were modified to also call\ns_config.\n\nIn the future the existing v4l2_i2c_new_subdev functions will be replaced\nby a single v4l2_i2c_new_subdev function similar to v4l2_i2c_new_subdev_cfg\nbut without the irq and platform_data arguments.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "719cd4ab9695059e00f5248d1dceb534381fccb3",
      "tree": "7aac75d4b17c0b9c7033180f5fa8110a097bf09a",
      "parents": [
        "be5daa9bd220d384c7010aee6d3886279a61a183"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Sun Jun 14 07:12:11 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:14:39 2009 -0300"
      },
      "message": "V4L/DVB (12108): v4l2-i2c-drv.h: add comment describing when not to use this header.\n\nMake it very clear that this header should not be used for i2c drivers that\ndo not need to be compiled for pre-2.6.26 kernels.\n\nAs soon as the minimum supported kernel in the v4l-dvb repository becomes\n2.6.26 or up, then this header should be removed entirely.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "a4c473033b6a100773a4fd8b7ba1e45baeb1e692",
      "tree": "01465e084c65c49e0f2ea0586b83ef03385cdc84",
      "parents": [
        "19859229d7d98bc2d582ff45045dd7f73d649383"
      ],
      "author": {
        "name": "Devin Heitmueller",
        "email": "dheitmueller@kernellabs.com",
        "time": "Sat Jun 20 21:34:42 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:14:25 2009 -0300"
      },
      "message": "V4L/DVB (12102): em28xx: add Remote control support for EVGA inDtube\n\nAdd an IR profile for the EVGA inDtube remote control (which is an NEC type\nremote)\n\nSigned-off-by: Devin Heitmueller \u003cdheitmueller@kernellabs.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "1876bb923c98c605eca69f0bfe295f7b5f5eba28",
      "tree": "ddc996e7e15a9ec803e5cfeb8bf341af30fae7fa",
      "parents": [
        "f5cee95c2e4c56b50cdb8edd33cf04902946cd25"
      ],
      "author": {
        "name": "Hans de Goede",
        "email": "hdegoede@redhat.com",
        "time": "Sun Jun 14 06:45:50 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:12:37 2009 -0300"
      },
      "message": "V4L/DVB (12079): gspca_ov519: add support for the ov511 bridge\n\ngspca_ov519: add support for the ov511 bridge\n\nSigned-off-by: Hans de Goede \u003chdegoede@redhat.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "02ab18b0f497bed623814677577b76cc97234085",
      "tree": "4f110a6b30419cae8077546946cf221cfef5a8cb",
      "parents": [
        "b8bfb5fb348d939a96fc8f71996a2e5e48b4544b"
      ],
      "author": {
        "name": "Hans de Goede",
        "email": "hdegoede@redhat.com",
        "time": "Sun Jun 14 04:32:04 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:11:16 2009 -0300"
      },
      "message": "V4L/DVB (12072): gspca-ov519: add extra controls\n\nThis patch adds autobrightness (so that it can\nbe turned off to make the already present brightness\ncontrol work) and light frequency filtering controls.\n\nThe lightfreq control needed 2 different entries\nin the ctrls array, as the number of options differs\ndepending on the sensor. Always one of the 2 entires is\ndisabled ofcourse.\n\nSigned-off-by: Hans de Goede \u003chdegoede@redhat.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "687d680985b1438360a9ba470ece8b57cd205c3b",
      "tree": "ae253608531e5c3e823600974c610e722e7de759",
      "parents": [
        "1053414068bad659479e6efa62a67403b8b1ec0a",
        "008fe148cb0fb51d266baabe2c09997b21cf90c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:38:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:38:22 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/iommu-2.6.31\n\n* git://git.infradead.org/~dwmw2/iommu-2.6.31:\n  intel-iommu: Fix one last ia64 build problem in Pass Through Support\n  VT-d: support the device IOTLB\n  VT-d: cleanup iommu_flush_iotlb_psi and flush_unmaps\n  VT-d: add device IOTLB invalidation support\n  VT-d: parse ATSR in DMA Remapping Reporting Structure\n  PCI: handle Virtual Function ATS enabling\n  PCI: support the ATS capability\n  intel-iommu: dmar_set_interrupt return error value\n  intel-iommu: Tidy up iommu-\u003egcmd handling\n  intel-iommu: Fix tiny theoretical race in write-buffer flush.\n  intel-iommu: Clean up handling of \"caching mode\" vs. IOTLB flushing.\n  intel-iommu: Clean up handling of \"caching mode\" vs. context flushing.\n  VT-d: fix invalid domain id for KVM context flush\n  Fix !CONFIG_DMAR build failure introduced by Intel IOMMU Pass Through Support\n  Intel IOMMU Pass Through Support\n\nFix up trivial conflicts in drivers/pci/{intel-iommu.c,intr_remapping.c}\n"
    },
    {
      "commit": "1053414068bad659479e6efa62a67403b8b1ec0a",
      "tree": "d4096db0f3aa9ca5e6b44c85ab848b7bedbfc37a",
      "parents": [
        "b88f8a546f5dba213938fdfc11e66bc5c2421623",
        "0c53decdd0a9f9c459ccabe0b5f79660bde5375b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:29:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:29:52 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire: new stack is no longer experimental\n  firewire: net: better FIFO address range check and rcodes\n  firewire: net: fix card driver reloading\n  firewire: core: fix iso context shutdown on card removal\n  firewire: core: fix DMA unmapping in iso buffer removal\n  firewire: net: adjust net_device ops\n  firewire: net: remove unused code\n  firewire: net: allow for unordered unit discovery\n  firewire: net: style changes\n  firewire: net: add Kconfig item, rename driver\n  firewire: add IPv4 support\n"
    },
    {
      "commit": "cf8d2c11cb77f129675478792122f50827e5b0ae",
      "tree": "85bebdff4cffbca238952e839b0cb801e6a9bfe7",
      "parents": [
        "616511d039af402670de8500d0e24495113a9cab"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jun 22 15:09:13 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:28:25 2009 -0700"
      },
      "message": "VFS: Add VFS helper functions for setting up private namespaces\n\nThe purpose of this patch is to improve the remote mount path lookup\nsupport for distributed filesystems such as the NFSv4 client.\n\nWhen given a mount command of the form \"mount server:/foo/bar /mnt\", the\nNFSv4 client is required to look up the filehandle for \"server:/\", and\nthen look up each component of the remote mount path \"foo/bar\" in order\nto find the directory that is actually going to be mounted on /mnt.\nFollowing that remote mount path may involve following symlinks,\ncrossing server-side mount points and even following referrals to\nfilesystem volumes on other servers.\n\nSince the standard VFS path lookup code already supports walking paths\nthat contain all these features (using in-kernel automounts for\nfollowing referrals) we would like to be able to reuse that rather than\nduplicate the full path traversal functionality in the NFSv4 client code.\n\nThis patch therefore defines a VFS helper function create_mnt_ns(), that\nsets up a temporary filesystem namespace and attaches a root filesystem to\nit. It exports the create_mnt_ns() and put_mnt_ns() function for use by\nfilesystem modules.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "616511d039af402670de8500d0e24495113a9cab",
      "tree": "825a34ab670dedc463ba7252a177793746c010c7",
      "parents": [
        "31950eb66ff47c946fd9c65c2f8c94b6b7ba13fc"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jun 22 15:09:13 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:28:25 2009 -0700"
      },
      "message": "VFS: Uninline the function put_mnt_ns()\n\nIn order to allow modules to use it without having to export vfsmount_lock.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "31950eb66ff47c946fd9c65c2f8c94b6b7ba13fc",
      "tree": "1ab1e09bbe7a0b33bbf19dd725172827bac5bb88",
      "parents": [
        "ac1b7c378ef26fba6694d5f118fe7fc16fee2fe2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:18:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:18:12 2009 -0700"
      },
      "message": "mm/init: cpu_hotplug_init() must be initialized before SLAB\n\nSLAB uses get/put_online_cpus() which use a mutex which is itself only\ninitialized when cpu_hotplug_init() is called.  Currently we hang suring\nboot in SLAB due to doing that too late.\n\nReported by James Bottomley and Sachin Sant (and possibly others).\nDebugged by Benjamin Herrenschmidt.\n\nThis just removes the dynamic initialization of the data structures, and\nreplaces it with a static one, avoiding this dependency entirely, and\nremoving one unnecessary special initcall.\n\nTested-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nTested-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nTested-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac1b7c378ef26fba6694d5f118fe7fc16fee2fe2",
      "tree": "3f72979545bb070eb2c3e903cbf31dc4aef3ffc9",
      "parents": [
        "9e268beb92ee3a853b3946e84b10358207e2085f",
        "c90173f0907486fe4010c2a8cef534e2473db43f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 16:56:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 16:56:22 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (63 commits)\n  mtd: OneNAND: Allow setting of boundary information when built as module\n  jffs2: leaking jffs2_summary in function jffs2_scan_medium\n  mtd: nand: Fix memory leak on txx9ndfmc probe failure.\n  mtd: orion_nand: use burst reads with double word accesses\n  mtd/nand: s3c6400 support for s3c2410 driver\n  [MTD] [NAND] S3C2410: Use DIV_ROUND_UP\n  [MTD] [NAND] S3C2410: Deal with unaligned lengths in S3C2440 buffer read/write\n  [MTD] [NAND] S3C2410: Allow the machine code to get the BBT table from NAND\n  [MTD] [NAND] S3C2410: Added a kerneldoc for s3c2410_nand_set\n  mtd: physmap_of: Add multiple regions and concatenation support\n  mtd: nand: max_retries off by one in mxc_nand\n  mtd: nand: s3c2410_nand_setrate(): use correct macros for 2412/2440\n  mtd: onenand: add bbt_wait \u0026 unlock_all as replaceable for some platform\n  mtd: Flex-OneNAND support\n  mtd: nand: add OMAP2/OMAP3 NAND driver\n  mtd: maps: Blackfin async: fix memory leaks in probe/remove funcs\n  mtd: uclinux: mark local stuff static\n  mtd: uclinux: do not allow to be built as a module\n  mtd: uclinux: allow systems to override map addr/size\n  mtd: blackfin NFC: fix hang when using NAND on BF527-EZKITs\n  ...\n"
    },
    {
      "commit": "9a7aa12f3911853a3574d47d567b81a2a5df7208",
      "tree": "ec3c8efe46b59ed78515ec75302a86054f60d6e5",
      "parents": [
        "df152c241df9e9d2b9a65d37bd02961abe7f591a"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Jun 04 15:26:49 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Jun 22 14:34:22 2009 -0700"
      },
      "message": "vfs: Set special lockdep map for dirs only if not set by fs\n\nSome filesystems need to set lockdep map for i_mutex differently for\ndifferent directories. For example OCFS2 has system directories (for\norphan inode tracking and for gathering all system files like journal\nor quota files into a single place) which have different locking\nlocking rules than standard directories. For a filesystem setting\nlockdep map is naturaly done when the inode is read but we have to\nmodify unlock_new_inode() not to overwrite the lockdep map the filesystem\nhas set.\n\nAcked-by: peterz@infradead.org\nCC: mingo@redhat.com\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "eadfe21989d728b5af936487627b4e288bd805f8",
      "tree": "bc1b7a09c6bf1e231654cb86ff64e46b9d9cbbfa",
      "parents": [
        "7e0338c0de18c50f09aea1fbef45110cf7d64a3c"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Jun 22 15:32:31 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 13:34:49 2009 -0700"
      },
      "message": "LDSCRIPT: Name INIT_RAM_FS consistently\n\nIn asm-generic/vmlinux.lds.h, name INIT_RAM_FS consistently, no matter the\nsetting of CONFIG_BLK_DEV_INITRD.  This corrects:\n\n\tcommit ef53dae8658cf0e93d380983824a661067948d87\n\tAuthor: Sam Ravnborg \u003csam@ravnborg.org\u003e\n\tDate:   Sun Jun 7 20:46:37 2009 +0200\n\tSubject: Improve vmlinux.lds.h support for arch specific linker scripts\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7e0338c0de18c50f09aea1fbef45110cf7d64a3c",
      "tree": "30a935c1f6eee7125a9fbb802a33292b1f7268fa",
      "parents": [
        "df36b439c5fedefe013d4449cb6a50d15e2f4d70",
        "47fcb03fefee2501e79176932a4184fc24d6f8ec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 12:55:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 12:55:50 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://fieldses.org/git/linux-nfsd\n\n* \u0027for-2.6.31\u0027 of git://fieldses.org/git/linux-nfsd: (60 commits)\n  SUNRPC: Fix the TCP server\u0027s send buffer accounting\n  nfsd41: Backchannel: minorversion support for the back channel\n  nfsd41: Backchannel: cleanup nfs4.0 callback encode routines\n  nfsd41: Remove ip address collision detection case\n  nfsd: optimise the starting of zero threads when none are running.\n  nfsd: don\u0027t take nfsd_mutex twice when setting number of threads.\n  nfsd41: sanity check client drc maxreqs\n  nfsd41: move channel attributes from nfsd4_session to a nfsd4_channel_attr struct\n  NFS: kill off complicated macro \u0027PROC\u0027\n  sunrpc: potential memory leak in function rdma_read_xdr\n  nfsd: minor nfsd_vfs_write cleanup\n  nfsd: Pull write-gathering code out of nfsd_vfs_write\n  nfsd: track last inode only in use_wgather case\n  sunrpc: align cache_clean work\u0027s timer\n  nfsd: Use write gathering only with NFSv2\n  NFSv4: kill off complicated macro \u0027PROC\u0027\n  NFSv4: do exact check about attribute specified\n  knfsd: remove unreported filehandle stats counters\n  knfsd: fix reply cache memory corruption\n  knfsd: reply cache cleanups\n  ...\n"
    },
    {
      "commit": "df36b439c5fedefe013d4449cb6a50d15e2f4d70",
      "tree": "537c58db778cbf11b74e28091f89d1b8139fb84d",
      "parents": [
        "a9b011f5ac57cbaedb32a8149f3d39d7b2c1f0e0",
        "e9f029855865e917821ef6034b31e340a4cfc815"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 12:53:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 12:53:06 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027for-2.6.31\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (128 commits)\n  nfs41: sunrpc: xprt_alloc_bc_request() should not use spin_lock_bh()\n  nfs41: Move initialization of nfs4_opendata seq_res to nfs4_init_opendata_res\n  nfs: remove unnecessary NFS_INO_INVALID_ACL checks\n  NFS: More \"sloppy\" parsing problems\n  NFS: Invalid mount option values should always fail, even with \"sloppy\"\n  NFS: Remove unused XDR decoder functions\n  NFS: Update MNT and MNT3 reply decoding functions\n  NFS: add XDR decoder for mountd version 3 auth-flavor lists\n  NFS: add new file handle decoders to in-kernel mountd client\n  NFS: Add separate mountd status code decoders for each mountd version\n  NFS: remove unused function in fs/nfs/mount_clnt.c\n  NFS: Use xdr_stream-based XDR encoder for MNT\u0027s dirpath argument\n  NFS: Clean up MNT program definitions\n  lockd: Don\u0027t bother with RPC ping for NSM upcalls\n  lockd: Update NSM state from SM_MON replies\n  NFS: Fix false error return from nfs_callback_up() if ipv6.ko is not available\n  NFS: Return error code from nfs_callback_up() to user space\n  NFS: Do not display the setting of the \"intr\" mount option\n  NFS: add support for splice writes\n  nfs41: Backchannel: CB_SEQUENCE validation\n  ...\n"
    },
    {
      "commit": "59ef7a83f1127038a433464597df02e2dc9540e7",
      "tree": "725d262fc2e68eb9c592d76265f878cec73f8f2d",
      "parents": [
        "5165aece0efac6574fc3e32b6f1c2a964820d1c6",
        "2af5066f664cb011cf17d2e4414491fe24597e07"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:59:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:59:51 2009 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (74 commits)\n  PCI: make msi_free_irqs() to use msix_mask_irq() instead of open coded write\n  PCI: Fix the NIU MSI-X problem in a better way\n  PCI ASPM: remove get_root_port_link\n  PCI ASPM: cleanup pcie_aspm_sanity_check\n  PCI ASPM: remove has_switch field\n  PCI ASPM: cleanup calc_Lx_latency\n  PCI ASPM: cleanup pcie_aspm_get_cap_device\n  PCI ASPM: cleanup clkpm checks\n  PCI ASPM: cleanup __pcie_aspm_check_state_one\n  PCI ASPM: cleanup initialization\n  PCI ASPM: cleanup change input argument of aspm functions\n  PCI ASPM: cleanup misc in struct pcie_link_state\n  PCI ASPM: cleanup clkpm state in struct pcie_link_state\n  PCI ASPM: cleanup latency field in struct pcie_link_state\n  PCI ASPM: cleanup aspm state field in struct pcie_link_state\n  PCI ASPM: fix typo in struct pcie_link_state\n  PCI: drivers/pci/slot.c should depend on CONFIG_SYSFS\n  PCI: remove redundant __msi_set_enable()\n  PCI PM: consistently use type bool for wake enable variable\n  x86/ACPI: Correct maximum allowed _CRS returned resources and warn if exceeded\n  ...\n"
    },
    {
      "commit": "5165aece0efac6574fc3e32b6f1c2a964820d1c6",
      "tree": "73131c06a021578a47526a95bad391dbd9d3b932",
      "parents": [
        "e38be994b9cad09b0d8d78a1875d7e8a2e115d29",
        "f6b24caaf933a466397915a08e30e885a32f905a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:57:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:57:09 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (43 commits)\n  via-velocity: Fix velocity driver unmapping incorrect size.\n  mlx4_en: Remove redundant refill code on RX\n  mlx4_en: Removed redundant check on lso header size\n  mlx4_en: Cancel port_up check in transmit function\n  mlx4_en: using stop/start_all_queues\n  mlx4_en: Removed redundant skb-\u003elen check\n  mlx4_en: Counting all the dropped packets on the TX side\n  usbnet cdc_subset: fix issues talking to PXA gadgets\n  Net: qla3xxx, remove sleeping in atomic\n  ipv4: fix NULL pointer + success return in route lookup path\n  isdn: clean up documentation index\n  cfg80211: validate station settings\n  cfg80211: allow setting station parameters in mesh\n  cfg80211: allow adding/deleting stations on mesh\n  ath5k: fix beacon_int handling\n  MAINTAINERS: Fix Atheros pattern paths\n  ath9k: restore PS mode, before we put the chip into FULL SLEEP state.\n  ath9k: wait for beacon frame along with CAB\n  acer-wmi: fix rfkill conversion\n  ath5k: avoid PCI FATAL interrupts by restoring RETRY_TIMEOUT disabling\n  ...\n"
    },
    {
      "commit": "04896a77a97b87e1611dedd61be88264ef4ac96c",
      "tree": "a4c615f0aa022363dbf3efe50a1bd9de91a65c04",
      "parents": [
        "2421c48bd74debb537de94c1bd15cbabab272aa1"
      ],
      "author": {
        "name": "Robert Love",
        "email": "rlove@google.com",
        "time": "Mon Jun 22 18:43:11 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:32:25 2009 -0700"
      },
      "message": "msm_serial: serial driver for MSM7K onboard serial peripheral.\n\nSigned-off-by: Brian Swetland \u003cswetland@google.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "099d5270897606473d63091afcc63f53ee1894bc",
      "tree": "4381c82550484101567e07b385989e3510fa73ab",
      "parents": [
        "94362fd7fbad653c9517efa4aa7cd8fdadd527b1"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Mon Jun 22 18:42:42 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:32:24 2009 -0700"
      },
      "message": "serial@ add OMAP wakeup-enable register\n\nAdd the wakeup enable register to the list of OMAP-specific UART\nregisters.  This is to support forthcoming OMAP PM enhancements which\nuse the wakeup feature of the OMAP\u0027s 8250-based UART.\n\nSigned-off-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cec47e3d4a861e1d942b3a580d0bbef2700d2bb2",
      "tree": "2f92b957d515a5d887fe0147984cda3203c8b8ea",
      "parents": [
        "f5db4af466e2dca0fe822019812d586ca910b00c"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Mon Jun 22 10:12:35 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:35 2009 +0100"
      },
      "message": "dm: prepare for request based option\n\nThis patch adds core functions for request-based dm.\n\nWhen struct mapped device (md) is initialized, md-\u003equeue has\nan I/O scheduler and the following functions are used for\nrequest-based dm as the queue functions:\n    make_request_fn: dm_make_request()\n    pref_fn:         dm_prep_fn()\n    request_fn:      dm_request_fn()\n    softirq_done_fn: dm_softirq_done()\n    lld_busy_fn:     dm_lld_busy()\nActual initializations are done in another patch (PATCH 2).\n\nBelow is a brief summary of how request-based dm behaves, including:\n  - making request from bio\n  - cloning, mapping and dispatching request\n  - completing request and bio\n  - suspending md\n  - resuming md\n\n  bio to request\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  md-\u003equeue-\u003emake_request_fn() (dm_make_request()) calls __make_request()\n  for a bio submitted to the md.\n  Then, the bio is kept in the queue as a new request or merged into\n  another request in the queue if possible.\n\n  Cloning and Mapping\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  Cloning and mapping are done in md-\u003equeue-\u003erequest_fn() (dm_request_fn()),\n  when requests are dispatched after they are sorted by the I/O scheduler.\n\n  dm_request_fn() checks busy state of underlying devices using\n  target\u0027s busy() function and stops dispatching requests to keep them\n  on the dm device\u0027s queue if busy.\n  It helps better I/O merging, since no merge is done for a request\n  once it is dispatched to underlying devices.\n\n  Actual cloning and mapping are done in dm_prep_fn() and map_request()\n  called from dm_request_fn().\n  dm_prep_fn() clones not only request but also bios of the request\n  so that dm can hold bio completion in error cases and prevent\n  the bio submitter from noticing the error.\n  (See the \"Completion\" section below for details.)\n\n  After the cloning, the clone is mapped by target\u0027s map_rq() function\n    and inserted to underlying device\u0027s queue using\n    blk_insert_cloned_request().\n\n  Completion\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  Request completion can be hooked by rq-\u003eend_io(), but then, all bios\n  in the request will have been completed even error cases, and the bio\n  submitter will have noticed the error.\n  To prevent the bio completion in error cases, request-based dm clones\n  both bio and request and hooks both bio-\u003ebi_end_io() and rq-\u003eend_io():\n      bio-\u003ebi_end_io(): end_clone_bio()\n      rq-\u003eend_io():     end_clone_request()\n\n  Summary of the request completion flow is below:\n  blk_end_request() for a clone request\n    \u003d\u003e blk_update_request()\n       \u003d\u003e bio-\u003ebi_end_io() \u003d\u003d end_clone_bio() for each clone bio\n          \u003d\u003e Free the clone bio\n          \u003d\u003e Success: Complete the original bio (blk_update_request())\n             Error:   Don\u0027t complete the original bio\n    \u003d\u003e blk_finish_request()\n       \u003d\u003e rq-\u003eend_io() \u003d\u003d end_clone_request()\n          \u003d\u003e blk_complete_request()\n             \u003d\u003e dm_softirq_done()\n                \u003d\u003e Free the clone request\n                \u003d\u003e Success: Complete the original request (blk_end_request())\n                   Error:   Requeue the original request\n\n  end_clone_bio() completes the original request on the size of\n  the original bio in successful cases.\n  Even if all bios in the original request are completed by that\n  completion, the original request must not be completed yet to keep\n  the ordering of request completion for the stacking.\n  So end_clone_bio() uses blk_update_request() instead of\n  blk_end_request().\n  In error cases, end_clone_bio() doesn\u0027t complete the original bio.\n  It just frees the cloned bio and gives over the error handling to\n  end_clone_request().\n\n  end_clone_request(), which is called with queue lock held, completes\n  the clone request and the original request in a softirq context\n  (dm_softirq_done()), which has no queue lock, to avoid a deadlock\n  issue on submission of another request during the completion:\n      - The submitted request may be mapped to the same device\n      - Request submission requires queue lock, but the queue lock\n        has been held by itself and it doesn\u0027t know that\n\n  The clone request has no clone bio when dm_softirq_done() is called.\n  So target drivers can\u0027t resubmit it again even error cases.\n  Instead, they can ask dm core for requeueing and remapping\n  the original request in that cases.\n\n  suspend\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  Request-based dm uses stopping md-\u003equeue as suspend of the md.\n  For noflush suspend, just stops md-\u003equeue.\n\n  For flush suspend, inserts a marker request to the tail of md-\u003equeue.\n  And dispatches all requests in md-\u003equeue until the marker comes to\n  the front of md-\u003equeue.  Then, stops dispatching request and waits\n  for the all dispatched requests to complete.\n  After that, completes the marker request, stops md-\u003equeue and\n  wake up the waiter on the suspend queue, md-\u003ewait.\n\n  resume\n  \u003d\u003d\u003d\u003d\u003d\u003d\n  Starts md-\u003equeue.\n\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "f5db4af466e2dca0fe822019812d586ca910b00c",
      "tree": "1bbaaa36509df9f7eecc19ccffa434048cf4b555",
      "parents": [
        "754c5fc7ebb417b23601a6222a6005cc2e7f2913"
      ],
      "author": {
        "name": "Jonthan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Mon Jun 22 10:12:35 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:35 2009 +0100"
      },
      "message": "dm raid1: add userspace log\n\nThis patch contains a device-mapper mirror log module that forwards\nrequests to userspace for processing.\n\nThe structures used for communication between kernel and userspace are\nlocated in include/linux/dm-log-userspace.h.  Due to the frequency,\ndiversity, and 2-way communication nature of the exchanges between\nkernel and userspace, \u0027connector\u0027 was chosen as the interface for\ncommunication.\n\nThe first log implementations written in userspace - \"clustered-disk\"\nand \"clustered-core\" - support clustered shared storage.   A userspace\ndaemon (in the LVM2 source code repository) uses openAIS/corosync to\nprocess requests in an ordered fashion with the rest of the nodes in the\ncluster so as to prevent log state corruption.  Other implementations\nwith no association to LVM or openAIS/corosync, are certainly possible.\n\n(Imagine if two machines are writing to the same region of a mirror.\nThey would both mark the region dirty, but you need a cluster-aware\nentity that can handle properly marking the region clean when they are\ndone.  Otherwise, you might clear the region when the first machine is\ndone, not the second.)\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "754c5fc7ebb417b23601a6222a6005cc2e7f2913",
      "tree": "6c31b055fc26ec541d67fc1123ebaa4b7a8eae7a",
      "parents": [
        "18d8594dd93a1ae2fafd591ec026e87d743292bf"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Mon Jun 22 10:12:34 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:34 2009 +0100"
      },
      "message": "dm: calculate queue limits during resume not load\n\nCurrently, device-mapper maintains a separate instance of \u0027struct\nqueue_limits\u0027 for each table of each device.  When the configuration of\na device is to be changed, first its table is loaded and this structure\nis populated, then the device is \u0027resumed\u0027 and the calculated\nqueue_limits are applied.\n\nThis places restrictions on how userspace may process related devices,\nwhere it is often advantageous to \u0027load\u0027 tables for several devices\nat once before \u0027resuming\u0027 them together.  As the new queue_limits\nonly take effect after the \u0027resume\u0027, if they are changing and one\ndevice uses another, the latter must be \u0027resumed\u0027 before the former\nmay be \u0027loaded\u0027.\n\nThis patch moves the calculation of these queue_limits out of\nthe \u0027load\u0027 operation into \u0027resume\u0027.  Since we are no longer\npre-calculating this struct, we no longer need to maintain copies\nwithin our dm structs.\n\ndm_set_device_limits() now passes the \u0027start\u0027 of the device\u0027s\ndata area (aka pe_start) as the \u0027offset\u0027 to blk_stack_limits().\n\ninit_valid_queue_limits() is replaced by blk_set_default_limits().\n\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nCc: martin.petersen@oracle.com\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "af4874e03ed82f050d5872d8c39ce64bf16b5c38",
      "tree": "38aa5dee43b4bb7a369995d4f38dee992cb051e0",
      "parents": [
        "1197764e403d97231eb6da2b1e16f511a7fd3101"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Mon Jun 22 10:12:33 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:33 2009 +0100"
      },
      "message": "dm target:s introduce iterate devices fn\n\nAdd .iterate_devices to \u0027struct target_type\u0027 to allow a function to be\ncalled for all devices in a DM target.  Implemented it for all targets\nexcept those in dm-snap.c (origin and snapshot).\n\n(The raid1 version number jumps to 1.12 because we originally reserved\n1.1 to 1.11 for \u0027block_on_error\u0027 but ended up using \u0027handle_errors\u0027\ninstead.)\n\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: martin.petersen@oracle.com\n"
    },
    {
      "commit": "5ab97588fb266187b88d1ad893251c94388f18ba",
      "tree": "0dfd693fb3a31e22353e5640db8c17c989b5c65d",
      "parents": [
        "be6d4305db093ad1cc623f7dd3d2470b7bd73fa4"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Mon Jun 22 10:12:32 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:32 2009 +0100"
      },
      "message": "dm table: replace struct io_restrictions with struct queue_limits\n\nUse blk_stack_limits() to stack block limits (including topology) rather\nthan duplicate the equivalent within Device Mapper.\n\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "60935eb21d3c5bac79618000f38f92c249d153c4",
      "tree": "0fcd78d7d69e23cd062e5214ddf2959d5c74e605",
      "parents": [
        "486d220fe4909b5745c4faa67faddd30a707abe2"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Jun 22 10:12:30 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:30 2009 +0100"
      },
      "message": "dm ioctl: support cookies for udev\n\nAdd support for passing a 32 bit \"cookie\" into the kernel with the\nDM_SUSPEND, DM_DEV_RENAME and DM_DEV_REMOVE ioctls.  The (unsigned)\nvalue of this cookie is returned to userspace alongside the uevents\nissued by these ioctls in the variable DM_COOKIE.\n\nThis means the userspace process issuing these ioctls can be notified\nby udev after udev has completed any actions triggered.\n\nTo minimise the interface extension, we pass the cookie into the\nkernel in the event_nr field which is otherwise unused when calling\nthese ioctls.  Incrementing the version number allows userspace to\ndetermine in advance whether or not the kernel supports the cookie.\nIf the kernel does support this but userspace does not, there should\nbe no impact as the new variable will just get ignored.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "f9ab94cee313746573b2d693bc2afb807ebb0998",
      "tree": "150155f364db0f26c7217e1f92d31344aa67a3f0",
      "parents": [
        "27eaa14975d8b53f0bad422e53cdf8e5f6dd44ec"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Mon Jun 22 10:12:20 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:20 2009 +0100"
      },
      "message": "dm: introduce num_flush_requests\n\nIntroduce num_flush_requests for a target to set to say how many flush\ninstructions (empty barriers) it wants to receive.  These are sent by\n__clone_and_map_empty_barrier with map_info-\u003eflush_request going from 0\nto (num_flush_requests - 1).\n\nOld targets without flush support won\u0027t receive any flush requests.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "d06063cc221fdefcab86589e79ddfdb7c0e14b63",
      "tree": "00ccaf8c1992b57a4445d78b9eae25fde0b3ab31",
      "parents": [
        "30c9f3a9fae79517bca595826a19c6855fbb6d32"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 10 09:01:23 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 21 13:08:22 2009 -0700"
      },
      "message": "Move FAULT_FLAG_xyz into handle_mm_fault() callers\n\nThis allows the callers to now pass down the full set of FAULT_FLAG_xyz\nflags to handle_mm_fault().  All callers have been (mechanically)\nconverted to the new calling convention, there\u0027s almost certainly room\nfor architectures to clean up their code and then add FAULT_FLAG_RETRY\nwhen that support is added.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b391277a56b9eaaff4474339c703e574ed7fab5b",
      "tree": "81964fbb0a7582e110a0dc06b4ddfce8508c1bd3",
      "parents": [
        "24add1c4326ce5ca22e7af8b84bb113cd48efac9"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Thu Jun 18 09:57:18 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jun 21 12:01:27 2009 -0500"
      },
      "message": "sd, sr: fix Driver \u0027sd\u0027 needs updating message\n\nIf a SCSI ULD driver sets blk_queue_prep_rq(), it should clean it\nup itself on remove(), and not from the bus callbacks. This\nremoves the need to hook into bus-\u003eremove(), which should not\nbe used at the same time as driver-\u003eremove().\n\n[jejb: fix sdkp initialisation problem due to mismerge]\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "7414705ea4aef9ce438e547f3138a680d2d1096c",
      "tree": "c8c14a80e31dbecbd6a9d083369f3e5e11105756",
      "parents": [
        "650bd12b9e31ec51d7ad0df3c4f94d863b827976"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Wed Jun 10 15:31:10 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jun 21 11:07:08 2009 -0500"
      },
      "message": "libfc: Add runtime debugging with debug_logging module parameter\n\nThis patch adds the /sys/module/libfc/parameters/debug_logging\nfile to sysfs as a module parameter. It accepts an integer\nbitmask for logging. Currently it supports:\n\n   bit\nLSB 0 \u003d general libfc debugging\n    1 \u003d lport debugging\n    2 \u003d disc debugging\n    3 \u003d rport debugging\n    4 \u003d fcp debugging\n    5 \u003d EM debugging\n    6 \u003d exch/seq debugging\n    7 \u003d scsi logging (mostly error handling)\n\nthe other bits are not used at this time.\n\nThe patch converts all of the libfc source files to use\nthese new macros and removes the old FC_DBG macro.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "d355e57d58193b89283b0c8153649f0427b0bdad",
      "tree": "3b0abe01d5f384474b32d6606e1a4f57230a1f13",
      "parents": [
        "9194c6264040d71f851236437a392594b26e5b91"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Mon Jun 15 22:11:08 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jun 21 10:52:39 2009 -0500"
      },
      "message": "libiscsi: don\u0027t run scsi eh if iscsi task is making progress\n\nIf we are sending or receiving data for the task successfully do\nnot run the scsi eh, because we know the task is making progress.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "2453d6ff6ffc5f0d496b7b14f509a26f99bf115e",
      "tree": "9e4e709bdb932889b0b9cfc5b2b767cfcf750b83",
      "parents": [
        "12e24f34cb0d55efd08c18b2112507d4bf498008",
        "ab33dcff40d7a9a28587e4425621e4cbc4089e03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:30:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:30:01 2009 -0700"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq, irq.h: Fix kernel-doc warnings\n  genirq: fix comment to say IRQ_WAKE_THREAD\n"
    },
    {
      "commit": "12e24f34cb0d55efd08c18b2112507d4bf498008",
      "tree": "83b07be17b8ef45f42360a3b9159b3aaae3fbad4",
      "parents": [
        "1eb51c33b21ffa3fceb634d1d6bcd6488c79bc26",
        "eadc84cc01e04f9f74ec2de0c9355be035c7b396"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:29:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:29:32 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (49 commits)\n  perfcounter: Handle some IO return values\n  perf_counter: Push perf_sample_data through the swcounter code\n  perf_counter tools: Define and use our own u64, s64 etc. definitions\n  perf_counter: Close race in perf_lock_task_context()\n  perf_counter, x86: Improve interactions with fast-gup\n  perf_counter: Simplify and fix task migration counting\n  perf_counter tools: Add a data file header\n  perf_counter: Update userspace callchain sampling uses\n  perf_counter: Make callchain samples extensible\n  perf report: Filter to parent set by default\n  perf_counter tools: Handle lost events\n  perf_counter: Add event overlow handling\n  fs: Provide empty .set_page_dirty() aop for anon inodes\n  perf_counter: tools: Makefile tweaks for 64-bit powerpc\n  perf_counter: powerpc: Add processor back-end for MPC7450 family\n  perf_counter: powerpc: Make powerpc perf_counter code safe for 32-bit kernels\n  perf_counter: powerpc: Change how processor-specific back-ends get selected\n  perf_counter: powerpc: Use unsigned long for register and constraint values\n  perf_counter: powerpc: Enable use of software counters on 32-bit powerpc\n  perf_counter tools: Add and use isprint()\n  ...\n"
    },
    {
      "commit": "b0b7065b64fe517b4a50915a1555e8ee98890d64",
      "tree": "950e7735585a83f5b4efe7a9473b5b42d5ca4f57",
      "parents": [
        "38df92b8cee936334f686c06df0e5fbb92e252df",
        "d4c4038343510d83727ea922de4435996c26c0c8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:56:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:56:46 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (24 commits)\n  tracing/urgent: warn in case of ftrace_start_up inbalance\n  tracing/urgent: fix unbalanced ftrace_start_up\n  function-graph: add stack frame test\n  function-graph: disable when both x86_32 and optimize for size are configured\n  ring-buffer: have benchmark test print to trace buffer\n  ring-buffer: do not grab locks in nmi\n  ring-buffer: add locks around rb_per_cpu_empty\n  ring-buffer: check for less than two in size allocation\n  ring-buffer: remove useless compile check for buffer_page size\n  ring-buffer: remove useless warn on check\n  ring-buffer: use BUF_PAGE_HDR_SIZE in calculating index\n  tracing: update sample event documentation\n  tracing/filters: fix race between filter setting and module unload\n  tracing/filters: free filter_string in destroy_preds()\n  ring-buffer: use commit counters for commit pointer accounting\n  ring-buffer: remove unused variable\n  ring-buffer: have benchmark test handle discarded events\n  ring-buffer: prevent adding write in discarded area\n  tracing/filters: strloc should be unsigned short\n  tracing/filters: operand can be negative\n  ...\n\nFix up kmemcheck-induced conflict in kernel/trace/ring_buffer.c manually\n"
    },
    {
      "commit": "93db6294958f62643a917e44d1abc85440e600cf",
      "tree": "33de2c41b0f70d209d64487d1a2bba6d673015ef",
      "parents": [
        "43813f399c72aa22e01a680559c1cb5274bf2140",
        "eef3e4cab72eaf5345e3c73b2975c194a714f6cd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:17:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:17:02 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (35 commits)\n  Input: add driver for Synaptics I2C touchpad\n  Input: synaptics - add support for reporting x/y resolution\n  Input: ALPS - handle touchpoints buttons correctly\n  Input: gpio-keys - change timer to workqueue\n  Input: ads7846 - pin change interrupt support\n  Input: add support for touchscreen on W90P910 ARM platform\n  Input: appletouch - improve finger detection\n  Input: wacom - clear Intuos4 wheel data when finger leaves proximity\n  Input: ucb1400 - move static function from header into core\n  Input: add driver for EETI touchpanels\n  Input: ads7846 - more detailed model name in sysfs\n  Input: ads7846 - support swapping x and y axes\n  Input: ati_remote2 - use non-atomic bitops\n  Input: introduce lm8323 keypad driver\n  Input: psmouse - ESD workaround fix for OLPC XO touchpad\n  Input: tsc2007 - make sure platform provides get_pendown_state()\n  Input: uinput - flush all pending ff effects before destroying device\n  Input: simplify name handling for certain input handles\n  Input: serio - do not use deprecated dev.power.power_state\n  Input: wacom - add support for Intuos4 tablets\n  ...\n"
    },
    {
      "commit": "43813f399c72aa22e01a680559c1cb5274bf2140",
      "tree": "933c0e7c445b9c3478b5a0db06a162d0d39f00f2",
      "parents": [
        "a552f0af753eb4b5bbbe9eff205fe874b04c4583",
        "0b7af262aba912f52bc6ef76f1bc0960b01b8502"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:15:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:15:30 2009 -0700"
      },
      "message": "Merge branch \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (24 commits)\n  agp/intel: Make intel_i965_mask_memory use dma_addr_t for physical addresses\n  agp: add user mapping support to ATI AGP bridge.\n  drm/i915: enable GEM on PAE.\n  drm/radeon: fix unused variables warning\n  agp: switch AGP to use page array instead of unsigned long array\n  agpgart: detected ALi M???? chipset with M1621\n  drm/radeon: command stream checker for r3xx-r5xx hardware\n  drm/radeon: Fully initialize LVDS info also when we can\u0027t get it from the ROM.\n  radeon: Fix CP byte order on big endian architectures with KMS.\n  agp/uninorth: Handle user memory types.\n  drm/ttm: Add some powerpc cache flush code.\n  radeon: Enable modesetting on non-x86.\n  drm/radeon: Respect AGP cant_use_aperture flag.\n  drm: EDID endianness fixes.\n  drm/radeon: this VRAM vs aperture test is wrong, just remove it.\n  drm/ttm: fix an error path to exit function correctly\n  drm: Apply \"Memory fragmentation from lost alignment blocks\"\n  ttm: Return -ERESTART when a signal interrupts bo eviction.\n  drm: Remove memory debugging infrastructure.\n  drm/i915: Clear fence register on tiling stride change.\n  ...\n"
    },
    {
      "commit": "e6423407d01168f7760cdee7270d9f51d1240301",
      "tree": "979795cfa8f6946238ab31f544159142f3e7df93",
      "parents": [
        "7f8189068726492950bf1a2dcfd9b51314560abf",
        "39c58f37a10198054c656c28202fb1e6d22fd505"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:11:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:11:11 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* \u0027for-2.6.31\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (34 commits)\n  ide-cd: prevent null pointer deref via cdrom_newpc_intr\n  ide: BUG() on unknown requests\n  ide: filter out invalid DMA xfer mode changes in HDIO_DRIVE_CMD ioctl handler\n  ide: do not access ide_drive_t \u0027drive_data\u0027 field directly\n  sl82c105: implement test_irq() method\n  siimage: implement test_irq() method\n  pdc202xx_old: implement test_irq() method (take 2)\n  cmd64x: implement test_irq() method\n  cmd640: implement test_irq() method\n  ide: move ack_intr() method into \u0027struct ide_port_ops\u0027 (take 2)\n  ide: move IRQ clearing from ack_intr() method to clear_irq() method (take 2)\n  siimage: use ide_dma_test_irq() (take 2)\n  cmd64x: implement clear_irq() method (take 2)\n  ide: call clear_irq() method in ide_timer_expiry()\n  sgiioc4: coding style cleanup\n  ide: don\u0027t enable IORDY at a probe time\n  ide: IORDY handling fixes\n  ata: add ata_id_pio_need_iordy() helper (v2)\n  ide-tape: fix build issue\n  ide: unify interrupt reason checking\n  ...\n"
    },
    {
      "commit": "c3da63f35773b04e885c5659e560d5c521d2682e",
      "tree": "5e876e7587f299cadce0b53bfaf912fb28d8283d",
      "parents": [
        "73e42897e8e5619eacb787d2ce69be12f47cfc21",
        "a97f4424fb4cddecf9b13c9b0e3f79924b624a7f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 20 01:16:40 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 20 01:16:40 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "ec20a022aa24fc63d3ab59584cb1e5aa9a21d46c",
      "tree": "671086529e62fcb541fb03422010d1eeae09b00a",
      "parents": [
        "d7ed5d883c09c5474f842dcb148515dfaef2a567"
      ],
      "author": {
        "name": "Tero Saarni",
        "email": "tero.saarni@gmail.com",
        "time": "Wed Jun 10 23:27:24 2009 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Jun 19 22:55:17 2009 -0700"
      },
      "message": "Input: synaptics - add support for reporting x/y resolution\n\nSynaptics uses anisotropic coordinate system.  On some wide touchpads\nvertical resolution can be twice as high as horizontal which causes\nunequal sensitivity on x/y directions.  Add support for reading the\nresolution with EVIOCGABS ioctl.\n\nSigned-off-by: Tero Saarni \u003ctero.saarni@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "7b768f07dce463a054c9dd84862d15ccc3d2b712",
      "tree": "1c7a2509e1bca6718fd29e897f44b648089f728b",
      "parents": [
        "07a2039b8eb0af4ff464efd3dfd95de5c02648c6"
      ],
      "author": {
        "name": "Pallipadi, Venkatesh",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Fri Jun 19 17:14:59 2009 -0700"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Jun 20 00:50:52 2009 -0400"
      },
      "message": "ACPI: pdc init related memory leak with physical CPU hotplug\n\narch_acpi_processor_cleanup_pdc() in x86 and ia64 results in memory allocated\nfor _PDC objects that is never freed and will cause memory leak in case of\nphysical CPU remove and add. Patch fixes the memory leak by freeing the\nobjects soon after _PDC is evaluated.\n\nReported-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "5c6fb0059cec9a3c0f6d88a0ddf3d62ad323cd57",
      "tree": "49b4ceaeb5686fca4546315155d04633adf25b3c",
      "parents": [
        "31583d6acf940d2951bc8716557b06d9de5a0c4b",
        "c70366732f67dbdb32f7fe9c6aa59299b76feca6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 17:45:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 17:45:51 2009 -0700"
      },
      "message": "Merge branch \u0027i2c-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging\n\n* \u0027i2c-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:\n  i2c: New macro to initialize i2c address lists on the fly\n  i2c: Don\u0027t advertise i2c functions when not available\n  i2c: Use rwsem instead of mutex for board info\n  i2c: Add a sysfs interface to instantiate devices\n  i2c: Limit core locking to the necessary sections\n  i2c: Kill the redundant client list\n  i2c: Kill is_newstyle_driver\n  i2c: Merge i2c_attach_client into i2c_new_device\n  i2c: Drop i2c_probe function\n  i2c: Get rid of the legacy binding model\n  i2c: Kill client_register and client_unregister methods\n"
    },
    {
      "commit": "31583d6acf940d2951bc8716557b06d9de5a0c4b",
      "tree": "607aef385b0998f0cb7ff63b05407afed5182840",
      "parents": [
        "ee37ba7a4212c7420f12e6a2ad8a3966649ede7a",
        "f740f5ca056f0a4eff3abdf272a8a4ba3965d57d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 17:43:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 17:43:04 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  Fix kernel-doc parameter name typo in blk-settings.c:\n  block: rename CONFIG_LBD to CONFIG_LBDAF\n  block: Fix bounce_pfn setting\n  hd: stop defining MAJOR_NR\n"
    },
    {
      "commit": "dbe6f1869188b6e04e38aa861dd198befb08bcd7",
      "tree": "cbc1866e7e24f407de3d5f80ded160b6d1d75bdc",
      "parents": [
        "d68412b6d1e8e5ed42d568330e598bd81914ccbd"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Jun 18 16:49:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 16:46:08 2009 -0700"
      },
      "message": "dma-mapping: mark dma_sync_single and dma_sync_sg as deprecated\n\ndma_sync_single() and dma_sync_sg() have been described as \"Backwards\ncompat, remove in 2.7.x\" for a long time (since 2.6.5).\n\nThis marks dma_sync_single() and dma_sync_sg() as deprecated so the users\nget notified before removing them.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d68412b6d1e8e5ed42d568330e598bd81914ccbd",
      "tree": "749aab371027aaf4c2128def0cfca46dc6ddfa12",
      "parents": [
        "8e20ce94ce378334dea83a83ab26253b851100a2"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Thu Jun 18 16:49:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 16:46:08 2009 -0700"
      },
      "message": "dma-mapping: mark DMA_nBITS_MASK as deprecated\n\nMark them deprecated so that out-of-tree developers get notified about\nthis before their modules break when these macros are removed.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nAcked-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e9c28599879040039f610c5b177e61ef65ff100",
      "tree": "308fea743fbadefa3ea9a88ff3ae51f6fe0c624a",
      "parents": [
        "0732f87761dbe417cb6e084b712d07e879e876ef"
      ],
      "author": {
        "name": "Baruch Siach",
        "email": "baruch@tkos.co.il",
        "time": "Thu Jun 18 16:48:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 16:46:03 2009 -0700"
      },
      "message": "gpio: driver for PrimeCell PL061 GPIO controller\n\nThis is a driver for the ARM PrimeCell PL061 GPIO AMBA peripheral.  The\ndriver is implemented using the gpiolib framework.\n\nThis driver also includes support for the use of the PL061 as an interrupt\ncontroller (secondary).\n\nSigned-off-by: Baruch Siach \u003cbaruch@tkos.co.il\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nAcked-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "464902e812025792c9e33e19e1555c343672d5cf",
      "tree": "cc243de464a7935291c52ac93d6bd0a24c6c08c5",
      "parents": [
        "96e9cfeb9692b0bc6e03f9b6f9cb3c67a40b76d1"
      ],
      "author": {
        "name": "Alan Jenkins",
        "email": "alan-jenkins@tuffmail.co.uk",
        "time": "Tue Jun 16 14:54:04 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 19 11:50:18 2009 -0400"
      },
      "message": "rfkill: export persistent attribute in sysfs\n\nThis information allows userspace to implement a hybrid policy where\nit can store the rfkill soft-blocked state in platform non-volatile\nstorage if available, and if not then file-based storage can be used.\n\nSome users prefer platform non-volatile storage because of the behaviour\nwhen dual-booting multiple versions of Linux, or if the rfkill setting\nis changed in the BIOS setting screens, or if the BIOS responds to\nwireless-toggle hotkeys itself before the relevant platform driver has\nbeen loaded.\n\nSigned-off-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nAcked-by: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ],
  "next": "06d5caf47ef4fbd9efdceae33293c42778cb7b0c"
}
