)]}'
{
  "log": [
    {
      "commit": "f37dd80ac2a67e4e4e921f99d34a1ceeb2488abb",
      "tree": "c845e39b24feac331a9a67d49e0b8061f52131b3",
      "parents": [
        "b8d6f45b32f6fe72bf7304183275e99332544ce1"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Tue Feb 13 22:09:00 2007 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@arrakis.delvare",
        "time": "Tue Feb 13 22:09:00 2007 +0100"
      },
      "message": "i2c: Add driver suspend/resume/shutdown support\n\nDriver model updates for the I2C core:\n\n - Add new suspend(), resume(), and shutdown() methods.  Use them in the\n   standard driver model style; document them.\n\n - Minor doc updates to highlight zero-initialized fields in drivers, and\n   the driver model accessors for \"clientdata\".\n\nIf any i2c drivers were previously using the old suspend/resume calls\nin \"struct driver\", they were getting warning messages ... and will\nnow no longer work.  Other than that, this patch changes no behaviors;\nand it lets I2C drivers use conventional PM and shutdown support.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "4e6697fcc194db8b45559a9863947c6cbfeea363",
      "tree": "4df8760e32f765c9e4c91fd46a96481b3781babc",
      "parents": [
        "4ef0ce90df3763e277b5307fb580ff1cdaaad7b2"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue Feb 13 22:08:59 2007 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@arrakis.delvare",
        "time": "Tue Feb 13 22:08:59 2007 +0100"
      },
      "message": "i2c-piix4: Add support for the ATI SB600\n\nAdd support for the ATI SB600 SMBus controller.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "ec2f9d1331f658433411c58077871e1eef4ee1b4",
      "tree": "6d0e5f6665e5c89ee392379967a52e6fcae17cf2",
      "parents": [
        "89697f1d715e20fff0361cca79efd5a371623af7",
        "34cc560e6a72ff414ff7d107426a411b0a093ad3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 15:35:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 15:35:30 2007 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  [SPARC]: Re-export saved_command_line to modules.\n  [SPARC64]: Increase command line size to 2048 like other arches.\n  [SPARC64]: We do not need ZONE_DMA.\n"
    },
    {
      "commit": "b5ba1b31c793185d6e0ee62c1928c84bcff9818e",
      "tree": "db856c7e37f90234a9b9d5e55c80a0f86ff8299b",
      "parents": [
        "1b51d3a08b6c80a1e47d4c579c41abbe56cd3c44"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 12 11:01:21 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 12 15:15:47 2007 -0800"
      },
      "message": "[SPARC64]: Increase command line size to 2048 like other arches.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fe3eb20c1ace69e42e6ebf2afd2a904b2ae85cde",
      "tree": "6c49ee94bc60c668aa3f02aa029e167f6669e031",
      "parents": [
        "982d9a9ce389c396bc83ce29d799937f379ddcb7"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:14:28 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:14:28 2007 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: change nf_conntrack_l[34]proto_unregister to void\n\nNo caller checks the return value, and since its usually called within the\nmodule unload path there\u0027s nothing a module could do about errors anyway,\nso BUG on invalid conditions and return void.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c0e912d7ed8999f87fa7f084928aac1266e251f3",
      "tree": "ec48a83001871b4e0db78ee9eab520a1fbb02e14",
      "parents": [
        "abbaccda4c364815b8b1a82c45a94f60760e13e1"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:13:43 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:13:43 2007 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: fix invalid conntrack statistics RCU assumption\n\nNF_CT_STAT_INC assumes rcu_read_lock in nf_hook_slow disables\npreemption as well, making it legal to use __get_cpu_var without\ndisabling preemption manually. The assumption is not correct anymore\nwith preemptable RCU, additionally we need to protect against softirqs\nwhen not holding nf_conntrack_lock.\n\nAdd NF_CT_STAT_INC_ATOMIC macro, which disables local softirqs,\nand use where necessary.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "abbaccda4c364815b8b1a82c45a94f60760e13e1",
      "tree": "58e28cc25db59456092fc760b7a29e6d223610c5",
      "parents": [
        "923f4902fefdf4e89b0fb32c4e069d4f57d704f5"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:13:14 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:13:14 2007 -0800"
      },
      "message": "[NETFILTER]: ip_conntrack: fix invalid conntrack statistics RCU assumption\n\nCONNTRACK_STAT_INC assumes rcu_read_lock in nf_hook_slow disables\npreemption as well, making it legal to use __get_cpu_var without\ndisabling preemption manually. The assumption is not correct anymore\nwith preemptable RCU, additionally we need to protect against softirqs\nwhen not holding ip_conntrack_lock.\n\nAdd CONNTRACK_STAT_INC_ATOMIC macro, which disables local softirqs,\nand use where necessary.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "923f4902fefdf4e89b0fb32c4e069d4f57d704f5",
      "tree": "2fad9f83c0e6da178f5167f6efb2b75cbe28c68e",
      "parents": [
        "642d628b2c92e5283bbd3c849c7099c64ab68856"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:12:57 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:12:57 2007 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: properly use RCU API for nf_ct_protos/nf_ct_l3protos arrays\n\nReplace preempt_{enable,disable} based RCU by proper use of the\nRCU API and add missing rcu_read_lock/rcu_read_unlock calls in\nall paths not obviously only used within packet process context\n(nfnetlink_conntrack).\n  \nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e92ad99c78de09a5ba0746e1c0ee27cc7450c64d",
      "tree": "6ed2fcfbfdd88738fcf90dc5d25274246dcee07d",
      "parents": [
        "9b73534dc57fa2fd5ef567586adb83c16e88a52f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:11:55 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:11:55 2007 -0800"
      },
      "message": "[NETFILTER]: nf_log: minor cleanups\n\n- rename nf_logging to nf_loggers since its an array of registered loggers\n\n- rename nf_log_unregister_logger() to nf_log_unregister() to make it\n  symetrical to nf_log_register() and convert all users\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9dc6aa5fcfc104becd86c89c5e7ec90e840e0163",
      "tree": "4e6d22cd7fdcae42cbccd7ef71b86958ac5ac736",
      "parents": [
        "a5ea6169f294bc33a762f7c1c240e3ac0f045f9e"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:11:24 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:11:24 2007 -0800"
      },
      "message": "[NETFILTER]: nf_log: make nf_log_unregister_pf return void\n\nSince the only user of nf_log_unregister_pf (nfnetlink_log) doesn\u0027t\ncheck the return value, change it to void and bail out silently when\na non-existant address family is supplied.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebaf0c6032f525ddb0158fb59848d41899dce8cd",
      "tree": "c6c19d30f3621725f61941d1de967c4351fb22f7",
      "parents": [
        "ee9b6d61a2a43c5952eb43283f8db284a4e70b8a",
        "022ae414daadb718130679e4eacc105521f11ec7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:57:44 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:57:44 2007 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6:\n  [S390] remove __io_virt and mmiowb.\n  [S390] cio: use ARRAY_SIZE in device_id.c\n  [S390] cio: Fixup interface for setting options on ccw devices.\n  [S390] smp_call_function/smp_call_function_on locking.\n"
    },
    {
      "commit": "ee9b6d61a2a43c5952eb43283f8db284a4e70b8a",
      "tree": "afb0340e79d3e9d14f39df20e165ce2efe941b18",
      "parents": [
        "c5ef1c42c51b1b5b4a401a6517bdda30933ddbaf"
      ],
      "author": {
        "name": "Josef \u0027Jeff\u0027 Sipek",
        "email": "jsipek@cs.sunysb.edu",
        "time": "Mon Feb 12 00:55:41 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:47 2007 -0800"
      },
      "message": "[PATCH] Mark struct super_operations const\n\nThis patch is inspired by Arjan\u0027s \"Patch series to mark struct\nfile_operations and struct inode_operations const\".\n\nCompile tested with gcc \u0026 sparse.\n\nSigned-off-by: Josef \u0027Jeff\u0027 Sipek \u003cjsipek@cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c5ef1c42c51b1b5b4a401a6517bdda30933ddbaf",
      "tree": "e1a9804a8af427f700aaba4b386cf8679b317e83",
      "parents": [
        "92e1d5be91a0e3ffa5c4697eeb09b2aa22792122"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:40 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:46 2007 -0800"
      },
      "message": "[PATCH] mark struct inode_operations const 3\n\nMany struct inode_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "540473208f8ac71c25a87e1a2670c3c18dd4d6db",
      "tree": "716c6b412ebf3e232bd85da785315f888283d991",
      "parents": [
        "f59e5e82096f81a2cb7d7833001956d81e9fa6fb"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:28 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:44 2007 -0800"
      },
      "message": "[PATCH] mark struct file_operations const 1\n\nMany struct file_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "36dff96b3b83c5d79a45b221adf137b571b03d65",
      "tree": "149e42bd19a8f2f98e6aba6f933247e6333bad48",
      "parents": [
        "0465f790e06d6dbc07d9b569b74ee8154dfca280"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Mon Feb 12 00:55:26 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:44 2007 -0800"
      },
      "message": "[PATCH] ps3: cleanup ps3fb before clearing HPTE\n\nPS3: Cleanup the frame buffer device before clearing the HPTE mapping\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0465f790e06d6dbc07d9b569b74ee8154dfca280",
      "tree": "f494cad79e5515251b0c69f9c2a7a104c0c18bf7",
      "parents": [
        "310d8c11126d21e417206c874c6382c44ece1baa"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Mon Feb 12 00:55:25 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:44 2007 -0800"
      },
      "message": "[PATCH] ps3: disable display flipping during mode changes\n\nIf ps3fb is available, we have to disable display flipping while changing the\naudio or video mode.\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "310d8c11126d21e417206c874c6382c44ece1baa",
      "tree": "f09e4f821a34346f412689d4da365688fad7ba89",
      "parents": [
        "fbdb3e5be36619c4acf415d870eceab4cbce2850"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Mon Feb 12 00:55:23 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:44 2007 -0800"
      },
      "message": "[PATCH] ps3: Virtual Frame Buffer Driver\n\nAdd the PS3 Virtual Frame Buffer Driver.\n\nAs the actual graphics hardware cannot be accessed directly by Linux, ps3fb\nuses a virtual frame buffer in main memory.  The actual screen image is copied\nto graphics memory by the GPU on every vertical blank, by making a hypervisor\ncall.\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fbdb3e5be36619c4acf415d870eceab4cbce2850",
      "tree": "0bd7149180bdd261fa1e9067421ba64d1bf67d0e",
      "parents": [
        "dcfe2666ffd6316b764801db82092bc62db56e6f"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Mon Feb 12 00:55:22 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:44 2007 -0800"
      },
      "message": "[PATCH] ps3: Preallocate bootmem memory for ps3fb\n\nPreallocate bootmem memory for the PS3 frame buffer device, which needs a\nlarge block of physically-contiguous memory. The size of this memory block is\nconfigurable:\n  - The config option CONFIG_FB_PS3_DEFAULT_SIZE_M allows to specify the\n    default amount of memory (in MiB) allocated to the virtual frame buffer.\n  - The early boot parameter `ps3fb\u003dxxx\u0027 allows to override the default value.\n    It will be rounded up to a multiple of 1 MiB, if needed.\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nSigned-off-by: Geoff Levand \u003cgeoffrey.levand@am.sony.com\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9791d763de8cca82b42a7a579e031db78e8011ff",
      "tree": "b3a13693bad97543a75a53a2c5d97ad63ed26c09",
      "parents": [
        "5c52cbeb7f27e1242e88f99f7f6486a16d5733c7"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Mon Feb 12 00:55:19 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:44 2007 -0800"
      },
      "message": "[PATCH] fbdev modedb: make more pointer parameters const\n\nfbdev modedb: make more input and output pointer parameters const\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "11227fd1922dc5dda691586852cfd220dd383f37",
      "tree": "e6631b1e5be83876bbe2c6e5cea3a427ce61a3fa",
      "parents": [
        "5b8e8ee6c65a34d8aafaeb8e2eaa97e496c2567c"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Mon Feb 12 00:55:16 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:44 2007 -0800"
      },
      "message": "[PATCH] ps3: AV Settings Driver\n\nAdd the PS3 AV Settings Driver.\n\nThe AV Settings driver is used to control Audio and Video settings.  It\ncommunicates with the policy manager through the virtual uart.\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c4f28e54d61278203c2bb2aea0679e0a738235d2",
      "tree": "d92cf0718084a4e659444741443ee38afb847836",
      "parents": [
        "52e7c922f37907ab3cf3445b916fbbc53cbd6c75"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Feb 12 00:55:11 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:42 2007 -0800"
      },
      "message": "[PATCH] Video: fb, add true ref_count atomicity\n\nSome of fb drivers uses atomic_t in bad manner, since there are still some\nrace-prone gaps.  Use mutexes to protect open/close code sections with\nref_count testing and finally use simple uint.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nAcked-by: Denis Oliver Kropp \u003cdok@directfb.org\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52e7c922f37907ab3cf3445b916fbbc53cbd6c75",
      "tree": "7ec6c65950b47ab40c654bd5b63920948533bb7e",
      "parents": [
        "2fdbe5cf27aff997e348c5f01b424ad734bd1d25"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Feb 12 00:55:09 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:42 2007 -0800"
      },
      "message": "[PATCH] remove the broken FB_S3TRIO driver\n\nThe FB_S3TRIO driver:\n- has been marked as BROKEN for more than two years and\n- is still marked as BROKEN.\n\nDrivers that had been marked as BROKEN for such a long time seem to be\nunlikely to be revived in the forseeable future.\n\nBut if anyone wants to ever revive this driver, the code is still\npresent in the older kernel releases.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nAcked-by: Alan Cox \u003calan@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": "f9506a53b446bc942c79584d3ce442d6334de697",
      "tree": "43b9f4d82e31ec2af75fa79bb2201de1e48648f5",
      "parents": [
        "cd792aa896f281a224870eb5f2ee5b24682910a5"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Feb 12 00:55:01 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:42 2007 -0800"
      },
      "message": "[PATCH] proper prototype for tosh_smm()\n\nAdd a proper prototype for tosh_smm() to include/linux/toshiba.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a268422de8bf1b4c0cb97987b6c329c9f6a3da4b",
      "tree": "521e88fddb250dc193893c07bd889b5a28b7ded5",
      "parents": [
        "59ae6c6b87711ceb2d1ea5f9e08bb13aee947a29"
      ],
      "author": {
        "name": "Ondrej Zajicek",
        "email": "santiago@crfreenet.org",
        "time": "Mon Feb 12 00:54:49 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:41 2007 -0800"
      },
      "message": "[PATCH] fbdev driver for S3 Trio/Virge\n\nAdd a driver for S3 Trio / S3 Virge.  Driver is tested with most versions\nof S3 Trio and with S3 Virge/DX, on i386.\n\n(akpm: We kind-of have support for this hardware already, but...\n\nvirgefb.c\n  - amiga/zorro specific,\n  - broken (according to Kconfig),\n  - uses obsolete/nonexistent interface (struct display_switch)\n  - recent Adrian Bunk\u0027s patch removes this driver\n\nS3triofb.c\n  - ppc/openfirmware specific\n  - minimal functionality\n  - broken (according to Kconfig),\n  - uses obsolete/nonexistent interface (struct display_switch)\n)\n\nSigned-off-by: Ondrej Zajicek \u003csantiago@crfreenet.org\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "47e627bc8c9a70392d2049e6af5bd55fae61fe53",
      "tree": "51d5d0ff1008d200a7076b5f3fa0966277cb4b24",
      "parents": [
        "1e8ba6fba5050ec11bba90c8622aa2ed95ff711f"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Mon Feb 12 00:54:43 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:40 2007 -0800"
      },
      "message": "[PATCH] hotplug: Allow modules to use the cpu hotplug notifiers even if !CONFIG_HOTPLUG_CPU\n\nThe following patchset allows a host with running virtual machines to be\nsuspended and, on at least a subset of the machines tested, resumed.  Note\nthat this is orthogonal to suspending and resuming an individual guest to a\nfile.\n\nA side effect of implementing suspend/resume is that cpu hotplug is now\nsupported.  This should please the owners of big iron.\n\nThis patch:\n\nKVM wants the cpu hotplug notifications, both for cpu hotplug itself, but more\ncommonly for host suspend/resume.\n\nIn order to avoid extensive #ifdefs, provide stubs when CONFIG_CPU_HOTPLUG is\nnot defined.\n\nIn all, we have four cases:\n\n- UP: register and unregister stubbed out\n- SMP+hotplug: full register and unregister\n- SMP, no hotplug, core: register as __init, unregister stubbed\n      (cpus are brought up during core initialization)\n- SMP, no hotplug, module: register and unregister stubbed out\n      (cpus cannot be brought up during module lifetime)\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8cd133073f9b5cd335c0b2e4740aceb025d50ca9",
      "tree": "9cbfc34b90769163c75788d15ded022127791ee5",
      "parents": [
        "26bb83a755593a53bd248e20d699b0c813f1e238"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Mon Feb 12 00:54:41 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:40 2007 -0800"
      },
      "message": "[PATCH] kvm: Fix mismatch between 32-bit and 64-bit abi\n\nUnfortunately requiring a version bump.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54810342f1372afdaf6cb9a6aea0c35df187db12",
      "tree": "97775733e60a5875f88f30c38a69ba278479299a",
      "parents": [
        "d92899a0014aa795c21d3cf726ef5ff7684399f4"
      ],
      "author": {
        "name": "Dor Laor",
        "email": "dor.laor@qumranet.com",
        "time": "Mon Feb 12 00:54:39 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:40 2007 -0800"
      },
      "message": "[PATCH] kvm: Two-way apic tpr synchronization\n\nWe report the value of cr8 to userspace on an exit.  Also let userspace change\ncr8 when we re-enter the guest.  The lets 64-bit guest code maintain the tpr\ncorrectly.\n\nThanks for Yaniv Kamay for the idea.\n\nSigned-off-by: Dor Laor \u003cdor.laor@qumranet.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54fb996ac15c4014fa4d6b0ec8e42da134204897",
      "tree": "ee7a98270cabefc996a13691a7c9d63141a8d3a9",
      "parents": [
        "3313e29267414e4e3bf0d3de1caf9cb439b64aaf"
      ],
      "author": {
        "name": "Evgeniy Dushistov",
        "email": "dushistov@mail.ru",
        "time": "Mon Feb 12 00:54:32 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:40 2007 -0800"
      },
      "message": "[PATCH] ufs2 write: block allocation update\n\nPatch adds ability to work with 64bit metadata, this made by replacing work\nwith 32bit pointers by inline functions.\n\nSigned-off-by: Evgeniy Dushistov \u003cdushistov@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3313e29267414e4e3bf0d3de1caf9cb439b64aaf",
      "tree": "5de4ceb0d4dcf094cbb41cf3968df564d4e88976",
      "parents": [
        "cbcae39fa1cc16c0fb199223f5ec1aea5f4c7b2d"
      ],
      "author": {
        "name": "Evgeniy Dushistov",
        "email": "dushistov@mail.ru",
        "time": "Mon Feb 12 00:54:31 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:40 2007 -0800"
      },
      "message": "[PATCH] ufs2 write: inodes write\n\nThis patch adds into write inode path function to write UFS2 inode, and\nmodifys allocate inode path to allocate and init additional inode chunks.\n\nAlso some cleanups:\n- remove not used parameters in some functions\n- remove i_gen field from ufs_inode_info structure,\nthere is i_generation in inode structure with same purposes.\n\nSigned-off-by: Evgeniy Dushistov \u003cdushistov@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cca97de1184f6000d22b4106d47687b31cca1fa3",
      "tree": "ef437a7694b387311681b08c9d4a3b07daf2be2a",
      "parents": [
        "bbd4bb9aa7635063284ffb3470ab24c36c14d935"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:54:29 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:39 2007 -0800"
      },
      "message": "[PATCH] ia64: 2048-byte command line\n\nCurrent implementation allows the kernel to receive up to 255 characters from\nthe bootloader.  While the boot protocol allows greater buffers to be sent.\n\nIn current environment, the command-line is used in order to specify many\nvalues, including suspend/resume, module arguments, splash, initramfs and\nmore.\n\n255 characters are not enough anymore.\n\nAfter edd issue was fixed, and dynammic kernel command-line patch was\naccepted, we can extend the COMMAND_LINE_SIZE without runtime memory\nrequirements.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@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": "bbd4bb9aa7635063284ffb3470ab24c36c14d935",
      "tree": "169fea8ba78f463b470d3a0b498382a46a7f4a87",
      "parents": [
        "7bf9f974fbdc16769db3d48f7c31f932b233bcfb"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:54:28 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:39 2007 -0800"
      },
      "message": "[PATCH] x86_64: 2048-byte command line\n\nCurrent implementation allows the kernel to receive up to 255 characters from\nthe bootloader.  While the boot protocol allows greater buffers to be sent.\n\nIn current environment, the command-line is used in order to specify many\nvalues, including suspend/resume, module arguments, splash, initramfs and\nmore.\n\n255 characters are not enough anymore.\n\nAfter edd issue was fixed, and dynammic kernel command-line patch was\naccepted, we can extend the COMMAND_LINE_SIZE without runtime memory\nrequirements.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7bf9f974fbdc16769db3d48f7c31f932b233bcfb",
      "tree": "281457b3535b21c174b60feeea7168c2162a4ef5",
      "parents": [
        "7a3a06d0e158fc82a6bf13e18439285c7791d2b8"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:54:27 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:39 2007 -0800"
      },
      "message": "[PATCH] i386: 2048-byte command line\n\nCurrent implementation allows the kernel to receive up to 255 characters from\nthe bootloader.  While the boot protocol allows greater buffers to be sent.\n\nIn current environment, the command-line is used in order to specify many\nvalues, including suspend/resume, module arguments, splash, initramfs and\nmore.\n\n255 characters are not enough anymore.\n\nAfter edd issue was fixed, and dynammic kernel command-line patch was\naccepted, we can extend the COMMAND_LINE_SIZE without runtime memory\nrequirements.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "adf48856db47f4f0f661f2f4b7004890408135cf",
      "tree": "04bc4bf2ffb77458aa9945829b3eeb616334f2b3",
      "parents": [
        "712f77b5659208b43c925e1b28c4f44891c4d94f"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:54:25 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:39 2007 -0800"
      },
      "message": "[PATCH] Dynamic kernel command-line: x86_64\n\n1. Rename saved_command_line into boot_command_line.\n2. Set command_line as __initdata.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30d7e0d466b3ac0b5ef77e4062bf9385f0d72270",
      "tree": "cff57621e9e5b8898abb2982ec3b0b7d0e6eac88",
      "parents": [
        "ff91691bccdb741efb2df0489058a4961fa79598"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:53:52 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] Dynamic kernel command-line: common\n\nCurrent implementation stores a static command-line buffer allocated to\nCOMMAND_LINE_SIZE size.  Most architectures stores two copies of this buffer,\none for future reference and one for parameter parsing.\n\nCurrent kernel command-line size for most architecture is much too small for\nmodule parameters, video settings, initramfs paramters and much more.  The\nproblem is that setting COMMAND_LINE_SIZE to a grater value, allocates static\nbuffers.\n\nIn order to allow a greater command-line size, these buffers should be\ndynamically allocated or marked as init disposable buffers, so unused memory\ncan be released.\n\nThis patch renames the static saved_command_line variable into\nboot_command_line adding __initdata attribute, so that it can be disposed\nafter initialization.  This rename is required so applications that use\nsaved_command_line will not be affected by this change.\n\nIt reintroduces saved_command_line as dynamically allocated buffer to match\nthe data in boot_command_line.\n\nIt also mark secondary command-line buffer as __initdata, and copies it to\ndynamically allocated static_command_line buffer components may hold reference\nto it after initialization.\n\nThis patch is for linux-2.6.20-rc4-mm1 and is divided to target each\narchitecture.  I could not check this in any architecture so please forgive me\nif I got it wrong.\n\nThe per-architecture modification is very simple, use boot_command_line in\nplace of saved_command_line.  The common code is the change into dynamic\ncommand-line.\n\nThis patch:\n\n1. Rename saved_command_line into boot_command_line, mark as init\n   disposable.\n\n2. Add dynamic allocated saved_command_line.\n\n3. Add dynamic allocated static_command_line.\n\n4. During startup copy: boot_command_line into saved_command_line.  arch\n   command_line into static_command_line.\n\n5. Parse static_command_line and not arch command_line, so arch\n   command_line may be freed.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kazumoto Kojima \u003ckkojima@rr.iij4u.or.jp\u003e\nCc: Richard Curnow \u003crc@rc0.org.uk\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.nec.co.jp\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88b4a07e6610f4c93b08b0bb103318218db1e9f6",
      "tree": "32e2f2650bd4841ba6b2fafc724c2806219351b4",
      "parents": [
        "b5d5dfbd59577aed72263f22e28d3eaf98e1c6e5"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:43 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: Public key transport mechanism\n\nThis is the transport code for public key functionality in eCryptfs.  It\nmanages encryption/decryption request queues with a transport mechanism.\nCurrently, netlink is the only implemented transport.\n\nEach inode has a unique File Encryption Key (FEK).  Under passphrase, a File\nEncryption Key Encryption Key (FEKEK) is generated from a salt/passphrase\ncombo on mount.  This FEKEK encrypts each FEK and writes it into the header of\neach file using the packet format specified in RFC 2440.  This is all\nsymmetric key encryption, so it can all be done via the kernel crypto API.\n\nThese new patches introduce public key encryption of the FEK.  There is no\nasymmetric key encryption support in the kernel crypto API, so eCryptfs pushes\nthe FEK encryption and decryption out to a userspace daemon.  After\nconsidering our requirements and determining the complexity of using various\ntransport mechanisms, we settled on netlink for this communication.\n\neCryptfs stores authentication tokens into the kernel keyring.  These tokens\ncorrelate with individual keys.  For passphrase mode of operation, the\nauthentication token contains the symmetric FEKEK.  For public key, the\nauthentication token contains a PKI type and an opaque data blob managed by\nindividual PKI modules in userspace.\n\nEach user who opens a file under an eCryptfs partition mounted in public key\nmode must be running a daemon.  That daemon has the user\u0027s credentials and has\naccess to all of the keys to which the user should have access.  The daemon,\nwhen started, initializes the pluggable PKI modules available on the system\nand registers itself with the eCryptfs kernel module.  Userspace utilities\nregister public key authentication tokens into the user session keyring.\nThese authentication tokens correlate key signatures with PKI modules and PKI\nblobs.  The PKI blobs contain PKI-specific information necessary for the PKI\nmodule to carry out asymmetric key encryption and decryption.\n\nWhen the eCryptfs module parses the header of an existing file and finds a Tag\n1 (Public Key) packet (see RFC 2440), it reads in the public key identifier\n(signature).  The asymmetrically encrypted FEK is in the Tag 1 packet;\neCryptfs puts together a decrypt request packet containing the signature and\nthe encrypted FEK, then it passes it to the daemon registered for the\ncurrent-\u003eeuid via a netlink unicast to the PID of the daemon, which was\nregistered at the time the daemon was started by the user.\n\nThe daemon actually just makes calls to libecryptfs, which implements request\npacket parsing and manages PKI modules.  libecryptfs grabs the public key\nauthentication token for the given signature from the user session keyring.\nThis auth tok tells libecryptfs which PKI module should receive the request.\nlibecryptfs then makes a decrypt() call to the PKI module, and it passes along\nthe PKI block from the auth tok.  The PKI uses the blob to figure out how it\nshould decrypt the data passed to it; it performs the decryption and passes\nthe decrypted data back to libecryptfs.  libecryptfs then puts together a\nreply packet with the decrypted FEK and passes that back to the eCryptfs\nmodule.\n\nThe eCryptfs module manages these request callouts to userspace code via\nmessage context structs.  The module maintains an array of message context\nstructs and places the elements of the array on two lists: a free and an\nallocated list.  When eCryptfs wants to make a request, it moves a msg ctx\nfrom the free list to the allocated list, sets its state to pending, and fires\noff the message to the user\u0027s registered daemon.\n\nWhen eCryptfs receives a netlink message (via the callback), it correlates the\nmsg ctx struct in the alloc list with the data in the message itself.  The\nmsg-\u003eindex contains the offset of the array of msg ctx structs.  It verifies\nthat the registered daemon PID is the same as the PID of the process that sent\nthe message.  It also validates a sequence number between the received packet\nand the msg ctx.  Then, it copies the contents of the message (the reply\npacket) into the msg ctx struct, sets the state in the msg ctx to done, and\nwakes up the process that was sleeping while waiting for the reply.\n\nThe sleeping process was whatever was performing the sys_open().  This process\noriginally called ecryptfs_send_message(); it is now in\necryptfs_wait_for_response().  When it wakes up and sees that the msg ctx\nstate was set to done, it returns a pointer to the message contents (the reply\npacket) and returns.  If all went well, this packet contains the decrypted\nFEK, which is then copied into the crypt_stat struct, and life continues as\nnormal.\n\nThe case for creation of a new file is very similar, only instead of a decrypt\nrequest, eCryptfs sends out an encrypt request.\n\n\u003e - We have a great clod of key mangement code in-kernel.  Why is that\n\u003e   not suitable (or growable) for public key management?\n\neCryptfs uses Howells\u0027 keyring to store persistent key data and PKI state\ninformation.  It defers public key cryptographic transformations to userspace\ncode.  The userspace data manipulation request really is orthogonal to key\nmanagement in and of itself.  What eCryptfs basically needs is a secure way to\ncommunicate with a particular daemon for a particular task doing a syscall,\nbased on the UID.  Nothing running under another UID should be able to access\nthat channel of communication.\n\n\u003e - Is it appropriate that new infrastructure for public key\n\u003e management be private to a particular fs?\n\nThe messaging.c file contains a lot of code that, perhaps, could be extracted\ninto a separate kernel service.  In essence, this would be a sort of\nrequest/reply mechanism that would involve a userspace daemon.  I am not aware\nof anything that does quite what eCryptfs does, so I was not aware of any\nexisting tools to do just what we wanted.\n\n\u003e   What happens if one of these daemons exits without sending a quit\n\u003e   message?\n\nThere is a stale uid\u003c-\u003epid association in the hash table for that user.  When\nthe user registers a new daemon, eCryptfs cleans up the old association and\ngenerates a new one.  See ecryptfs_process_helo().\n\n\u003e - _why_ does it use netlink?\n\nNetlink provides the transport mechanism that would minimize the complexity of\nthe implementation, given that we can have multiple daemons (one per user).  I\nexplored the possibility of using relayfs, but that would involve having to\nintroduce control channels and a protocol for creating and tearing down\nchannels for the daemons.  We do not have to worry about any of that with\nnetlink.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: David Howells \u003cdhowells@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": "b5d5dfbd59577aed72263f22e28d3eaf98e1c6e5",
      "tree": "9ef320c6ff4f61bffb25c0452570d5f76ab7769c",
      "parents": [
        "77f1f67a1a56defa210c3d8857f3e5eee3990a99"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Feb 12 00:53:40 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] include/linux/nfsd/const.h: remove NFS_SUPER_MAGIC\n\nNFS_SUPER_MAGIC is already defined in include/linux/magic.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95756482c9bfa375418c5a32455494a3042f65cd",
      "tree": "1c7583a43df17591cae77af601143509ab68c2b1",
      "parents": [
        "cdd88b9f3ed5013de0f1085e0e2f9123c798609d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:38 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: support IPv6 addresses in RPC server\u0027s UDP receive path\n\nAdd support for IPv6 addresses in the RPC server\u0027s UDP receive path.\n\n[akpm@linux-foundation.org: cleanups]\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73df0dbaff8d0853387e140f52b6250c486b18a1",
      "tree": "f1b3a669b47744b982ba5e25af329712abd36bf5",
      "parents": [
        "27459f0940e16c68e080f5fc7e85aa9eb3f74528"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:35 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Make rq_daddr field address-version independent\n\nThe rq_daddr field must support larger addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27459f0940e16c68e080f5fc7e85aa9eb3f74528",
      "tree": "f13cd1f2005dda2b6115e2afbc49e1271b0d374b",
      "parents": [
        "2442222283918c2d1c20ae651d95fe168757938b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses\n\nExpand the rq_addr field to allow it to contain larger addresses.\n\nSpecifically, we replace a \u0027sockaddr_in\u0027 with a \u0027sockaddr_storage\u0027, then\neverywhere the \u0027sockaddr_in\u0027 was referenced, we use instead an accessor\nfunction (svc_addr_in) which safely casts the _storage to _in.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2442222283918c2d1c20ae651d95fe168757938b",
      "tree": "f4e120320c5b9538b4626e576fce67db201c4cc7",
      "parents": [
        "ad06e4bd62351bc569cca0f25d68c58dbd298146"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:33 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Use sockaddr_storage to store address in svc_deferred_req\n\nSockaddr_storage will allow us to store arbitrary socket addresses in the\nsvc_deferred_req struct.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad06e4bd62351bc569cca0f25d68c58dbd298146",
      "tree": "82024c01e61de32af17d3b67eac0bb93138a2954",
      "parents": [
        "1ba951053f07187f6e77be664a4b6f8bf0ba7ae4"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:32 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Add a function to format the address in an svc_rqst for printing\n\nThere are loads of places where the RPC server assumes that the rq_addr fields\ncontains an IPv4 address.  Top among these are error and debugging messages\nthat display the server\u0027s IP address.\n\nLet\u0027s refactor the address printing into a separate function that\u0027s smart\nenough to figure out the difference between IPv4 and IPv6 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "067d7817310569f7b76ca08c4d071ca95ad4c1d3",
      "tree": "ee931bac235a3f9d0083edd7c00340121fe32767",
      "parents": [
        "e79eff1f90826b207b1152fc87aa97fa74fb7f9c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Cache remote peer\u0027s address in svc_sock\n\nThe remote peer\u0027s address won\u0027t change after the socket has been accepted.  We\ndon\u0027t need to call -\u003egetname on every incoming request.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "482fb94e1b0c2efe8258334aa2a68d4f4a91de9c",
      "tree": "84353b34bb5ea02df98b598fff037cf1da20d6b0",
      "parents": [
        "6b174337e5126de834a971d3edc3681bbfa45e2c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:29 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: allow creating an RPC service without registering with portmapper\n\nSometimes we need to create an RPC service but not register it with the local\nportmapper.  NFSv4 delegation callback, for example.\n\nChange the svc_makesock() API to allow optionally creating temporary or\npermanent sockets, optionally registering with the local portmapper, and make\nit return the ephemeral port of the new socket.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b174337e5126de834a971d3edc3681bbfa45e2c",
      "tree": "b1dc3e0ecd82353896b07c433f98f547abc5adc2",
      "parents": [
        "f85aaeba458fda1de199a73566c641516e9a935d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:28 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: update internal API: separate pmap register and temp sockets\n\nCurrently in the RPC server, registering with the local portmapper and\ncreating \"permanent\" sockets are tied together.  Expand the internal APIs to\nallow these two socket characteristics to be separately specified.\n\nThis will be externalized in the next patch.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "390414badebe45a2f556a04ece1fd99191aa6397",
      "tree": "8491b5e2f6ee05d2b2e04b7ae8e0e3ddd0c2e237",
      "parents": [
        "920fe7a8d0aba9782d1f924a02ece146acbf6686"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "philipp.zabel@gmail.com",
        "time": "Mon Feb 12 00:53:15 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] S3C2410 GPIO wrappers\n\nArch-neutral GPIO calls for S3C24xx.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "920fe7a8d0aba9782d1f924a02ece146acbf6686",
      "tree": "c0f14f50b8e7fa77f0ef1911c5a273fb6cda8109",
      "parents": [
        "8a898f1c366c858f8dbcb667c1cfcc282b727795"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "philipp.zabel@gmail.com",
        "time": "Mon Feb 12 00:53:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] SA1100 GPIO wrappers\n\nArch-neutral GPIO calls for SA-1100.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8a898f1c366c858f8dbcb667c1cfcc282b727795",
      "tree": "113a793365336c12272b4822e5ff819b175b9f6f",
      "parents": [
        "a31c4eea2127ee52b5c7c1befada4664963ad030"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "philipp.zabel@gmail.com",
        "time": "Mon Feb 12 00:53:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] PXA GPIO wrappers\n\nArch-neutral GPIO calls for PXA.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a31c4eea2127ee52b5c7c1befada4664963ad030",
      "tree": "dc459f1ddba26772c9faa26ac8cdef0c41afd300",
      "parents": [
        "3c729f1ecd23b86a2d6b211d646f57f9da8dfeb1"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:53:13 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] AT91 GPIO wrappers\n\nThis is a first cut at making the AT91 code use the generic GPIO calls.\n\nNote that the original AT91 GPIO calls merged the \"mux pin as GPIO\" and \"set\nGPIO direction\" functionality into one API call, contrary to what\u0027s specified\nas a cross-platform portable model.  So this involved a few non-inlinable\nfunctions.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3c729f1ecd23b86a2d6b211d646f57f9da8dfeb1",
      "tree": "4e07d1852a67d378a30d60892d93c4ceb5072041",
      "parents": [
        "4c20386c8d0719b42503efe65abe47ad3fb3d711"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:53:12 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] OMAP GPIO wrappers\n\nThis teaches OMAP how to implement the cross-platform GPIO interfaces.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4c20386c8d0719b42503efe65abe47ad3fb3d711",
      "tree": "9ec169c4c8548a9c2ac5c258c15020c346b969e1",
      "parents": [
        "9794f33ddedd878dd92fcf8b4834391840366919"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:53:11 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] GPIO core\n\nThis defines a simple and minimalist programming interface for GPIO APIs:\n\n  - Documentation/gpio.txt ... describes things (read it)\n\n  - include/asm-arm/gpio.h ... defines the ARM hook, which just punts\n    to \u003casm/arch/gpio.h\u003e for any implementation\n\n  - include/asm-generic/gpio.h ... implement \"can sleep\" variants as calling\n    the normal ones, for systems that don\u0027t handle i2c expanders.\n\nThe immediate need for such a cross-architecture API convention is to support\ndrivers that work the same on AT91 ARM and AVR32 AP7000 chips, which embed many\nof the same controllers but have different CPUs.  However, several other users\nhave been reported, including a driver for a hardware watchdog chip and some\nhandhelds.org multi-CPU button drivers.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27b0b2f44adffe0193a695bb528a83b550b8e54b",
      "tree": "fd7578afab2e9fa72e3f157f94c9dd73a8265678",
      "parents": [
        "9f57a54b6cf3f626334d97e93b5b917ad11e1efc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:53:02 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: remove the now unused kill_pg kill_pg_info and __kill_pg_info\n\nNow that I have changed all of the in-tree users remove the old version of\nthese functions.  This should make it clear to any out of tree users that they\nshould be using kill_pgrp kill_pgrp_info or __kill_pgrp_info instead.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f57a54b6cf3f626334d97e93b5b917ad11e1efc",
      "tree": "d00c59378853d36b9508708e2d2ee38269eeb018",
      "parents": [
        "41487c65bfcce9c8e4d123da1719fcfd8df6d4d0"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:53:02 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: remove now unused do_each_task_pid and while_each_task_pid\n\nNow that I have changed all of the users remove the old version of these\nfunctions.  This should be a clear hint to any out of tree users that they\nshould use do_each_pid_task and while_each_pid_task for new code.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab521dc0f8e117fd808d3e425216864d60390500",
      "tree": "f9d6449c4d8c9508fd43edfe845108043e1536b2",
      "parents": [
        "3e7cd6c413c9e6fbb5e1ee2acdadb4ababd2d474"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:53:00 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] tty: update the tty layer to work with struct pid\n\nOf kernel subsystems that work with pids the tty layer is probably the largest\nconsumer.  But it has the nice virtue that the assiation with a session only\nlasts until the session leader exits.  Which means that no reference counting\nis required.  So using struct pid winds up being a simple optimization to\navoid hash table lookups.\n\nIn the long term the use of pid_nr also ensures that when we have multiple pid\nspaces mixed everything will work correctly.\n\nSigned-off-by: Eric W. Biederman \u003ceric@maxwell.lnxi.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e7cd6c413c9e6fbb5e1ee2acdadb4ababd2d474",
      "tree": "de97d00794ee0c787b6c551a91e33fb1faa48caa",
      "parents": [
        "0475ac0845f9295bc5f69af45f58dff2c104c8d1"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:58 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: replace is_orphaned_pgrp with is_current_pgrp_orphaned\n\nEvery call to is_orphaned_pgrp passed in process_group(current) which is racy\nwith respect to another thread changing our process group.  It didn\u0027t bite us\nbecause we were dealing with integers and the worse we would get would be a\nstale answer.\n\nIn switching the checks to use struct pid to be a little more efficient and\nprepare the way for pid namespaces this race became apparent.\n\nSo I simplified the calls to the more specialized is_current_pgrp_orphaned so\nI didn\u0027t have to worry about making logic changes to avoid the race.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04a2e6a5cbf84e85fe86de0a18f6509b147e1d89",
      "tree": "67dd67d2c4c18e5c36654dfe569e3085bd262ba5",
      "parents": [
        "8d42db189ca99703f0f4f91c477cb54808c8eaaa"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:56 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] pid: make session_of_pgrp use struct pid instead of pid_t\n\nTo properly implement a pid namespace I need to deal exclusively in terms of\nstruct pid, because pid_t values become ambiguous.\n\nTo this end session_of_pgrp is transformed to take and return a struct pid\npointer.  To avoid the need to worry about reference counting I now require my\ncaller to hold the appropriate locks.  Leaving callers repsonsible for\nincreasing the reference count if they need access to the result outside of\nthe locks.\n\nSince session_of_pgrp currently only has one caller and that caller simply\nuses only test the result for equality with another process group, the locking\nchange means I don\u0027t actually have to acquire the tasklist_lock at all.\n\ntiocspgrp is also modified to take and release the lock.  The logic there is a\nlittle more complicated but nothing I won\u0027t need when I convert pgrp of a tty\nto a struct pid pointer.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cdc623300841bc8f1625c320d5a6cbc52c43c60d",
      "tree": "b9c8f56847eb78aa4d92e3948579be9d2f647b63",
      "parents": [
        "939b00df0306bc4b5cd25c3c3c78e89b91e72fc8"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:51 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] tty: make __proc_set_tty static\n\nThe aim of this patch set is to start wrapping up the struct pid conversions.\nAs such this patchset culminates with the removal of kill_pg, kill_pg_info,\n__kill_pg_info, do_each_task_pid, and while_each_task_pid.\n\nkill_proc, daemonize, and kernel_thread are still in my sights but there is\nstill work to get to them.\n\nThe first three are basic cleanups around disassociate_ctty, while working on\nconverting it I found several issues.  tty_old_pgrp can be a tricky concept to\nwrap your head around.\n\n 1 tty: Make __proc_set_tty static.\n 2 tty: Clarify disassociate_ctty\n 3 tty: Fix the locking for signal-\u003esession in disassociate_ctty\n\nThese just stop using the old helper functions.\n\n 4 signal: Use kill_pgrp not kill_pg in the sunos compatibility code.\n 5 signal: Rewrite kill_something_info so it uses newer helpers.\n\nThen the grind to convert the tty layer and all of it\u0027s helper functions to\nstruct pid.\n\n 6 pid: Make session_of_pgrp use struct pid instead of pid_t.\n 7 pid: Use struct pid for talking about process groups in exit.c\n 8 pid: Replace is_orphaned_pgrp with is_current_pgrp_orphaned\n 9 tty: Update the tty layer to work with struct pid.\n\nA final helper function update.\n\n10 pid: Replace do/while_each_task_pid with do/while_each_pid_task\n\nAnd the removal of the functions that are now unused.\n11 pid: Remove now unused do_each_task_pid and while_each_task_pid\n12 pid: Remove the now unused kill_pg kill_pg_info and __kill_pg_info\n\nAll of these should be fairly simple and to the point.\n\nThis patch:\n\nCurrently all users of __proc_set_tty are in tty_io.c so make the function\nstatic.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "939b00df0306bc4b5cd25c3c3c78e89b91e72fc8",
      "tree": "c251dca9f3ebbebfa1f40f39716423842b247742",
      "parents": [
        "b587b13a4f670ebae79ae6259cf44328455e4e69"
      ],
      "author": {
        "name": "Andries Brouwer",
        "email": "aeb@cwi.nl",
        "time": "Mon Feb 12 00:52:49 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] Minix V3 support\n\nThis morning I needed to read a Minix V3 filesystem, but unfortunately my\n2.6.19 did not support that, and neither did the downloaded 2.6.20rc4.\n\nFortunately, google told me that Daniel Aragones had already done the work,\npatch found at http://www.terra.es/personal2/danarag/\n\nUnfortunaly, looking at the patch was painful to my eyes, so I polished it\na bit before applying.  The resulting kernel boots, and reads the\nfilesystem it needed to read.\n\nSigned-off-by: Daniel Aragones \u003cdanarag@gmail.com\u003e\nSigned-off-by: Andries Brouwer \u003caeb@cwi.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b587b13a4f670ebae79ae6259cf44328455e4e69",
      "tree": "36e614fae95d8a2c888190d162e67ec95d144304",
      "parents": [
        "3925a5ce44330767f7f0de5c58c6a797009f0f75"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:52:48 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] SPI eeprom driver\n\nThis is adds a simple SPI EEPROM driver, providing access to the EEPROM\nthrough sysfs much like the I2C \"eeprom\" driver ...  except this driver\nsupports write access, and multiple EEPROM sizes.\n\nFrom: \"Tuppa, Walter\" \u003cwalter.tuppa@siemens.com\u003e\n\nSince I have EEPROMs on SPI with different address sizing, I made some\nchanges to your at25.c to support them.  Works perfectly.  (Also includes a\nsmall bugfix for the \"what size address\" test.)\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Walter Tuppa \u003cwalter.tuppa@siemens.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "802245611adea5e5877d8c5d9a20f94d8131bfdd",
      "tree": "de7ce4def3bb48c1125b0aaf505ec29df9924e42",
      "parents": [
        "0ffa0285052607513a29f529ddb5061c907fd8a6"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:52:46 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] SPI doc clarifications\n\nThis clarifies some aspects of the SPI programming interface, based on\nfeedback from Hans-Peter Nilsson.  The in-memory representation of words is\nright-aligned, so for example a twelve bit word is stored using sixteen bits\nwith four undefined bits in the MSB.  And controller drivers must reject\nprotocol tweaking modes they do not support.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ffa0285052607513a29f529ddb5061c907fd8a6",
      "tree": "d7072494d6d8005c60d42c1c841628c7d486dd9a",
      "parents": [
        "7f8c7619ea1ff5ab8e0b08c8120d629834ef4253"
      ],
      "author": {
        "name": "Hans-Peter Nilsson",
        "email": "hans-peter.nilsson@axis.com",
        "time": "Mon Feb 12 00:52:45 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] SPI cleanup() method param becomes non-const\n\nI\u0027d like to assign NULL to kfree()d members of a structure.  I can\u0027t do\nthat without ugly casting (see the PXA patch) when the structure pointed to\nis const-qualified.  I don\u0027t really see a reason why the cleanup method\nisn\u0027t allowed to alter the object it should clean up.  :-)\n\nNo, I didn\u0027t test the PXA patch, but I verified that the NULL-assignment\ndoesn\u0027t stop me from doing rmmod/insmodding my own spi_bitbang-based\ndriver.\n\nSigned-off-by: Hans-Peter Nilsson \u003chp@axis.com\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ddc1e9753106cedcca7944d2b068baa2e14640b1",
      "tree": "6482b83f8f8bf7b0bd017c8101b47492fcd5e3ba",
      "parents": [
        "14fd9b3f8a0a36e706d144efcd579805a99de594"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben@fluff.org",
        "time": "Mon Feb 12 00:52:43 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] spi: remove return in spi_unregister_driver()\n\nMake the spi_unregister_driver() code fit in with the rest of the header\nfile, and only do the action if the driver passed is non-NULL.\n\nThis also makes the code a line smaller.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b40ff4d729f4a7a9f832c67aa5de0dfa8ad45c0",
      "tree": "e5ee3959e846f220a4d6a96c241a201e459b1bbb",
      "parents": [
        "69c202afa8ad6d6c1c673d8f9d47b43a0a3604e5"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben@fluff.org",
        "time": "Mon Feb 12 00:52:41 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] spi: add spi_set_drvdata() and spi_get_drvdata()\n\nAdd wrappers for getting and setting the driver data using spi_device\ninstead of using dev_{get|set}_drvdata with \u0026spi-\u003edev, to mirror the\nplatform_{get|set}_drvdata.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69c202afa8ad6d6c1c673d8f9d47b43a0a3604e5",
      "tree": "a8f79c7911042c3cbc1b71e49e51f0c7ebf8055e",
      "parents": [
        "fdb3c18d639311287dc4675abe743847a1aa62a8"
      ],
      "author": {
        "name": "Andrea Paterniani",
        "email": "a.paterniani@swapp-eng.it",
        "time": "Mon Feb 12 00:52:39 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] SPI: Freescale iMX SPI controller driver (BIS+)\n\nAdd the SPI controller driver for Freescale i.MX(S/L/1).\nMain features summary:\n\n \u003e Per chip setup via board specific code and/or protocol driver.\n \u003e Per transfer setup.\n \u003e PIO transfers.\n \u003e DMA transfers.\n \u003e Managing of NULL tx / rx buffer for rd only / wr only transfers.\n\nThis patch replace patch-2.6.20-rc4-spi_imx with the following changes:\n \u003e Few cosmetic changes.\n \u003e Function map_dma_buffers now return 0 for success and -1 for failure.\n \u003e Solved a bug inside spi_imx_probe function (wrong error path).\n \u003e Solved a bug inside setup function (bad undo setup for max_speed_hz).\n \u003e For read-only transfers, always write zero bytes.\n\nThis is almost the same as the \u0027BIS\u0027 version sent by Andrea, except for\nupdating the \u0027DUMMY\u0027 byte so that read-only transfers shift out zeroes.\nThat part of the API changed recently, since some half duplex peripheral\nchips require that semantic.\n\nSigned-off-by: Andrea Paterniani \u003ca.paterniani@swapp-eng.it\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2869b23e4b95cbafffcd2fe110d77aff8c218405",
      "tree": "150d1be0ec223f8ab5309f5fdcb487b209441342",
      "parents": [
        "e13df2c58f8e8c72278b61e8f59de9a1403f9426"
      ],
      "author": {
        "name": "Tilman Schmidt",
        "email": "tilman@imap.cc",
        "time": "Mon Feb 12 00:52:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/gigaset: new M101 driver (v2)\n\nThis patch adds the line discipline based driver for the Gigaset M101\nwireless RS232 adapter. It also improves the documentation a bit.\n\nSigned-off-by: Tilman Schmidt \u003ctilman@imap.cc\u003e\nSigned-off-by: Hansjoerg Lipp \u003chjlipp@web.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb5857084c8d27764b842025e4c805b174e40cad",
      "tree": "4b684d31e295f81d23ed61e08466b3bfe875de10",
      "parents": [
        "944be0b224724fcbf63c3a3fe3a5478c325a6547"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Mon Feb 12 00:52:27 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] export ufs_fs.h to userspace\n\nWas ufs_fs.h purposefully not exported to userspace or did it just slip\nthrough the cracks ?  assuming the latter scenario, the attached patch touches\nup the relationship between ufs_fs.h and its sub headers (like ufs_fs_sb.h) so\nthat we can export it ...  the silo bootloader takes advantage of this header\nfor example.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Evgeniy Dushistov \u003cdushistov@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1e96b0310d70b72012b5ecde5e97b8262785aae",
      "tree": "45c507f1f55b991d2c6696c7585e0935adf0ef06",
      "parents": [
        "473e66fd24a230e03f6f164913bedb81c0ba052a"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Feb 12 00:52:20 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] lockdep: forward declare struct task_struct\n\n3117df0453828bd045c16244e6f50e5714667a8a causes this:\n\nIn file included from arch/s390/kernel/early.c:13:\ninclude/linux/lockdep.h:300: warning:\n\t\t\"struct task_struct\" declared inside parameter list\ninclude/linux/lockdep.h:300:\n\t\twarning: its scope is only this definition or\n\t\tdeclaration, which is probably not what you want\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3991d3bd1506391d8feec209b1d22ccb1c03a0bf",
      "tree": "b9a691fe6b0bc2bf3c98e64348472fa81de7ddab",
      "parents": [
        "bc1fc6d88c646ea071de34250552051a63000d70"
      ],
      "author": {
        "name": "Tomasz Kvarsin",
        "email": "kvarsin@gmail.com",
        "time": "Mon Feb 12 00:52:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] warning fix: unsigned-\u003esigned\n\nWhile compiling my code with -Wconversion using gcc-trunk, I always get a\nbunch of warrning from headers, here is fix for them:\n\n__getblk is alawys called with unsigned argument,\nbut it takes signed, the same story with __bread,__breadahead and so on.\n\nSigned-off-by: Tomasz Kvarsin\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb58b7316a99703afb8d076b0e5f3e1e387e4b30",
      "tree": "d2aabf3413fc3e94a6760c364caf0762915a6273",
      "parents": [
        "ea6f3281a145d16ed53e88b0627f78d5cde6068f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Feb 12 00:51:57 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:28 2007 -0800"
      },
      "message": "[PATCH] move remove_dquot_ref to dqout.c\n\nRemove_dquot_ref can move to dqout.c instead of beeing in inode.c under\n#ifdef CONFIG_QUOTA.  Also clean the resulting code up a tiny little bit by\ntesting sb-\u003edq_op earlier - it\u0027s constant over a filesystems lifetime.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae4472aa03d38b11f334dc0030b82e0c9f249af9",
      "tree": "dbcaa9f2d45ee0fdd306b0f5b602c86606e4b109",
      "parents": [
        "5be02f1d8af4c7baf3a5a31ab9c0cba9fdc52680"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Feb 12 00:51:52 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:28 2007 -0800"
      },
      "message": "[PATCH] QUOTA: Have \u003clinux/quota.h\u003e include \u003clinux/rwsem.h\u003e explicitly\n\nSince quota.h declares a R/W semaphore, it should include rwsem.h\nexplicitly.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5be02f1d8af4c7baf3a5a31ab9c0cba9fdc52680",
      "tree": "fc2c6e4080534093a01e3017711e2ee1b5ee1ab9",
      "parents": [
        "893de2dffb0923d9bdba4abd66afcec3cf9103ba"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Mon Feb 12 00:51:50 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:28 2007 -0800"
      },
      "message": "[PATCH] include/linux/kernel.h: Remove labs()\n\nRemove labs() since it is not used/needed.\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "33a266dda9fbbe72dd978a451a8ee33c59da5e9c",
      "tree": "7e3fa4100e436f12b4c0ed562dd1f6dc9ec84fd4",
      "parents": [
        "42da9cbd3eedde33a42acc2cb06f454814cf5de0"
      ],
      "author": {
        "name": "David Chinner",
        "email": "dgc@sgi.com",
        "time": "Mon Feb 12 00:51:41 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:27 2007 -0800"
      },
      "message": "[PATCH] Make BH_Unwritten a first class bufferhead flag V2\n\nCurrently, XFS uses BH_PrivateStart for flagging unwritten extent state in a\nbufferhead.  Recently, I found the long standing mmap/unwritten extent\nconversion bug, and it was to do with partial page invalidation not clearing\nthe unwritten flag from bufferheads attached to the page but beyond EOF.  See\nhere for a full explaination:\n\nhttp://oss.sgi.com/archives/xfs/2006-12/msg00196.html\n\nThe solution I have checked into the XFS dev tree involves duplicating code\nfrom block_invalidatepage to clear the unwritten flag from the bufferhead(s),\nand then calling block_invalidatepage() to do the rest.\n\nChristoph suggested that this would be better solved by pushing the unwritten\nflag into the common buffer head flags and just adding the call to\ndiscard_buffer():\n\nhttp://oss.sgi.com/archives/xfs/2006-12/msg00239.html\n\nThe following patch makes BH_Unwritten a first class citizen.\n\nSigned-off-by: Dave Chinner \u003cdgc@sgi.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22cd25ed31bbf849acaa06ab220dc4f526153f13",
      "tree": "bffc0fa86b3734d89afb3eccb19249663de34ce2",
      "parents": [
        "e0dc0d8f4a327d033bfb63d43f113d5f31d11b3c"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Feb 12 00:51:38 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:27 2007 -0800"
      },
      "message": "[PATCH] Add NOPFN_REFAULT result from vm_ops-\u003enopfn()\n\nAdd a NOPFN_REFAULT return code for vm_ops-\u003enopfn() equivalent to\nNOPAGE_REFAULT for vmops-\u003enopage() indicating that the handler requests a\nre-execution of the faulting instruction\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0dc0d8f4a327d033bfb63d43f113d5f31d11b3c",
      "tree": "7af435f3caacd18eef6e30577e61d62e0afbe4d2",
      "parents": [
        "2ca48ed5cc5935cbd2a6f5d14fecd4ddbbdb4315"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Feb 12 00:51:36 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:27 2007 -0800"
      },
      "message": "[PATCH] add vm_insert_pfn()\n\nAdd a vm_insert_pfn helper, so that -\u003efault handlers can have nopfn\nfunctionality by installing their own pte and returning NULL.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "022ae414daadb718130679e4eacc105521f11ec7",
      "tree": "37f55e86e79d1847d7a6f8c9fce9e959dae3f5a5",
      "parents": [
        "045236ab190636c989ae8198eca37cfbafc1430b"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 12 15:49:57 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 12 15:49:57 2007 +0100"
      },
      "message": "[S390] remove __io_virt and mmiowb.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "4dd3cc5caf41d55cd5e55f32902c8a2ad3296e19",
      "tree": "458be42776f00233f99fa270b8f249f6a1c95c5c",
      "parents": [
        "0ec67667ab414b18a0518d5b11c842fd342e9cb1"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Mon Feb 12 15:47:18 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 12 15:47:18 2007 +0100"
      },
      "message": "[S390] cio: Fixup interface for setting options on ccw devices.\n\nThe current ccw_device_set_options() sets a specified mask of options\nand clears those not specified, but there is no way to find out which\noptions have already been set.\n\nIn order to fix this up, introduce the following interface changes:\n\nccw_device_set_options() now only sets the specified bits, but does\nnot clear those that are not specified.\n\nccw_device_clear_options() clears the specified bits.\n\nccw_device_set_options_mask() provides the old semantics (setting only\nthe specified bits and clearing the others).\n\nDevice drivers now work as expected. qdio has been adapted.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "509cb37e173d4e39cec47238397e91b718730794",
      "tree": "c841817718d22ec410162c3c473fac42458886ad",
      "parents": [
        "9ede209e83693cf3f6b64f61ab4b65f2f809cb50"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Feb 12 00:08:03 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 20:06:39 2007 -0800"
      },
      "message": "[PATCH] one more iomap s390 build fix\n\nCommit 9ac7849e35f705830f7b016ff272b0ff1f7ff759 causes this on S390:\n\n  drivers/built-in.o: In function `dmam_noncoherent_release\u0027:\n    dma-mapping.c:(.text+0x1515c): undefined reference to `dma_free_noncoherent\u0027\n  drivers/built-in.o: In function `dmam_free_noncoherent\u0027:\n    undefined reference to `dma_free_noncoherent\u0027\n  drivers/built-in.o: In function `dmam_alloc_noncoherent\u0027:\n    undefined reference to `dma_alloc_noncoherent\u0027\n  make: *** [.tmp_vmlinux1] Error 1\n\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aaf1228ddfb44f04c87d1e7dfc5ccffdba74363d",
      "tree": "fb57e223b97e52e78f88f87e7aefdb5a557985eb",
      "parents": [
        "783660b2f60418144e168ab75a06786f9695fc70"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jan 19 11:30:16 2007 +1100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Sun Feb 11 23:14:44 2007 +0100"
      },
      "message": "cfq-iosched: remove cfq_io_context last_queue\n\nIt hasn\u0027t been used for a while, kill it off and remove the old\nif 0 code chunk.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d68798374bcf5cd4a19105b86d96121651b3c8cb",
      "tree": "5e7432adf2b61f1497a4c3138c969e8664c54b6e",
      "parents": [
        "412ecd7751a2653ab17df39a1dc3565a548633fd",
        "2a598df595d33be0f12e37ef5df75eff13511d07"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:50:24 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:50:24 2007 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  Input: remove scan_keyb driver\n  Input: i8042 - fix AUX IRQ delivery check\n  Input: wistron - add support for Fujitsu-Siemens Amilo D88x0\n  Input: inport - use correct config option for ATIXL\n  Input: HIL - handle erros from input_register_device()\n  Input: tsdev - schedule removal\n  Input: add Atlas button driver\n  Input: ads7846 - be more compatible with the hwmon framework\n  Input: ads7846 - detect pen up from GPIO state\n  Input: ads7846 - select correct SPI mode\n  Input: ads7846 - switch to using hrtimer\n  Input: ads7846 - optionally leave Vref on during differential measurements\n  Input: ads7846 - pluggable filtering logic\n  Input: gpio-keys - keyboard driver for GPIO buttons\n  Input: hid-ff - add support for Logitech Momo racing wheel\n  Input: i8042 - really suppress ACK/NAK during panic blink\n  Input: pc110pad - return proper error\n"
    },
    {
      "commit": "5f0b1437e0708772b6fecae5900c01c3b5f9b512",
      "tree": "bcd923e305345178bc162ed8560d56a3af197224",
      "parents": [
        "574009c1a895aeeb85eaab29c235d75852b09eb8",
        "81b7bbd1932a04869d4c8635a75222dfc6089f96"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:44:25 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:44:25 2007 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (97 commits)\n  [SCSI] zfcp: removed wrong comment\n  [SCSI] zfcp: use of uninitialized variable\n  [SCSI] zfcp: Invalid locking order\n  [SCSI] aic79xx: use dma_get_required_mask()\n  [SCSI] aic79xx: fix bracket mismatch in unused macro\n  [SCSI] BusLogic: Replace \u0027boolean\u0027 by \u0027bool\u0027\n  [SCSI] advansys: clean up warnings\n  [SCSI] 53c7xx: brackets fix in uncompiled code\n  [SCSI] nsp_cs: remove old scsi code\n  [SCSI] aic79xx: make ahd_match_scb() static\n  [SCSI] DAC960: kmalloc-\u003ekzalloc/Casting cleanups\n  [SCSI] scsi_kmap_atomic_sg(): check that local irqs are disabled\n  [SCSI] Buslogic: local_irq_disable() is redundant after local_irq_save()\n  [SCSI] aic94xx: update for v28 firmware\n  [SCSI] scsi_error: Fix lost EH commands\n  [SCSI] aic94xx: Add default bus reset handler\n  [SCSI] aic94xx: Remove TMF result code munging\n  [SCSI] libsas: Add an LU reset mechanism to the error handler\n  [SCSI] libsas: Don\u0027t BUG when connecting two expanders via wide port\n  [SCSI] st: fix Tape dies if wrong block size used, bug 7919\n  ...\n"
    },
    {
      "commit": "574009c1a895aeeb85eaab29c235d75852b09eb8",
      "tree": "350208723aea3fa62927e5fed6c07567cee9f930",
      "parents": [
        "a727fea99bf4b2addcd64c596735148117a7b37f",
        "e692eb30ffc2b99e62f766f9958f46dfdc1013cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:40:04 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:40:04 2007 -0800"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus\n\n* \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus:\n  [MIPS] signal: do not inline handle_signal()\n  [MIPS] signal: do not use save_static_function() anymore\n  [MIPS] signal32: no need to save c0_status register in setup_sigcontext32()\n  [MIPS] signal32: reduce {setup,restore}_sigcontext32 sizes\n  [MIPS] signal: factorize debug code\n  [MIPS] signal: test return value of install_sigtramp()\n  [MIPS] signal32: remove duplicate code\n  [MIPS] signal: clean up sigframe structure\n  [MIPS] signal: do not inline functions in signal-common.h\n  [MIPS] signals: reduce {setup,restore}_sigcontext sizes\n  [MIPS] Fix warning in get_user when fetching pointer object from userspace.\n  [MIPS] Fix eth2 platform device id for jaguar_atx and ocelot_3 platforms\n  [MIPS] JMR3927 and RBTX49x7 support little endian\n  [MIPS] RBTX49x7: declare prom_getcmdline()\n  [MIPS] RTLX: Sprinkle device model code into code to make udev happier.\n  [MIPS] VPE: Sprinkle device model code into code to make udev happier.\n"
    },
    {
      "commit": "cb18eccff48ef3986d1072964590bce6fec705fb",
      "tree": "777fb1d15e0281341e1e02c9803d989538d346f2",
      "parents": [
        "c827ba4cb49a30ce581201fd0ba2be77cde412c7",
        "5ef213f6842277ee1df5659f59fac0ffc9beb411"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:38:13 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:38:13 2007 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (45 commits)\n  [IPV4]: Restore multipath routing after rt_next changes.\n  [XFRM] IPV6: Fix outbound RO transformation which is broken by IPsec tunnel patch.\n  [NET]: Reorder fields of struct dst_entry\n  [DECNET]: Convert decnet route to use the new dst_entry \u0027next\u0027 pointer\n  [IPV6]: Convert ipv6 route to use the new dst_entry \u0027next\u0027 pointer\n  [IPV4]: Convert ipv4 route to use the new dst_entry \u0027next\u0027 pointer\n  [NET]: Introduce union in struct dst_entry to hold \u0027next\u0027 pointer\n  [DECNET]: fix misannotation of linkinfo_dn\n  [DECNET]: FRA_{DST,SRC} are le16 for decnet\n  [UDP]: UDP can use sk_hash to speedup lookups\n  [NET]: Fix whitespace errors.\n  [NET] XFRM: Fix whitespace errors.\n  [NET] X25: Fix whitespace errors.\n  [NET] WANROUTER: Fix whitespace errors.\n  [NET] UNIX: Fix whitespace errors.\n  [NET] TIPC: Fix whitespace errors.\n  [NET] SUNRPC: Fix whitespace errors.\n  [NET] SCTP: Fix whitespace errors.\n  [NET] SCHED: Fix whitespace errors.\n  [NET] RXRPC: Fix whitespace errors.\n  ...\n"
    },
    {
      "commit": "c827ba4cb49a30ce581201fd0ba2be77cde412c7",
      "tree": "b573020e4d30ecdf69b22fcd1ced3dbb0e024ed3",
      "parents": [
        "fdba0f2da4b1db682b829b76302b2f25c376051c",
        "784020fb950741cbb7390c6b622321da626fb1e8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:37:45 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:37:45 2007 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  [SPARC64]: Update defconfig.\n  [SPARC64]: Add PCI MSI support on Niagara.\n  [SPARC64] IRQ: Use irq_desc-\u003echip_data instead of irq_desc-\u003ehandler_data\n  [SPARC64]: Add obppath sysfs attribute for SBUS and PCI devices.\n  [PARTITION]: Add whole_disk attribute.\n"
    },
    {
      "commit": "fdba0f2da4b1db682b829b76302b2f25c376051c",
      "tree": "38fab7e755e48ecedb8086ad42a6de9c9516e5e2",
      "parents": [
        "23db764d3db5a4bb1e104ad9310e5dc18e4ffa1b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Feb 11 18:20:38 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] add missing io...._rep() on sparc32\n\nsame as on sparc64\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "23db764d3db5a4bb1e104ad9310e5dc18e4ffa1b",
      "tree": "d8a944f4e0ac27adda477295886cfbe08f0f73cb",
      "parents": [
        "5ea8176994003483a18c8fed580901e2125f8a83"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Feb 11 18:15:29 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] Switch s390 to NO_IOMEM\n\nMartin Schwidefsky wrote:\n  \"s390 does not even need (in|out)b(_p|).  I wondered what else from\n   io.h do we not need.  The answer is: almost nothing.  With the devres\n   patch from Al and the dma-mapping patch from Heiko we can get rid of\n   iomem and all associated definitions.\"\n\nSo we\u0027ll just need to replace NO_IOPORT with NO_IOMEM in Kconfig and\nkill arch/s390/mm/ioremap.c.\n\nBTW, there\u0027s an annoying bit of junk in there - IO_SPACE_LIMIT.  We\nonly need it for /proc/ioports, which AFAICS shouldn\u0027t even be there\non s390 (or uml).  OTOH, removing that thing would mean a user-visible\nchange - we go from \"empty file in /proc\" to \"no such file in /proc\"...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ea8176994003483a18c8fed580901e2125f8a83",
      "tree": "0712ec9cd3384fbd897eb454ce9c0f907289ab51",
      "parents": [
        "2835fdfa4a7f1400986d76d054237809a9392406"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Feb 11 15:41:31 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] sort the devres mess out\n\n* Split the implementation-agnostic stuff in separate files.\n* Make sure that targets using non-default request_irq() pull\n  kernel/irq/devres.o\n* Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;\n  allow architectures to turn them off (we needed these symbols anyway for\n  dependencies of quite a few drivers).\n* protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d88e661fb9d28f1de799d524a8625b35eee94bbb",
      "tree": "2013e5e480993eb50a45fba191850a90119df6cf",
      "parents": [
        "c67687f36acd5e9f387474547143c12fc9ec2737"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Fri Feb 09 18:13:42 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] fix misannotation of linkinfo_dn\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c70555b051f2a32bf94a7e1c75b6b6759031b989",
      "tree": "b0ab2e8cd1402e98a85b4303e5f14f39a3e71fc2",
      "parents": [
        "d5698c28b6e4711e4747bf155f69936208d60e28"
      ],
      "author": {
        "name": "Alexandre Bounine",
        "email": "Alexandre.Bounine@tundra.com",
        "time": "Sat Feb 10 01:46:47 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] rapidio: fix multi-switch enumeration\n\nThis patch contains two fixes for RapisIO enumeration logic:\n\n1. Fix enumeration in configurations with multiple switches. The patch adds:\n\n   a. Enumeration of an empty switch.  Empty switch is a switch that\n      does not have any endpoint devices attached to it (except host device\n      or previous switch in a chain).  New code assigns a phony destination\n      ID associated with the switch and sets up corresponding routes.\n\n   b. Adds a second pass to the enumeration to setup routes to\n      devices discovered after switch was scanned.\n\n2. Fix enumeration failure when riohdid parameter has non-zero value.\n   Current version fails to setup response path to the host when it has\n   destination ID other that 0.\n\nSigned-off-by: Alexandre Bounine \u003calexandreb@tundra.com\u003e\nAcked-by: Matt Porter \u003cmporter@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b98d11b40f03382918796f3c5c936d5495d20a4",
      "tree": "616b7260196c9bd0eaf208ef8fab91fcf9efcece",
      "parents": [
        "18f705f49a5b19206233f7cef8f869ce7291f8c8"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Feb 10 01:46:45 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] ifdef -\u003erchar, -\u003ewchar, -\u003esyscr, -\u003esyscw from task_struct\n\nThey are fat: 4x8 bytes in task_struct.\nThey are uncoditionally updated in every fork, read, write and sendfile.\nThey are used only if you have some \"extended acct fields feature\".\n\nAnd please, please, please, read(2) knows about bytes, not characters,\nwhy it is called \"rchar\"?\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Jay Lan \u003cjlan@engr.sgi.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c75fb88dbcc470e6041a20b1457b4835b9a0a48a",
      "tree": "efe63dd4feaccc0007c9dccadec057c0bca7d5d9",
      "parents": [
        "aa0f030374228407bc4e3f5482eeab787ba53c8a"
      ],
      "author": {
        "name": "Pavel Roskin",
        "email": "proski@gnu.org",
        "time": "Sat Feb 10 01:46:37 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] Fix sparse annotation of spin unlock macros in one case\n\nSMP systems without premption and spinlock debugging enabled use unlock\nmacros that don\u0027t tell sparse that the lock is being released.  Add sparse\nannotations in this case.\n\nSigned-off-by: Pavel Roskin \u003cproski@gnu.org\u003e\nAcked-by: 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": "b385a144ee790f00e8559bcb8024d042863f9be1",
      "tree": "c2f2df78805fe8eff006716cee7b8fa8010d3b62",
      "parents": [
        "521dae191e5ba9362152da9fd3a12203e087df83"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Sat Feb 10 01:46:25 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:06 2007 -0800"
      },
      "message": "[PATCH] Replace regular code with appropriate calls to container_of()\n\nReplace a small number of expressions with a call to the \"container_of()\"\nmacro.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "521dae191e5ba9362152da9fd3a12203e087df83",
      "tree": "7ff727d8ae03026fe2026a1ab0426c55cc1f0cc0",
      "parents": [
        "5b0a2075adb04846870a7fc1e62b08a532054ba6"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Feb 10 01:46:24 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:05 2007 -0800"
      },
      "message": "[PATCH] cleanup include/linux/reiserfs_xattr.h\n\n- #ifdef guard this header for multiple inclusion\n- adjust the #include\u0027s to what is actually required by this header\n- remove an unneeded #ifdef\n- #endif comments\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5b0a2075adb04846870a7fc1e62b08a532054ba6",
      "tree": "fc877f8acfe582e2b096ae7d699d34e160b8a8e6",
      "parents": [
        "842f968f3fcdc475c95ec76a03b29c5147e87b54"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Feb 10 01:46:24 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:05 2007 -0800"
      },
      "message": "[PATCH] cleanup include/linux/xattr.h\n\n- reduce the userspace visible part\n- fix the in-kernel compilation\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "82ddcb040570411fc2d421d96b3e69711c670328",
      "tree": "fb344f5cf69968cef3739d437de97a86817c2219",
      "parents": [
        "e3e8a75d2acfc61ebf25524666a0a2c6abb0620c"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Sat Feb 10 01:46:20 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:35 2007 -0800"
      },
      "message": "[PATCH] extend the set of \"__attribute__\" shortcut macros\n\nExtend the set of \"__attribute__\" shortcut macros, and remove identical\n(and now superfluous) definitions from a couple of source files.\n\nbased on a page at robert love\u0027s blog:\n\n\thttp://rlove.org/log/2005102601\n\nextend the set of shortcut macros defined in compiler-gcc.h with the\nfollowing:\n\n#define __packed                       __attribute__((packed))\n#define __weak                         __attribute__((weak))\n#define __naked                        __attribute__((naked))\n#define __noreturn                     __attribute__((noreturn))\n#define __pure                         __attribute__((pure))\n#define __aligned(x)                   __attribute__((aligned(x)))\n#define __printf(a,b)                  __attribute__((format(printf,a,b)))\n\nOnce these are in place, it\u0027s up to subsystem maintainers to decide if they\nwant to take advantage of them.  there is already a strong precedent for\nusing shortcuts like this in the source tree.\n\nThe ones that might give people pause are \"__aligned\" and \"__printf\", but\nshortcuts for both of those are already in use, and in some ways very\nconfusingly.  note the two very different definitions for a macro named\n\"ALIGNED\":\n\n  drivers/net/sgiseeq.c:#define ALIGNED(x) ((((unsigned long)(x)) + 0xf) \u0026 ~(0xf))\n  drivers/scsi/ultrastor.c:#define ALIGNED(x) __attribute__((aligned(x)))\n\nalso:\n\n  include/acpi/platform/acgcc.h:\n    #define ACPI_PRINTF_LIKE(c) __attribute__ ((__format__ (__printf__, c, c+1)))\n\nGiven the precedent, then, it seems logical to at least standardize on a\nconsistent set of these macros.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e3e8a75d2acfc61ebf25524666a0a2c6abb0620c",
      "tree": "bd3d3e57f7b9084544155ac562f4456693e25e55",
      "parents": [
        "cefc8be82403cfc4325e7b9b063f77dc0f34e19e"
      ],
      "author": {
        "name": "Kirill Korotaev",
        "email": "dev@sw.ru",
        "time": "Sat Feb 10 01:46:19 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:34 2007 -0800"
      },
      "message": "[PATCH] Extract and use wake_up_klogd()\n\nRemove hack with printing space to wake up klogd.  Use explicit\nwake_up_klogd().\n\nSee earlier discussion\nhttp://groups.google.com/group/fa.linux.kernel/browse_frm/thread/75f496668409f58d/1a8f28983a51e1ff?lnk\u003dst\u0026q\u003dwake_up_klogd+group%3Afa.linux.kernel\u0026rnum\u003d2#1a8f28983a51e1ff\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c530cba649692512070e8c0131ba3eccade09269",
      "tree": "874a04352184a5915fa3eda929d73954ba665dd2",
      "parents": [
        "731b9a549882c76189baafccbd068d5785ea2a82"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Sat Feb 10 01:46:17 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:34 2007 -0800"
      },
      "message": "[PATCH] Remove the last reference to rwlock_is_locked() macro.\n\nRemove the lone, remaining reference to the long-deceased\nrwlock_is_locked() macro.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nCc: 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": "bfb58478fe2f8cbbb776d910ff3549515e3c8f4f",
      "tree": "5ec3b254051c2eb007674454698036ec6bbd3e08",
      "parents": [
        "a9cccd34372f7075e8746395609bc78f0fbaf204"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Feb 10 01:46:06 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:34 2007 -0800"
      },
      "message": "[PATCH] cleanup linux/byteorder/swabb.h\n\n- no longer a userspace header\n- add #include \u003clinux/types.h\u003e for in-kernel compilation\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9cccd34372f7075e8746395609bc78f0fbaf204",
      "tree": "181ff18736a198222561731ca472920b8631c95a",
      "parents": [
        "482120084d843d4cbb7ff3eb84510a1471130ce0"
      ],
      "author": {
        "name": "Matthias Fuchs",
        "email": "matthias.fuchs@esd-electronics.com",
        "time": "Sat Feb 10 01:46:05 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:33 2007 -0800"
      },
      "message": "[PATCH] serial: support for new board\n\nAdd support for the CPCI-ASIO4 quad port CompactPCI UART board from\nelectronic system design gmbh.\n\nSigned-off-by: Matthias Fuchs \u003cmatthias.fuchs@esd-electronics.com\u003e\nCc: 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": "482120084d843d4cbb7ff3eb84510a1471130ce0",
      "tree": "22943ce8e09319530a1acf84a397a7b1f6dbea6f",
      "parents": [
        "a21217daae8ce6e841e33d4a2bb24026723cb21d"
      ],
      "author": {
        "name": "Thomas Hoehn",
        "email": "thomas.hoehn@avocent.com",
        "time": "Sat Feb 10 01:46:05 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:33 2007 -0800"
      },
      "message": "[PATCH] Perle multimodem card (PCI-RAS) detection\n\nGet the Perle quad-modem PCI card (PCI-RAS4) detected by serial driver.  It\nmay also get the PCI-RAS8 running, but can\u0027t guarantee as I didn\u0027t had one for\ntesting.\n\nSigned-off-by: Thomas Hoehn \u003cthomas.hoehn@avocent.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7be2c7c96aff2871240d61fef508c41176c688b5",
      "tree": "37d39d2869b99021d0157f2ac3982a03901e0943",
      "parents": [
        "f1f8810cf48dd88ee70e974924f2dd76e5669dd5"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Sat Feb 10 01:46:02 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:32 2007 -0800"
      },
      "message": "[PATCH] RTC framework driver for CMOS RTCs\n\nThis is an \"RTC framework\" driver for the \"CMOS\" RTCs which are standard on\nPCs and some other platforms.  That\u0027s MC146818 compatible silicon.\nAdvantages of this vs.  drivers/char/rtc.c (use one _or_ the other, only\none will be able to claim the RTC irq) include:\n\n - This leverages both the new RTC framework and the driver model; both\n   PNPACPI and platform device modes are supported.  (A separate patch\n   creates a platform device on PCs where PNPACPI isn\u0027t configured.)\n\n - It supports common extensions like longer alarms.  (A separate patch\n   exports that information from ACPI through platform_data.)\n\n - Likewise, system wakeup events use \"real driver model support\", with\n   policy control via sysfs \"wakeup\" attributes and and using normal rtc\n   ioctls to manage wakeup.  (Patch in the works.  The ACPI hooks are\n   known; /proc/acpi/alarm can vanish.  Making it work with EFI will\n   be a minor challenge to someone with e.g. a MiniMac.)\n\nIt\u0027s not yet been tested on non-x86 systems, without ACPI, or with HPET.\nAnd the RTC framework will surely have teething pains on \"mainstream\"\nPC-based systems (though must embedded Linux systems use it heavily), not\nlimited to sorting out the \"/dev/rtc0\" issue (udev easily tweaked).  Also,\nthe ALSA rtctimer code doesn\u0027t use the new RTC API.\n\nOtherwise, this should be a no-known-regressions replacement for the old\ndrivers/char/rtc.c driver, and should help the non-embedded distros (and\nthe new timekeeping code) start to switch to the framework.\n\nNote also that any systems using \"rtc-m48t86\" are candidates to switch over\nto this more functional driver; the platform data is different, and the way\nbytes are read is different, but otherwise those chips should be compatible.\n\n[akpm@osdl.org: sparc32 fix]\n[akpm@osdl.org: sparc64 fix]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Woody Suwalski \u003cwoodys@xandros.com\u003e\nCc: Alessandro Zummo \u003calessandro.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d4d23add3abcd18d8021b99f230df608ccb2f007",
      "tree": "756c5a7d21a9f5a25f10bfcec40c01aecc596c2f",
      "parents": [
        "72fd4a35a824331d7a0f4168d7576502d95d34b3"
      ],
      "author": {
        "name": "Kyle McMartin",
        "email": "kyle@parisc-linux.org",
        "time": "Sat Feb 10 01:46:00 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:32 2007 -0800"
      },
      "message": "[PATCH] Common compat_sys_sysinfo\n\nI noticed that almost all architectures implemented exactly the same\nsys32_sysinfo...  except parisc, where a bug was to be found in handling of\nthe uptime.  So let\u0027s remove a whole whack of code for fun and profit.\nCribbed compat_sys_sysinfo from x86_64\u0027s implementation, since I figured it\nwould be the best tested.\n\nThis patch incorporates Arnd\u0027s suggestion of not using set_fs/get_fs, but\ninstead extracting out the common code from sys_sysinfo.\n\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "72fd4a35a824331d7a0f4168d7576502d95d34b3"
}
