)]}'
{
  "log": [
    {
      "commit": "dd287796d608fcdc3fe5e8fdb5bf762a8f1bc32a",
      "tree": "84be163fdc5fe36eb8d3f1aa5e60bfd1d794c641",
      "parents": [
        "41c28ff1635e71af072c4711ff5fadd5855d48e7"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Mar 23 03:00:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:16 2006 -0800"
      },
      "message": "[PATCH] pause_on_oops command line option\n\nAttempt to fix the problem wherein people\u0027s oops reports scroll off the screen\ndue to repeated oopsing or to oopses on other CPUs.\n\nIf this happens the user can reboot with the `pause_on_oops\u003d\u003cseconds\u003e\u0027 option.\nIt will allow the first oopsing CPU to print an oops record just a single\ntime.  Second oopsing attempts, or oopses on other CPUs will cause those CPUs\nto enter a tight loop until the specified number of seconds have elapsed.\n\nThe patch implements the infrastructure generically in the expectation that\narchitectures other than x86 will find it useful.\n\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "41c28ff1635e71af072c4711ff5fadd5855d48e7",
      "tree": "821a819a43b55d610d862e31b7312b6260311239",
      "parents": [
        "772a0dc5d2103baff2f15c2668930bcd37add777"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Mar 23 03:00:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:16 2006 -0800"
      },
      "message": "[PATCH] kill _INLINE_\n\nThis patch removes all occurances of _INLINE_ in the kernel.\n\nWith the exception of tty_flip.h, I\u0027ve simply removed the inline\u0027s since\ngcc should know best which functions to be inlined.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "772a0dc5d2103baff2f15c2668930bcd37add777",
      "tree": "d1f9a8e1b676e7e018edc926895b677a65a89d6a",
      "parents": [
        "91368d73e4b60d577ad171e5bd315b564265fcdb"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Mar 23 03:00:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:16 2006 -0800"
      },
      "message": "[PATCH] notifier: profile.h forward decl fix\n\nDeclarations use struct notifier_block on both legs of the ifdef, so move the\nnotifier_block forward declaration outside the ifdef.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "66d2173053f64121f8dc69a1cf85972e37e1ee75",
      "tree": "43b67d02627e22c05e607eb9c04d03ce89751121",
      "parents": [
        "a7ccf007189aa4401695e3105b00d9429f836b46"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Mar 23 03:00:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:15 2006 -0800"
      },
      "message": "[PATCH] Extract inode_inc_link_count(), inode_dec_link_count()\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6b9438e1323a2be10dcc039f6321e7ca18b9459e",
      "tree": "9d84b6f39a2a586c14b2932eda5817cae8ce5b57",
      "parents": [
        "f82945dff51ff7b33f69cb45a8342b936e966f7f"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Thu Mar 23 03:00:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:15 2006 -0800"
      },
      "message": "[PATCH] fat_lock is used as a mutex, convert it to using the new mutex primitive\n\nThe fat code uses the fat_lock always in a mutex way (taking and releasing\nthe lock in the same function), the patch below converts it into the new\nmutex primitive.  Please consider this patch for the code.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nAcked-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "81861d78c9edf9a9b03a9ba1f5b242d658f16832",
      "tree": "9bd32a48b9869fb809c894e560bb9ee807cf7ad1",
      "parents": [
        "1e7933defd0fce79b2d8ecdbc7ca37fed0c188ed"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:14 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: serial -\u003eport_write_mutex\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e7933defd0fce79b2d8ecdbc7ca37fed0c188ed",
      "tree": "a5dffed9e912f80c452a809cd4405d2799e27067",
      "parents": [
        "8e3f90459b7052c31a9669417b837fb14aa6d313"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:14 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: UDF\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8e3f90459b7052c31a9669417b837fb14aa6d313",
      "tree": "f6903acee9791a46da376fffb03bdabf511120d0",
      "parents": [
        "97461518610fb1679f67333bb699bb81136e49fe"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:14 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: NCPFS\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "97461518610fb1679f67333bb699bb81136e49fe",
      "tree": "483fcaf10744a96ad9fced97910fa75610c3fcdb",
      "parents": [
        "7bf6d78dd93ccc52cd2cac5066c4b84834e4f1f2"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Thu Mar 23 03:00:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:14 2006 -0800"
      },
      "message": "[PATCH] convert ext3\u0027s truncate_sem to a mutex\n\next3\u0027s truncate_sem is always released in the same function it\u0027s taken\nand it otherwise is a mutex as well..\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "82d4dc5adb0055393248ad4ab8de392fac708a12",
      "tree": "9827f519dc04c76138fac0ee90d1cc34ac9af24b",
      "parents": [
        "f85221dd74f2708b78a2aa54de59944e44206d0e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:13 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: drivers/block/nbd.c\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Clements \u003cPaul.Clements@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f85221dd74f2708b78a2aa54de59944e44206d0e",
      "tree": "f9e9710f78bf56515b04101bb40087b50e4bfeb6",
      "parents": [
        "0ac1759abc69fb62438c30a7e422f628a1120d67"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:12 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: drivers/block/loop.c\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0ac1759abc69fb62438c30a7e422f628a1120d67",
      "tree": "953fd417cc63bae48245ab03c04123a45e21125e",
      "parents": [
        "7cf34c761db8827818a27e23c50756f8b821a9b0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:12 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: fs/seq_file.c\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7a7d1cf95408863a657035701606b13644c9f55e",
      "tree": "7eaee4f3221aabcac2f57fb0295dd1e4763a1e8c",
      "parents": [
        "2c68ee754c40099c59828e59618a54726f76126a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:12 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: kprobes\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2c68ee754c40099c59828e59618a54726f76126a",
      "tree": "b656a0caa9b31749b5b6f9a3f7a1f3ffc482552c",
      "parents": [
        "f24075bd0c1cd1cc2cf86d394f960aa0401de573"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Thu Mar 23 03:00:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:12 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: jbd, j_checkpoint_mutex\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f24075bd0c1cd1cc2cf86d394f960aa0401de573",
      "tree": "609ad9884e43a8bb1ba5834996955a06bef66fa2",
      "parents": [
        "a11f3a0574a5734db3e5de38922430d005d35118"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:12 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: iprune\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a11f3a0574a5734db3e5de38922430d005d35118",
      "tree": "2f332f623463c5909dc37d20cbf44421854f775a",
      "parents": [
        "144efe3e3e5ad57af549bf800fa4560d7c74e9fe"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Thu Mar 23 03:00:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:12 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: vfs_rename_mutex\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "70522e121a521aa09bd0f4e62e1aa68708b798e1",
      "tree": "1233412da73361b48ed01290a33ab7c90e36359a",
      "parents": [
        "d4f9af9dac4ecb75818f909168f87b441cc95653"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:11 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: tty\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d4f9af9dac4ecb75818f909168f87b441cc95653",
      "tree": "c5b0ccf7705b6ef0739fd5af64cf48c092760013",
      "parents": [
        "d3be915fc5e7d19a2283ad9b0fe0782a74675d0a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:11 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: inotify\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: John McCutchan \u003cttb@tentacle.dhs.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nAcked-by: Robert Love \u003crml@novell.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d3be915fc5e7d19a2283ad9b0fe0782a74675d0a",
      "tree": "e03647affdee4e72dbff4a5da55bcf32bfa65901",
      "parents": [
        "c039e3134ae62863bbc8e8429b29e3c43cf21b2a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:11 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: quota\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c039e3134ae62863bbc8e8429b29e3c43cf21b2a",
      "tree": "b9bbf4fda0844e3173bf10a5bffbaaec94fb4246",
      "parents": [
        "6f87f0deebaff2716a3ce9232f948d702690562a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Thu Mar 23 03:00:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:11 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: blockdev #2\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "804f1594cc3deb161e531a43d90c501f0db2635a",
      "tree": "81f7a7cea8dbf671c733df379c6582e36459e8da",
      "parents": [
        "6a2900b67652421b51fe25e4b86ecfec742b1f30"
      ],
      "author": {
        "name": "Kyle McMartin",
        "email": "kyle@parisc-linux.org",
        "time": "Thu Mar 23 03:00:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:10 2006 -0800"
      },
      "message": "[PATCH] Move read_mostly definition to asm/cache.h\n\nSeems like needless clutter having a bunch of #if defined(CONFIG_$ARCH) in\ninclude/linux/cache.h.  Move the per architecture section definition to\nasm/cache.h, and keep the if-not-defined dummy case in linux/cache.h to\ncatch architectures which don\u0027t implement the section.\n\nVerified that symbols still go in .data.read_mostly on parisc,\nand the compile doesn\u0027t break.\n\nSigned-off-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6a2900b67652421b51fe25e4b86ecfec742b1f30",
      "tree": "57fd1f624d9e3fdc4b3e0dd637357cc451204250",
      "parents": [
        "d2c5d4fc07a41a6048b01d3b2930aeff1235fda5"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Mar 23 03:00:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:09 2006 -0800"
      },
      "message": "[PATCH] kill cdrom -\u003edev_ioctl method\n\nSince early 2.4.x all cdrom drivers implement the block_device methods\nthemselves, so they can handle additional ioctls directly instead of going\nthrough the cdrom layer.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0c9e63fd38a2fb2181668a0cdd622a3c23cfd567",
      "tree": "8fdb91603347b1da2e83a095ebcaab44b2c3c237",
      "parents": [
        "d8733c2956968a01394a4d2a9e97a8b431a78776"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Mar 23 03:00:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:09 2006 -0800"
      },
      "message": "[PATCH] Shrinks sizeof(files_struct) and better layout\n\n1) Reduce the size of (struct fdtable) to exactly 64 bytes on 32bits\n   platforms, lowering kmalloc() allocated space by 50%.\n\n2) Reduce the size of (files_struct), using a special 32 bits (or\n   64bits) embedded_fd_set, instead of a 1024 bits fd_set for the\n   close_on_exec_init and open_fds_init fields.  This save some ram (248\n   bytes per task) as most tasks dont open more than 32 files.  D-Cache\n   footprint for such tasks is also reduced to the minimum.\n\n3) Reduce size of allocated fdset.  Currently two full pages are\n   allocated, that is 32768 bits on x86 for example, and way too much.  The\n   minimum is now L1_CACHE_BYTES.\n\nUP and SMP should benefit from this patch, because most tasks will touch\nonly one cache line when open()/close() stdin/stdout/stderr (0/1/2),\n(next_fd, close_on_exec_init, open_fds_init, fd_array[0 ..  2] being in the\nsame cache line)\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d8733c2956968a01394a4d2a9e97a8b431a78776",
      "tree": "9743c9020eb5193efa4a0f102b3a7eb1d999c4fd",
      "parents": [
        "b8e31edc10d160a8bf2159541d9d12f2079a0887"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Mar 23 03:00:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:09 2006 -0800"
      },
      "message": "[PATCH] ext3_readdir: use generic readahead\n\nLinus points out that ext3_readdir\u0027s readahead only cuts in when\next3_readdir() is operating at the very start of the directory.  So for large\ndirectories we end up performing no readahead at all and we suck.\n\nSo take it all out and use the core VM\u0027s page_cache_readahead().  This means\nthat ext3 directory reads will use all of readahead\u0027s dynamic sizing goop.\n\nNote that we\u0027re using the directory\u0027s filp-\u003ef_ra to hold the readahead state,\nbut readahead is actually being performed against the underlying blockdev\u0027s\naddress_space.  Fortunately the readahead code is all set up to handle this.\n\nTested with printk.  It works.  I was struggling to find a real workload which\nactually cared.\n\n(The patch also exports page_cache_readahead() to GPL modules)\n\nCc: \"Stephen C. Tweedie\" \u003csct@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ff4da2e262d2509fe1bacff70dd00934be569c66",
      "tree": "1e171f1858be98f4a7c6ea3f92358b692dab44dc",
      "parents": [
        "e4e4d665560c75afb6060cb43bb6738777648ca1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Mar 23 03:00:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:08 2006 -0800"
      },
      "message": "[PATCH] swsusp: add check for suspension of X-controlled devices\n\nIt is unsafe to suspend devices if the hardware is controlled by X.  Add an\nextra check to prevent this from happening.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "74c7e2efbe37378026f00ad9e7253796d7b2fc99",
      "tree": "ddea6072e727fb37b55a3b45122e023a3951decf",
      "parents": [
        "61159a314bca6408320c3173c1282c64f5cdaa76"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Thu Mar 23 03:00:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:07 2006 -0800"
      },
      "message": "[PATCH] kernel/power: move externs to header files\n\nMove externs from C source files to header files.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f577eb30afdc68233f25d4d82b04102129262365",
      "tree": "25d3c2fa8dfbf42fd0d4776a36166736fcc1446a",
      "parents": [
        "2b322ce210aec74ae0d02938d3a01e29fe079469"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Mar 23 02:59:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:07 2006 -0800"
      },
      "message": "[PATCH] swsusp: low level interface\n\nIntroduce the low level interface that can be used for handling the\nsnapshot of the system memory by the in-kernel swap-writing/reading code of\nswsusp and the userland interface code (to be introduced shortly).\n\nAlso change the way in which swsusp records the allocated swap pages and,\nconsequently, simplifies the in-kernel swap-writing/reading code (this is\nnecessary for the userland interface too).  To this end, it introduces two\nhelper functions in mm/swapfile.c, so that the swsusp code does not refer\ndirectly to the swap internals.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9e71f9c848e669f003b1319da52f03cb8e7d7403",
      "tree": "3c873cce6b2d5da5237be20fe98124e8f4968d4d",
      "parents": [
        "e9028b0ff2bad1954568604dc17725692c8524d6"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Mar 23 02:59:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:03 2006 -0800"
      },
      "message": "[PATCH] DM: Fix bug: BIO_RW_BARRIER requests to md/raid1 hang.\n\nBoth R1BIO_Barrier and R1BIO_Returned are 4 !!!!\n\nThis means that barrier requests don\u0027t get returned (i.e.  b_endio called)\nbecause it looks like they already have been.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "80576fd86b350a90c5be329de1e382d31121a8d0",
      "tree": "077b2ae2c7db8d3e370c0c491253caa4926f24c1",
      "parents": [
        "9d8f057acbd38d8177cf2ffd5e151d52c2477372",
        "1a55d57b107c3e06935763905dc0fb235214569d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 17:36:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 17:36:04 2006 -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:\n  [TCP]: Do not use inet-\u003eid of global tcp_socket when sending RST.\n  [NETFILTER]: Fix undefined references to get_h225_addr\n  [NETFILTER]: futher {ip,ip6,arp}_tables unification\n  [NETFILTER]: Fix xt_policy address matching\n  [NETFILTER]: nf_conntrack: support for layer 3 protocol load on demand\n  [NETFILTER]: x_tables: set the protocol family in x_tables targets/matches\n  [NETFILTER]: conntrack: cleanup the conntrack ID initialization\n  [NETFILTER]: nfnetlink_queue: fix nfnetlink message size\n  [NETFILTER]: ctnetlink: Fix expectaction mask dumping\n  [NETFILTER]: Fix Kconfig typos\n  [NETFILTER]: Fix ip6tables breakage from {get,set}sockopt compat layer\n"
    },
    {
      "commit": "9d8f057acbd38d8177cf2ffd5e151d52c2477372",
      "tree": "1c3387b045a8a487ff99bf3abed1cdf41670f6e6",
      "parents": [
        "591eb85ecd7e6eb8596c6129ae074e16636b99f4",
        "91bca4b3e2f1aaaf67e62a36914f33ca1e7d5a06"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 17:33:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 17:33:12 2006 -0800"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-serial\n\n* master.kernel.org:/home/rmk/linux-2.6-serial:\n  [SERIAL] Merge avlab serial board entries in parport_serial\n  [SERIAL] kernel console should send CRLF not LFCR\n"
    },
    {
      "commit": "f01c18456993bab43067b678f56c87ca954aa43b",
      "tree": "3e0cd0cdf1a57618202b46a7126125902e3ab832",
      "parents": [
        "949ec2c8e6b7b89179b85baf6309c009e1a1b951",
        "1c2e02750b992703a8a18634e08b04353face243"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:13:54 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:13:54 2006 -0500"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "1e30a014e311e627b91489ff5ec1b54496d308af",
      "tree": "9f61f077f0403ff3aad393d929b07b6af7bdf7f8",
      "parents": [
        "81fbfd6925c064b764cb0536aed9232c7b48f6df"
      ],
      "author": {
        "name": "Dmitry Mishin",
        "email": "dim@openvz.org",
        "time": "Wed Mar 22 13:56:56 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 22 13:56:56 2006 -0800"
      },
      "message": "[NETFILTER]: futher {ip,ip6,arp}_tables unification\n\nThis patch moves {ip,ip6,arp}t_entry_{match,target} definitions to\nx_tables.h. This move simplifies code and future compatibility fixes.\n\nSigned-off-by: Dmitry Mishin \u003cdim@openvz.org\u003e\nAcked-off-by: Kirill Korotaev \u003cdev@openvz.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a45049c51ce6a3fecf2a909b591b28164c927112",
      "tree": "582c35205f9c1c12825447a009518eb2116beacd",
      "parents": [
        "4e3882f77376e036a52b022909d7e910714bd27b"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Wed Mar 22 13:55:40 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 22 13:55:40 2006 -0800"
      },
      "message": "[NETFILTER]: x_tables: set the protocol family in x_tables targets/matches\n\nSet the family field in xt_[matches|targets] registered.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c2e02750b992703a8a18634e08b04353face243",
      "tree": "5dc2d10bad329eeb73b9e219e237662a8383f971",
      "parents": [
        "8b4b6707ee32f929846d947d18b1b9bf42e988aa",
        "a3c44854a59f7e983c867060aa906bbf5befb1ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:59:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:59:20 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/perex/alsa\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/perex/alsa: (124 commits)\n  [ALSA] version 1.0.11rc4\n  [PATCH] Intruduce DMA_28BIT_MASK\n  [ALSA] hda-codec - Add support for ASUS P4GPL-X\n  [ALSA] hda-codec - Add support for HP nx9420 laptop\n  [ALSA] Fix memory leaks in error path of control.c\n  [ALSA] AMD Au1x00: AC\u002797 controller is memory mapped\n  [ALSA] AMD Au1x00: fix DMA init/cleanup\n  [ALSA] hda-codec - Fix generic auto-configurator\n  [ALSA] hda-codec - Fix BIOS auto-configuration\n  [ALSA] Fixes typos in Audiophile-USB.txt\n  [ALSA] ice1712 - typo fixes for dxr_enable module option\n  [ALSA] AMD Au1x00: make driver build after cleanup\n  [ALSA] ice1712 - Fix wrong value types for enum items\n  [ALSA] fix resource leak in usbmixer\n  [ALSA] Fix gus_pcm dereference before NULL\n  [ALSA] Fix seq_clientmgr dereferences before NULL check\n  [ALSA] hda-codec - Fix for Samsung R65 and ASUS A6J\n  [ALSA] hda-codec - Add support for VAIO FE550G and SZ110\n  [ALSA] usb-audio: add Maya44 mixer control names\n  [ALSA] usb-audio: add Casio PL-40R support\n  ...\n"
    },
    {
      "commit": "8b4b6707ee32f929846d947d18b1b9bf42e988aa",
      "tree": "aa27dd01e2d74cb68efc4ab57eb4d1f4e563ae33",
      "parents": [
        "d04ef3a795b3b7b376a02713ed5e211e9ae1f917",
        "116f232b3794a8b6ebde21aef5004b18cc1cfa86"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:58:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:58:05 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:\n  fixed path to moved file in include/linux/device.h\n  Fix spelling in E1000_DISABLE_PACKET_SPLIT Kconfig description\n  Documentation/dvb/get_dvb_firmware: fix firmware URL\n  Documentation: Update to BUG-HUNTING\n  Remove superfluous NOTIFY_COOKIE_LEN define\n  add \"tags\" to .gitignore\n  Fix \"frist\", \"fisrt\", typos\n  fix rwlock usage example\n  It\u0027s UTF-8\n"
    },
    {
      "commit": "36177ba655c238e33400cc2837a28720b62784bd",
      "tree": "c285738397f0272f1e0e973c5e6a53b2e8da74b1",
      "parents": [
        "2152f8536668a957ea3214735b4761e7b22ef7d8",
        "056755f4d73d49b4adcbb8ecdaf75138cf166bd3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:56:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:56:23 2006 -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:\n  [TG3]: Bump driver version and reldate.\n  [TG3]: Skip phy power down on some devices\n  [TG3]: Fix SRAM access during tg3_init_one()\n  [X25]: dte facilities 32 64 ioctl conversion\n  [X25]: allow ITU-T DTE facilities for x25\n  [X25]: fix kernel error message 64 bit kernel\n  [X25]: ioctl conversion 32 bit user to 64 bit kernel\n  [NET]: socket timestamp 32 bit handler for 64 bit kernel\n  [NET]: allow 32 bit socket ioctl in 64 bit kernel\n  [BLUETOOTH]: Return negative error constant\n"
    },
    {
      "commit": "2152f8536668a957ea3214735b4761e7b22ef7d8",
      "tree": "56723fc51445b1bc930c6400d4c00fd6fc831f88",
      "parents": [
        "7cae7e26f245151b9ccad868bf2edf8c8048d307",
        "30afc84cf7325e88fb9746340eba3c161080ff49"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:47:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:47:24 2006 -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: (138 commits)\n  [SCSI] libata: implement minimal transport template for -\u003eeh_timed_out\n  [SCSI] eliminate rphy allocation in favour of expander/end device allocation\n  [SCSI] convert mptsas over to end_device/expander allocations\n  [SCSI] allow displaying and setting of cache type via sysfs\n  [SCSI] add scsi_mode_select to scsi_lib.c\n  [SCSI] 3ware 9000 add big endian support\n  [SCSI] qla2xxx: update MAINTAINERS\n  [SCSI] scsi: move target_destroy call\n  [SCSI] fusion - bump version\n  [SCSI] fusion - expander hotplug suport in mptsas module\n  [SCSI] fusion - exposing raid components in mptsas\n  [SCSI] fusion - memory leak, and initializing fields\n  [SCSI] fusion - exclosure misspelled\n  [SCSI] fusion - cleanup mptsas event handling functions\n  [SCSI] fusion - removing target_id/bus_id from the VirtDevice structure\n  [SCSI] fusion - static fix\u0027s\n  [SCSI] fusion - move some debug firmware event debug msgs to verbose level\n  [SCSI] fusion - loginfo header update\n  [SCSI] add scsi_reprobe_device\n  [SCSI] megaraid_sas: fix extended timeout handling\n  ...\n"
    },
    {
      "commit": "b20a35035f983f4ac7e29c4a68f30e43510007e0",
      "tree": "fdf090ddddbcc275349f62f71adc98649e2c683b",
      "parents": [
        "442295c94bf650221af3ef20fc68fa3e93876818"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Mar 22 00:09:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] page migration reorg\n\nCentralize the page migration functions in anticipation of additional\ntinkering.  Creates a new file mm/migrate.c\n\n1. Extract buffer_migrate_page() from fs/buffer.c\n\n2. Extract central migration code from vmscan.c\n\n3. Extract some components from mempolicy.c\n\n4. Export pageout() and remove_from_swap() from vmscan.c\n\n5. Make it possible to configure NUMA systems without page migration\n   and non-NUMA systems with page migration.\n\nI had to so some #ifdeffing in mempolicy.c that may need a cleanup.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "42b88befd6e0dae1a5fe04c03925037fa890e1f3",
      "tree": "c234584f797e65e1bcd0d4675d56d1eb004d6681",
      "parents": [
        "3915bcf38fe0b6d130b4bbde97804f29a0becf32"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Mar 22 00:09:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:04 2006 -0800"
      },
      "message": "[PATCH] hugepage: is_aligned_hugepage_range() cleanup\n\nQuite a long time back, prepare_hugepage_range() replaced\nis_aligned_hugepage_range() as the callback from mm/mmap.c to arch code to\nverify if an address range is suitable for a hugepage mapping.\nis_aligned_hugepage_range() stuck around, but only to implement\nprepare_hugepage_range() on archs which didn\u0027t implement their own.\n\nMost archs (everything except ia64 and powerpc) used the same\nimplementation of is_aligned_hugepage_range().  On powerpc, which\nimplements its own prepare_hugepage_range(), the custom version was never\nused.\n\nIn addition, \"is_aligned_hugepage_range()\" was a bad name, because it\nsuggests it returns true iff the given range is a good hugepage range,\nwhereas in fact it returns 0-or-error (so the sense is reversed).\n\nThis patch cleans up by abolishing is_aligned_hugepage_range().  Instead\nprepare_hugepage_range() is defined directly.  Most archs use the default\nversion, which simply checks the given region is aligned to the size of a\nhugepage.  ia64 and powerpc define custom versions.  The ia64 one simply\nchecks that the range is in the correct address space region in addition to\nbeing suitably aligned.  The powerpc version (just as previously) checks\nfor suitable addresses, and if necessary performs low-level MMU frobbing to\nset up new areas for use by hugepages.\n\nNo libhugetlbfs testsuite regressions on ppc64 (POWER5 LPAR).\n\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Zhang Yanmin \u003cyanmin.zhang@intel.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3915bcf38fe0b6d130b4bbde97804f29a0becf32",
      "tree": "c094ae338592d6e11999c16a2690915e47888a2b",
      "parents": [
        "4866920b93fd7d5b520278c3c76e6f4d5a352d81"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Mar 22 00:08:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:04 2006 -0800"
      },
      "message": "[PATCH] hugepage: Move hugetlb_free_pgd_range() prototype to hugetlb.h\n\nThe optional hugepage callback, hugetlb_free_pgd_range() is presently\nimplemented non-trivially only on ia64 (but I plan to add one for powerpc\nshortly).  It has its own prototype for the function in asm-ia64/pgtable.h.\n However, since the function is called from generic code, it make sense for\nits prototype to be in the generic hugetlb.h header file, as the protypes\nother arch callbacks already are (prepare_hugepage_range(),\nset_huge_pte_at(), etc.).  This patch makes it so.\n\nSigned-off-by: David Gibson \u003cdwg@au1.ibm.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9da61aef0fd5b17dd4bf4baf33db12c470def774",
      "tree": "cb4bb0b63c36a0b303ceadc0cec0fae00c49ecf3",
      "parents": [
        "27a85ef1b81300cfff06b4c8037e9914dfb09acc"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Mar 22 00:08:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] hugepage: Fix hugepage logic in free_pgtables()\n\nfree_pgtables() has special logic to call hugetlb_free_pgd_range() instead\nof the normal free_pgd_range() on hugepage VMAs.  However, the test it uses\nto do so is incorrect: it calls is_hugepage_only_range on a hugepage sized\nrange at the start of the vma.  is_hugepage_only_range() will return true\nif the given range has any intersection with a hugepage address region, and\nin this case the given region need not be hugepage aligned.  So, for\nexample, this test can return true if called on, say, a 4k VMA immediately\npreceding a (nicely aligned) hugepage VMA.\n\nAt present we get away with this because the powerpc version of\nhugetlb_free_pgd_range() is just a call to free_pgd_range().  On ia64 (the\nonly other arch with a non-trivial is_hugepage_only_range()) we get away\nwith it for a different reason; the hugepage area is not contiguous with\nthe rest of the user address space, and VMAs are not permitted in between,\nso the test can\u0027t return a false positive there.\n\nNonetheless this should be fixed.  We do that in the patch below by\nreplacing the is_hugepage_only_range() test with an explicit test of the\nVMA using is_vm_hugetlb_page().\n\nThis in turn changes behaviour for platforms where is_hugepage_only_range()\nreturns false always (everything except powerpc and ia64).  We address this\nby ensuring that hugetlb_free_pgd_range() is defined to be identical to\nfree_pgd_range() (instead of a no-op) on everything except ia64.  Even so,\nit will prevent some otherwise possible coalescing of calls down to\nfree_pgd_range().  Since this only happens for hugepage VMAs, removing this\nsmall optimization seems unlikely to cause any trouble.\n\nThis patch causes no regressions on the libhugetlbfs testsuite - ppc64\nPOWER5 (8-way), ppc64 G5 (2-way) and i386 Pentium M (UP).\n\nSigned-off-by: David Gibson \u003cdwg@au1.ibm.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "27a85ef1b81300cfff06b4c8037e9914dfb09acc",
      "tree": "1a8d9bc4c5611542273e57fc2606c12905906a57",
      "parents": [
        "b45b5bd65f668a665db40d093e4e1fe563533608"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Mar 22 00:08:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] hugepage: Make {alloc,free}_huge_page() local\n\nOriginally, mm/hugetlb.c just handled the hugepage physical allocation path\nand its {alloc,free}_huge_page() functions were used from the arch specific\nhugepage code.  These days those functions are only used with mm/hugetlb.c\nitself.  Therefore, this patch makes them static and removes their\nprototypes from hugetlb.h.  This requires a small rearrangement of code in\nmm/hugetlb.c to avoid a forward declaration.\n\nThis patch causes no regressions on the libhugetlbfs testsuite (ppc64,\nPOWER5).\n\nSigned-off-by: David Gibson \u003cdwg@au1.ibm.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b45b5bd65f668a665db40d093e4e1fe563533608",
      "tree": "aa3806bd87fd7aa719b561e4d468c779f6adb31b",
      "parents": [
        "3935baa9bcda3ccaee4f7849f5157d316e34412e"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Mar 22 00:08:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] hugepage: Strict page reservation for hugepage inodes\n\nThese days, hugepages are demand-allocated at first fault time.  There\u0027s a\nsomewhat dubious (and racy) heuristic when making a new mmap() to check if\nthere are enough available hugepages to fully satisfy that mapping.\n\nA particularly obvious case where the heuristic breaks down is where a\nprocess maps its hugepages not as a single chunk, but as a bunch of\nindividually mmap()ed (or shmat()ed) blocks without touching and\ninstantiating the pages in between allocations.  In this case the size of\neach block is compared against the total number of available hugepages.\nIt\u0027s thus easy for the process to become overcommitted, because each block\nmapping will succeed, although the total number of hugepages required by\nall blocks exceeds the number available.  In particular, this defeats such\na program which will detect a mapping failure and adjust its hugepage usage\ndownward accordingly.\n\nThe patch below addresses this problem, by strictly reserving a number of\nphysical hugepages for hugepage inodes which have been mapped, but not\ninstatiated.  MAP_SHARED mappings are thus \"safe\" - they will fail on\nmmap(), not later with an OOM SIGKILL.  MAP_PRIVATE mappings can still\ntrigger an OOM.  (Actually SHARED mappings can technically still OOM, but\nonly if the sysadmin explicitly reduces the hugepage pool between mapping\nand instantiation)\n\nThis patch appears to address the problem at hand - it allows DB2 to start\ncorrectly, for instance, which previously suffered the failure described\nabove.\n\nThis patch causes no regressions on the libhugetblfs testsuite, and makes a\ntest (designed to catch this problem) pass which previously failed (ppc64,\nPOWER5).\n\nSigned-off-by: David Gibson \u003cdwg@au1.ibm.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f860591ffb29738cf5539b6fbf27f50dcdeb380",
      "tree": "4265e45c4a79d86a16cd5175a836e8c531be8117",
      "parents": [
        "aed75ff3caafce404d9be7f0c088716375be5279"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Wed Mar 22 00:08:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] Enable mprotect on huge pages\n\n2.6.16-rc3 uses hugetlb on-demand paging, but it doesn_t support hugetlb\nmprotect.\n\nFrom: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\n\n  Remove a test from the mprotect() path which checks that the mprotect()ed\n  range on a hugepage VMA is hugepage aligned (yes, really, the sense of\n  is_aligned_hugepage_range() is the opposite of what you\u0027d guess :-/).\n\n  In fact, we don\u0027t need this test.  If the given addresses match the\n  beginning/end of a hugepage VMA they must already be suitably aligned.  If\n  they don\u0027t, then mprotect_fixup() will attempt to split the VMA.  The very\n  first test in split_vma() will check for a badly aligned address on a\n  hugepage VMA and return -EINVAL if necessary.\n\nFrom: \"Chen, Kenneth W\" \u003ckenneth.w.chen@intel.com\u003e\n\n  On i386 and x86-64, pte flag _PAGE_PSE collides with _PAGE_PROTNONE.  The\n  identify of hugetlb pte is lost when changing page protection via mprotect.\n  A page fault occurs later will trigger a bug check in huge_pte_alloc().\n\n  The fix is to always make new pte a hugetlb pte and also to clean up\n  legacy code where _PAGE_PRESENT is forced on in the pre-faulting day.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin.zhang@intel.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "617d2214ee06c209e5c375c280d50abace8058e1",
      "tree": "dd2fbf4a2cfa9854ebf27e6f100608c8a0507850",
      "parents": [
        "b7ab795b7bec9997d4fde39f249d52823d36d98d"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:02 2006 -0800"
      },
      "message": "[PATCH] mm: optimise page_count\n\nOptimise page_count compound page test and make it consistent with similar\nfunctions.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7835e98b2e3c66dba79cb0ff8ebb90a2fe030c29",
      "tree": "405a96eade34845dabe2f125b6c5eb095846869d",
      "parents": [
        "70dc991d66cac40fdb07346dba2b5d862d732c34"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:40 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:02 2006 -0800"
      },
      "message": "[PATCH] remove set_page_count() outside mm/\n\nset_page_count usage outside mm/ is limited to setting the refcount to 1.\nRemove set_page_count from outside mm/, and replace those users with\ninit_page_count() and set_page_refcounted().\n\nThis allows more debug checking, and tighter control on how code is allowed\nto play around with page-\u003e_count.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "84097518d1ecd2330f9488e4c2d09953a3340e74",
      "tree": "50981fe0584c456a1a86e6d7f611eec223b5f536",
      "parents": [
        "0f8053a509ceba4a077a50ea7b77039b5559b428"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:01 2006 -0800"
      },
      "message": "[PATCH] mm: nommu use compound pages\n\nNow that compound page handling is properly fixed in the VM, move nommu\nover to using compound pages rather than rolling their own refcounting.\n\nnommu vm page refcounting is broken anyway, but there is no need to have\ndivergent code in the core VM now, nor when it gets fixed.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\n\n(Needs testing, please).\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0f8053a509ceba4a077a50ea7b77039b5559b428",
      "tree": "5a66021540395e20256f38a3a45174617428a832",
      "parents": [
        "4fa4f53bf92139595cae6f1a3d972fc0a3451d29"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:01 2006 -0800"
      },
      "message": "[PATCH] mm: make __put_page internal\n\nRemove __put_page from outside the core mm/.  It is dangerous because it does\nnot handle compound pages nicely, and misses 1-\u003e0 transitions.  If a user\nlater appears that really needs the extra speed we can reevaluate.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "69e05944af39fc6c97b09380c8721e38433bd828",
      "tree": "165e594ed5cd34c3a2b2ec236f75ac5b192ade7a",
      "parents": [
        "179e96395b1f01e95ebe1ff5ef306b810dbbd147"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 00:08:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:00 2006 -0800"
      },
      "message": "[PATCH] vmscan: use unsigned longs\n\nTurn basically everything in vmscan.c into `unsigned long\u0027.  This is to avoid\nthe possibility that some piece of code in there might decide to operate upon\nmore than 4G (or even 2G) of pages in one hit.\n\nThis might be silly, but we\u0027ll need it one day.\n\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "78eef01b0fae087c5fadbd85dd4fe2918c3a015f",
      "tree": "78057039596aa733ff904a36260cca3a51af6981",
      "parents": [
        "ac2b898ca6fb06196a26869c23b66afe7944e52e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 00:08:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:59 2006 -0800"
      },
      "message": "[PATCH] on_each_cpu(): disable local interrupts\n\nWhen on_each_cpu() runs the callback on other CPUs, it runs with local\ninterrupts disabled.  So we should run the function with local interrupts\ndisabled on this CPU, too.\n\nAnd do the same for UP, so the callback is run in the same environment on both\nUP and SMP.  (strictly it should do preempt_disable() too, but I think\nlocal_irq_disable is sufficiently equivalent).\n\nAlso uninlines on_each_cpu().  softirq.c was the most appropriate file I could\nfind, but it doesn\u0027t seem to justify creating a new file.\n\nOh, and fix up that comment over (under?) x86\u0027s smp_call_function().  It\ndrives me nuts.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ac2b898ca6fb06196a26869c23b66afe7944e52e",
      "tree": "e82e7bebd89b02813ce23f76fec4aeb5626da655",
      "parents": [
        "911851e6ee6ac4e26f07be342a89632f78494fef"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Wed Mar 22 00:08:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:59 2006 -0800"
      },
      "message": "[PATCH] slab: Remove SLAB_NO_REAP option\n\nSLAB_NO_REAP is documented as an option that will cause this slab not to be\nreaped under memory pressure.  However, that is not what happens.  The only\nthing that SLAB_NO_REAP controls at the moment is the reclaim of the unused\nslab elements that were allocated in batch in cache_reap().  Cache_reap()\nis run every few seconds independently of memory pressure.\n\nCould we remove the whole thing?  Its only used by three slabs anyways and\nI cannot find a reason for having this option.\n\nThere is an additional problem with SLAB_NO_REAP.  If set then the recovery\nof objects from alien caches is switched off.  Objects not freed on the\nsame node where they were initially allocated will only be reused if a\ncertain amount of objects accumulates from one alien node (not very likely)\nor if the cache is explicitly shrunk.  (Strangely __cache_shrink does not\ncheck for SLAB_NO_REAP)\n\nGetting rid of SLAB_NO_REAP fixes the problems with alien cache freeing.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b50ec7d8070ae7a39fe78e65a8812bbc3ca2f7ac",
      "tree": "56a30fe319a1c4356547d13896d6762df76980d7",
      "parents": [
        "a482289d46587ffcda4c85aab109fb74910d7a48"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Mar 22 00:08:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] kcalloc(): INT_MAX -\u003e ULONG_MAX\n\nSince size_t has the same size as a long on all architectures, it\u0027s enough\nfor overflow checks to check against ULONG_MAX.\n\nThis change could allow a compiler better optimization (especially in the\nn\u003d1 case).\n\nThe practical effect seems to be positive, but quite small:\n\n    text           data     bss      dec            hex filename\n21762380        5859870 1848928 29471178        1c1b1ca vmlinux-old\n21762211        5859870 1848928 29471009        1c1b121 vmlinux-patched\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9d41415221214ca4820b9464dfa548e2f20e7dd5",
      "tree": "58db93aca7cf16ddf22a9d86f32c6f04c19d721c",
      "parents": [
        "8dfcc9ba27e2ed257e5de9539f7f03e57c2c0e33"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] mm: page_state comment more\n\nClarify that preemption needs to be guarded against with the\n__xxx_page_state functions.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8dfcc9ba27e2ed257e5de9539f7f03e57c2c0e33",
      "tree": "aecaeb6a0b33c23f79dfcd2418e4a3881a29f2e2",
      "parents": [
        "8e7a9aae91101916b86de07fafe3272ea8dc1f10"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:57 2006 -0800"
      },
      "message": "[PATCH] mm: split highorder pages\n\nHave an explicit mm call to split higher order pages into individual pages.\n Should help to avoid bugs and be more explicit about the code\u0027s intention.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nSigned-off-by: Yoichi Yuasa \u003cyoichi_yuasa@tripeaks.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8dc04efbfb3c08a08fb7a3b97348d5d561b26ae2",
      "tree": "a48ce376d077745fdab23a33e5be1d48c979c3ae",
      "parents": [
        "7c8ee9a86340db686cd4314e9944dc9b6111bda9"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:57 2006 -0800"
      },
      "message": "[PATCH] mm: de-skew page refcounting\n\natomic_add_unless (atomic_inc_not_zero) no longer requires an offset refcount\nto function correctly.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7c8ee9a86340db686cd4314e9944dc9b6111bda9",
      "tree": "80638e1658556b4fd7c0b92d571aaac854245bd3",
      "parents": [
        "f205b2fe62d321403525065a4cb31b6bff1bbe53"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:57 2006 -0800"
      },
      "message": "[PATCH] mm: simplify vmscan vs release refcounting\n\nThe VM has an interesting race where a page refcount can drop to zero, but it\nis still on the LRU lists for a short time.  This was solved by testing a 0-\u003e1\nrefcount transition when picking up pages from the LRU, and dropping the\nrefcount in that case.\n\nInstead, use atomic_add_unless to ensure we never pick up a 0 refcount page\nfrom the LRU, thus a 0 refcount page will never have its refcount elevated\nuntil it is allocated again.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f205b2fe62d321403525065a4cb31b6bff1bbe53",
      "tree": "26a2273e7da089e99690097348bf4d35600393f4",
      "parents": [
        "5e9dace8d386def04219134d7160e8a778824764"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:57 2006 -0800"
      },
      "message": "[PATCH] mm: slab less atomics\n\nAtomic operation removal from slab\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5e9dace8d386def04219134d7160e8a778824764",
      "tree": "d74ca57577cc4872eb6bcf609e3c7f7d1a39fdf6",
      "parents": [
        "674539115cc88473f623581e1d53c0e2ecef2179"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:57 2006 -0800"
      },
      "message": "[PATCH] mm: page_alloc less atomics\n\nMore atomic operation removal from page allocator\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "674539115cc88473f623581e1d53c0e2ecef2179",
      "tree": "7a32501091d7370ff4387df68804f918a089c631",
      "parents": [
        "4c84cacfa424264f7ad5287298d3ea4a3e935278"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:57 2006 -0800"
      },
      "message": "[PATCH] mm: less atomic ops\n\nIn the page release paths, we can be sure that nobody will mess with our\npage-\u003eflags because the refcount has dropped to 0.  So no need for atomic\noperations here.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c84cacfa424264f7ad5287298d3ea4a3e935278",
      "tree": "8cefe97dfd0cdfbdebe5636ccc68b14ab3ae1207",
      "parents": [
        "8d438f96d2b8eade6cbcd8adfc22dae6f5cbd6c0"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:57 2006 -0800"
      },
      "message": "[PATCH] mm: PageActive no testset\n\nPG_active is protected by zone-\u003elru_lock, it does not need TestSet/TestClear\noperations.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8d438f96d2b8eade6cbcd8adfc22dae6f5cbd6c0",
      "tree": "5248caf52ed9ba1dbb172d9e3bd3216c97ab3b84",
      "parents": [
        "46453a6e194a8c55fe6cf3dc8e1c4f24e2abc013"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:07:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:56 2006 -0800"
      },
      "message": "[PATCH] mm: PageLRU no testset\n\nPG_lru is protected by zone-\u003elru_lock. It does not need TestSet/TestClear\noperations.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4024ce5e0f396447cc1e07fd65c2a1d056b066bb",
      "tree": "89d7c0f97e279ae64884aa47a02cae8f13f3f51e",
      "parents": [
        "d2044a94e80b61f68ee7456f82d9b443e9ff6ac7"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Wed Mar 22 00:07:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:55 2006 -0800"
      },
      "message": "[PATCH] rtc.h broke strace(1) builds\n\nGit patch 52dfa9a64cfb3dd01fa1ee1150d589481e54e28e\n\n\t[PATCH] move rtc_interrupt() prototype to rtc.h\n\nbroke strace(1) builds.  The below moves the kernel-only additions lower,\nunder the already provided #ifdef __KERNEL__ statement.\n\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5501972e0b5857bc8354770d900ceb9b40c7f6b7",
      "tree": "ff239422827c4cd54d2998f8851304255de31b38",
      "parents": [
        "9d2f928ddf64ca0361562e30faf584cd33055c60",
        "e952f31bce6e9f64db01f607abc46529ba57ac9e"
      ],
      "author": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Wed Mar 22 11:02:08 2006 +0100"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Wed Mar 22 11:02:08 2006 +0100"
      },
      "message": "Merge with rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git\n"
    },
    {
      "commit": "9d2f928ddf64ca0361562e30faf584cd33055c60",
      "tree": "c9f57551988fc492e20553aa39b24af7547ab239",
      "parents": [
        "84f3430c7255668a0298d166605d27e3c96b5de4"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@nuerscht.ch",
        "time": "Wed Mar 22 10:53:19 2006 +0100"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Wed Mar 22 10:53:19 2006 +0100"
      },
      "message": "[PATCH] Intruduce DMA_28BIT_MASK\n\nThis patch introduces the DMA_28BIT_MASK constant in dma-mapping.h\nALSA drivers using this mask are changed to use the new constant.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@nuerscht.ch\u003e\nAcked-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nAcked-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "a64b7b936dcd926ace745c07c14f45ecfaddb034",
      "tree": "734b65e3c7c1862b05ef65e0ffbd584d7b86d537",
      "parents": [
        "bac37ec8300389d355d41a828b47577c1ec2e4f4"
      ],
      "author": {
        "name": "Shaun Pereira",
        "email": "spereira@tusc.com.au",
        "time": "Wed Mar 22 00:01:31 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 22 00:01:31 2006 -0800"
      },
      "message": "[X25]: allow ITU-T DTE facilities for x25\n\nAllows use of the optional user facility to insert ITU-T\n(http://www.itu.int/ITU-T/) specified DTE facilities in call set-up x25\npackets.  This feature is optional; no facilities will be added if the ioctl\nis not used, and call setup packet remains the same as before.\n\nIf the ioctls provided by the patch are used, then a facility marker will be\nadded to the x25 packet header so that the called dte address extension\nfacility can be differentiated from other types of facilities (as described in\nthe ITU-T X.25 recommendation) that are also allowed in the x25 packet header.\n\nFacility markers are made up of two octets, and may be present in the x25\npacket headers of call-request, incoming call, call accepted, clear request,\nand clear indication packets.  The first of the two octets represents the\nfacility code field and is set to zero by this patch.  The second octet of the\nmarker represents the facility parameter field and is set to 0x0F because the\nmarker will be inserted before ITU-T type DTE facilities.\n\nSince according to ITU-T X.25 Recommendation X.25(10/96)- 7.1 \"All networks\nwill support the facility markers with a facility parameter field set to all\nones or to 00001111\", therefore this patch should work with all x.25 networks.\n\nWhile there are many ITU-T DTE facilities, this patch implements only the\ncalled and calling address extension, with placeholders in the\nx25_dte_facilities structure for the rest of the facilities.\n\nTesting:\n\nThis patch was tested using a cisco xot router connected on its serial ports\nto an X.25 network, and on its lan ports to a host running an xotd daemon.\n\nIt is also possible to test this patch using an xotd daemon and an x25tap\npatch, where the xotd daemons work back-to-back without actually using an x.25\nnetwork.  See www.fyonne.net for details on how to do this.\n\nSigned-off-by: Shaun Pereira \u003cspereira@tusc.com.au\u003e\nAcked-by: Andrew Hendry \u003cahendry@tusc.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89bbfc95d65839d6ae23ddab8a3cc5af4ae88383",
      "tree": "f2d5e55533f07109680d7ed7e56cc85222703c69",
      "parents": [
        "67b52e554ba973947704fcb4fc284d7bab9ab931"
      ],
      "author": {
        "name": "Shaun Pereira",
        "email": "spereira@tusc.com.au",
        "time": "Tue Mar 21 23:58:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 21 23:58:08 2006 -0800"
      },
      "message": "[NET]: allow 32 bit socket ioctl in 64 bit kernel\n\nSince the register_ioctl32_conversion() patch in the kernel is now obsolete,\nprovide another method to allow 32 bit user space ioctls to reach the kernel.\n\nSigned-off-by: Shaun Pereira \u003cspereira@tusc.com.au\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "17bb34a3c548c4fd2a7c859123a631f97c2af09f",
      "tree": "566cd167531082ebaa16a6127dce30a60b4b865a",
      "parents": [
        "23cfce8924f1e7ff1d14b8f1afd7550182026d16"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 21:29:21 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 21:29:21 2006 -0500"
      },
      "message": "[libata] add prototypes for helpers\n\nAdd prototypes for stuff recently added by Alan.\n"
    },
    {
      "commit": "b6782728d703fa3f0e5478a8b89e49ea10b1fdd0",
      "tree": "bb3c44ac421d77c42a58ed426236897016b60991",
      "parents": [
        "806a6e7a9904d4a1dfd3fd79d373bf31d71d34cb"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Mar 21 15:52:49 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 21:21:31 2006 -0500"
      },
      "message": "[PATCH] libata: Add the useful macros/constants needed for merging PATA stuff\n\nHPA presence/enabled\nHPA commands\n\nAlso add ata_id_is_cfa() as that is needed to detect and handle CF cards\nwhich currently we reject.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e46834cd2ddb1e2941806cb8fec60fb6bdd2ec29",
      "tree": "770dfbbb56f8c9b7e748e9982875cc4522454ffb",
      "parents": [
        "f59b0cf8a3a39b75e580066c6a9aeabd97ec2743"
      ],
      "author": {
        "name": "Brian King",
        "email": "brking@us.ibm.com",
        "time": "Fri Mar 17 17:04:03 2006 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 21:03:43 2006 -0500"
      },
      "message": "[PATCH] libata: Add some dummy noop functions\n\nAdd some dummy noop functions for use by libata clients\nthat do not need to do anything. Future SAS patches will\nutilize these functions.\n\nSigned-off-by: Brian King \u003cbrking@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f59b0cf8a3a39b75e580066c6a9aeabd97ec2743",
      "tree": "785118d3a81dbeea6308d6282eb32ae514089485",
      "parents": [
        "41ade50c4eff9477e6aef6b15e84673c6758ec0d"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Thu Mar 16 17:59:22 2006 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 20:39:46 2006 -0500"
      },
      "message": "[PATCH] libata-dev: Remove ATA_PROT_PIO_MULT\n\nRemove the ATA_PROT_PIO_MULT protocol.\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "116f232b3794a8b6ebde21aef5004b18cc1cfa86",
      "tree": "8d9d46605b1109cfbfd1c147dd8afce61a4c2fe7",
      "parents": [
        "9e6b48732d53bd986178bca3bce18d2329e4b0ca"
      ],
      "author": {
        "name": "Rytchkov Alexey",
        "email": "lilo0@nm.ru",
        "time": "Wed Mar 22 00:58:53 2006 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Mar 22 00:58:53 2006 +0100"
      },
      "message": "fixed path to moved file in include/linux/device.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "4de151d8cd2553e7e89044ab5d72fcad4eb04afb",
      "tree": "372195d30aef0b934fa1e9d5c01280f01dcbded0",
      "parents": [
        "e0f4ab8a1741193891f096aa63df9ac8672af54c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Mar 22 00:13:35 2006 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@r063144.stusta.swh.mhn.de",
        "time": "Wed Mar 22 00:13:35 2006 +0100"
      },
      "message": "It\u0027s UTF-8\n\nFix some comments to \"UTF-8\".\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "30afc84cf7325e88fb9746340eba3c161080ff49",
      "tree": "829ea31d6ab095bd7a35651cd6018205a2b21d11",
      "parents": [
        "d04cdb64212eb5ae6a98026a97dda626e40e8e9a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Mar 18 18:40:14 2006 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Tue Mar 21 13:07:05 2006 -0600"
      },
      "message": "[SCSI] libata: implement minimal transport template for -\u003eeh_timed_out\n\nSCSI midlayer has moved hostt-\u003eeh_timed_out to transport template.  As\nlibata doesn\u0027t need full-blown transport support yet, implement\nminimal transport for libata.  No transport class or whatsoever, just\nempty transport template with -\u003eeh_timed_out hook.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "d04cdb64212eb5ae6a98026a97dda626e40e8e9a",
      "tree": "b6a7dbb21ccfceb915844e9a330b3d3dfcaf3c5b",
      "parents": [
        "2f8600dff2b140096a7df781884e918a16aa90e0",
        "ec1248e70edc5cf7b485efcc7b41e44e10f422e5"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Tue Mar 21 13:05:45 2006 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Tue Mar 21 13:05:45 2006 -0600"
      },
      "message": "Merge ../linux-2.6\n"
    },
    {
      "commit": "ec1248e70edc5cf7b485efcc7b41e44e10f422e5",
      "tree": "80ca10a1ad9dc572e131a56a93fcf0c63c14d168",
      "parents": [
        "3d1f337b3e7378923c89f37afb573a918ef40be5",
        "55e9dce37ddf3ab358ba1d1e9eef4ee4bd8174a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:33:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:33:19 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6:\n  [CRYPTO] aes: Fixed array boundary violation\n  [CRYPTO] tcrypt: Fix key alignment\n  [CRYPTO] all: Add missing cra_alignmask\n  [CRYPTO] all: Use kzalloc where possible\n  [CRYPTO] api: Align tfm context as wide as possible\n  [CRYPTO] twofish: Use rol32/ror32 where appropriate\n"
    },
    {
      "commit": "3d1f337b3e7378923c89f37afb573a918ef40be5",
      "tree": "386798378567a10d1c7b24f599cb50f70298694c",
      "parents": [
        "2bf2154c6bb5599e3ec3f73c34861a0b12aa839e",
        "5e35941d990123f155b02d5663e51a24f816b6f3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:31:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:31:48 2006 -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: (235 commits)\n  [NETFILTER]: Add H.323 conntrack/NAT helper\n  [TG3]: Don\u0027t mark tg3_test_registers() as returning const.\n  [IPV6]: Cleanups for net/ipv6/addrconf.c (kzalloc, early exit) v2\n  [IPV6]: Nearly complete kzalloc cleanup for net/ipv6\n  [IPV6]: Cleanup of net/ipv6/reassambly.c\n  [BRIDGE]: Remove duplicate const from is_link_local() argument type.\n  [DECNET]: net/decnet/dn_route.c: fix inconsequent NULL checking\n  [TG3]: make drivers/net/tg3.c:tg3_request_irq() static\n  [BRIDGE]: use LLC to send STP\n  [LLC]: llc_mac_hdr_init const arguments\n  [BRIDGE]: allow show/store of group multicast address\n  [BRIDGE]: use llc for receiving STP packets\n  [BRIDGE]: stp timer to jiffies cleanup\n  [BRIDGE]: forwarding remove unneeded preempt and bh diasables\n  [BRIDGE]: netfilter inline cleanup\n  [BRIDGE]: netfilter VLAN macro cleanup\n  [BRIDGE]: netfilter dont use __constant_htons\n  [BRIDGE]: netfilter whitespace\n  [BRIDGE]: optimize frame pass up\n  [BRIDGE]: use kzalloc\n  ...\n"
    },
    {
      "commit": "2bf2154c6bb5599e3ec3f73c34861a0b12aa839e",
      "tree": "62691bd915e2e3c2e6648306d3fb893f7a1dc57e",
      "parents": [
        "08a4ecee986dd98e86090ff5faac4782b6765aed",
        "71a8924bee63d891f6256d560e32416a458440b3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:25:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:25:47 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: (81 commits)\n  [PATCH] USB: omninet: fix up debugging comments\n  [PATCH] USB serial: add navman driver\n  [PATCH] USB: Fix irda-usb use after use\n  [PATCH] USB: rtl8150 small fix\n  [PATCH] USB: ftdi_sio: add Icom ID1 USB product and vendor ids\n  [PATCH] USB: cp2101: add new device IDs\n  [PATCH] USB: fix check_ctrlrecip to allow control transfers in state ADDRESS\n  [PATCH] USB: vicam.c: fix a NULL pointer dereference\n  [PATCH] USB: ZC0301 driver bugfix\n  [PATCH] USB: add support for Creativelabs Silvercrest USB keyboard\n  [PATCH] USB: storage: new unusual_devs.h entry: Mitsumi 7in1 Card Reader\n  [PATCH] USB: storage: unusual_devs.h entry 0420:0001\n  [PATCH] USB: storage: another unusual_devs.h entry\n  [PATCH] USB: storage: sandisk unusual_devices entry\n  [PATCH] USB: fix initdata issue in isp116x-hcd\n  [PATCH] USB: usbcore: usb_set_configuration oops (NULL ptr dereference)\n  [PATCH] USB: usbcore: Don\u0027t assume a USB configuration includes any interfaces\n  [PATCH] USB: ub 03 drop stall clearing\n  [PATCH] USB: ub 02 remove diag\n  [PATCH] USB: ub 01 remove first_open\n  ...\n"
    },
    {
      "commit": "08a4ecee986dd98e86090ff5faac4782b6765aed",
      "tree": "74df5de49f38c432a6a18303b0c6d834fd09028f",
      "parents": [
        "ba93c6297b9cfad5a70b5e5ed13c9dbead6601d3",
        "b3229087c5e08589cea4f5040dab56f7dc11332a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:25:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:25:15 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6: (23 commits)\n  [PATCH] sysfs: fix a kobject leak in sysfs_add_link on the error path\n  [PATCH] sysfs: don\u0027t export dir symbols\n  [PATCH] get_cpu_sysdev() signedness fix\n  [PATCH] kobject_add_dir\n  [PATCH] debugfs: Add debugfs_create_blob() helper for exporting binary data\n  [PATCH] sysfs: fix problem with duplicate sysfs directories and files\n  [PATCH] Kobject: kobject.h: fix a typo\n  [PATCH] Kobject: provide better warning messages when people do stupid things\n  [PATCH] Driver core: add macros notice(), dev_notice()\n  [PATCH] firmware: fix BUG: in fw_realloc_buffer\n  [PATCH] sysfs: kzalloc conversion\n  [PATCH] fix module sysfs files reference counting\n  [PATCH] add EXPORT_SYMBOL_GPL_FUTURE() to USB subsystem\n  [PATCH] add EXPORT_SYMBOL_GPL_FUTURE() to RCU subsystem\n  [PATCH] add EXPORT_SYMBOL_GPL_FUTURE()\n  [PATCH] Clean up module.c symbol searching logic\n  [PATCH] kobj_map semaphore to mutex conversion\n  [PATCH] kref: avoid an atomic operation in kref_put()\n  [PATCH] handle errors returned by platform_get_irq*()\n  [PATCH] driver core: platform_get_irq*(): return -ENXIO on error\n  ...\n"
    },
    {
      "commit": "28c006c1f09ea92d4f2585a087a188955ce3f64c",
      "tree": "2615749653cd3ba4852d2f5ed22f21eec0cd5712",
      "parents": [
        "cbe037b46f564188045937e6006c5c1d6093618a",
        "7abe53155b77c31028a7158883bc9aac705790da"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:20:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:20:47 2006 -0800"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n\n* master.kernel.org:/home/rmk/linux-2.6-arm:\n  [ARM] Fix cosmetic typo in asm/irq.h\n  [ARM] 3367/1: CLCD mode no longer supported on the RealView boards\n  [ARM] 3366/1: Allow the 16bpp mode configuration in the CLCD control register\n"
    },
    {
      "commit": "cbe037b46f564188045937e6006c5c1d6093618a",
      "tree": "a06d32fbe5c19fbd674ab3df05476743803c9615",
      "parents": [
        "f0481730c827421cf1548bfd73c073c0f47f2907",
        "cd85f6e2f58282186ad720fc18482be228f0b972"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:20:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:20:12 2006 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: (112 commits)\n  [libata] sata_mv: fix irq port status usage\n  [PATCH] libata: move IDENTIFY info printing from ata_dev_read_id() to ata_dev_configure()\n  [PATCH] libata: use local *id instead of dev-\u003eid in ata_dev_configure()\n  [PATCH] libata: check Word 88 validity in ata_id_xfer_mask()\n  [PATCH] libata: fix class handling in ata_bus_probe()\n  [PATCH] ahci: enable prefetching for PACKET commands\n  libata: turn on ATAPI by default\n  [PATCH] sata_sil24: lengthen softreset timeout\n  [PATCH] sata_sil24: exit early from softreset if SStatus reports no device\n  [PATCH] libata: fix missing classes[] initialization in ata_bus_probe()\n  [PATCH] libata: kill unused xfer_mode functions\n  [PATCH] libata: reimplement ata_set_mode() using xfer_mask helpers\n  [PATCH] libata: use xfer_mask helpers in ata_dev_set_mode()\n  [PATCH] libata: use ata_id_xfermask() in ata_dev_configure()\n  [PATCH] libata: add xfer_mask handling functions\n  [PATCH] libata: improve xfer mask constants and update ata_mode_string()\n  [PATCH] libata: rename ATA_FLAG_FLUSH_PIO_TASK to ATA_FLAG_FLUSH_PORT_TASK\n  [PATCH] libata: kill unused pio_task and packet_task\n  [PATCH] libata: convert pio_task and packet_task to port_task\n  [PATCH] libata: implement port_task\n  ...\n"
    },
    {
      "commit": "f0481730c827421cf1548bfd73c073c0f47f2907",
      "tree": "0d25ab7377afd270995f8c31d2953ffa32c8aa40",
      "parents": [
        "c4a1745aa09fc110afdefea0e5d025043e348bae",
        "ecb73774e5f5b5f635a70073086c3f57b4ca4ae6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:01:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 09:01:08 2006 -0800"
      },
      "message": "Merge kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb.git with fixups\n\nThis merges the DVB tree, but fixes up the history that had gotten\nscrewed up by a broken commit.\n\nThe history is fixed up by re-doing the commit properly (taking the\nresolve from the final result of the original), and then cherry-picking\nthe commits that followed the broken merge.\n\n* dvb: (190 commits)\n  V4L/DVB (3545): Fixed no_overlay option and quirks on saa7134 driver\n  V4L/DVB (3543): Fix Makefile to adapt to bt8xx/ conversion\n  V4L/DVB (3538): Bt8xx documentation update\n  V4L/DVB (3537a): Whitespace cleanup\n  V4L/DVB (3533): Add WSS (wide screen signalling) module parameters\n  V4L/DVB (3532): Moved duplicated code of ALPS BSRU6 tuner to a standalone file.\n  V4L/DVB (3530): Kconfig: remove VIDEO_AUDIO_DECODER\n  V4L/DVB (3529): Kconfig: add menu items for cs53l32a and wm8775 A/D converters\n  V4L/DVB (3528): Kconfig: fix ATSC frontend menu item names by manufacturer\n  V4L/DVB (3527): VIDEO_CPIA2 must depend on USB\n  V4L/DVB (3525): Kconfig: remove VIDEO_DECODER\n  V4L/DVB (3524): Kconfig: add menu items for saa7115 and saa7127\n  V4L/DVB (3494): Kconfig: select VIDEO_MSP3400 to build msp3400.ko\n  V4L/DVB (3522): Fixed a trouble with other PAL standards\n  V4L/DVB (3521): Avoid warnings at video-buf.c\n  V4L/DVB (3514): SAA7113 doesn\u0027t have auto std chroma detection mode\n  V4L/DVB (3513): Remove saa711x driver\n  V4L/DVB (3509): Make a needlessly global function static.\n  V4L/DVB (3506): Cinergy T2 dmx cleanup on disconnect\n  V4L/DVB (3504): Medion 7134: Autodetect second bridge chip\n  ...\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b05005772f34497eb2b7415a651fe785cbe70e16",
      "tree": "b176aeb7fa9baf69e77ddd83e844727490bfcf28",
      "parents": [
        "044f324f6ea5d55391db62fca6a295b2651cb946",
        "7705a8792b0fc82fd7d4dd923724606bbfd9fb20"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 08:52:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 21 08:52:18 2006 -0800"
      },
      "message": "Merge branch \u0027origin\u0027\n\nConflicts:\n\tDocumentation/video4linux/CARDLIST.cx88\n\tdrivers/media/video/cx88/Kconfig\n\tdrivers/media/video/em28xx/em28xx-video.c\n\tdrivers/media/video/saa7134/saa7134-dvb.c\n\nResolved as in the original merge by Mauro Carvalho Chehab\n"
    },
    {
      "commit": "f10b7897ee29649fa7f0ccdc8d859ccd6ce7dbfd",
      "tree": "345a25e1e1b2bcd647074844003d61b7d27e4e39",
      "parents": [
        "a5f8c473052bc693cdbe2f9ae4b424b993886ff5"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jan 25 22:34:01 2006 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Mar 21 20:14:08 2006 +1100"
      },
      "message": "[CRYPTO] api: Align tfm context as wide as possible\n\nSince tfm contexts can contain arbitrary types we should provide at least\nnatural alignment (__attribute__ ((__aligned__))) for them.  In particular,\nthis is needed on the Xscale which is a 32-bit architecture with a u64 type\nthat requires 64-bit alignment.  This problem was reported by Ronen Shitrit.\n\nThe crypto_tfm structure\u0027s size was 44 bytes on 32-bit architectures and\n80 bytes on 64-bit architectures.  So adding this requirement only means\nthat we have to add an extra 4 bytes on 32-bit architectures.\n\nOn i386 the natural alignment is 16 bytes which also benefits the VIA\nPadlock as it no longer has to manually align its context structure to\n128 bits.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "5e35941d990123f155b02d5663e51a24f816b6f3",
      "tree": "90499f3247e64210213d7b4da936f739d7a9711c",
      "parents": [
        "30ca3e376e82cc44488b1d377adfb10b5818548e"
      ],
      "author": {
        "name": "Jing Min Zhao",
        "email": "zhaojignmin@hotmail.com",
        "time": "Mon Mar 20 23:41:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 23:41:17 2006 -0800"
      },
      "message": "[NETFILTER]: Add H.323 conntrack/NAT helper\n\nSigned-off-by: Jing Min Zhao \u003czhaojignmin@hotmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fdeabdefb227be9aa932f59a23ddb47e003e643e",
      "tree": "79e3cddb546374bf2b0137bf1463e70746c4d436",
      "parents": [
        "8b42ec39264a1e7a508f5d80169a5fb137bcc833"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Mon Mar 20 22:58:21 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:58:21 2006 -0800"
      },
      "message": "[BRIDGE]: netfilter inline cleanup\n\nMove nf_bridge_alloc from header file to the one place it is\nused and optimize it.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4bf3902427a128455b8de299ff0918072b2e974",
      "tree": "5269cd4d84702a0a728b390e08242be01252d20d",
      "parents": [
        "e6f507196c2b50243beb09b1bfa4639f999d4d1e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 22:50:58 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:50:58 2006 -0800"
      },
      "message": "[DCCP] minisock: Rename struct dccp_options to struct dccp_minisock\n\nThis will later be included in struct dccp_request_sock so that we can\nhave per connection feature negotiation state while in the 3way\nhandshake, when we clone the DCCP_ROLE_LISTEN socket (in\ndccp_create_openreq_child) we\u0027ll just copy this state from\ndreq_minisock to dccps_minisock.\n\nAlso the feature negotiation and option parsing code will mostly touch\ndccps_minisock, which will simplify some stuff.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3fdadf7d27e3fbcf72930941884387d1f4936f04",
      "tree": "167072cf1e60b6b307610563614b435ff0caa52d",
      "parents": [
        "c750360938b403e6cc193d293cfbcb099dd6c60e"
      ],
      "author": {
        "name": "Dmitry Mishin",
        "email": "dim@openvz.org",
        "time": "Mon Mar 20 22:45:21 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:45:21 2006 -0800"
      },
      "message": "[NET]: {get|set}sockopt compatibility layer\n\nThis patch extends {get|set}sockopt compatibility layer in order to\nmove protocol specific parts to their place and avoid huge universal\nnet/compat.c file in the future.\n\nSigned-off-by: Dmitry Mishin \u003cdim@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbb042f9e1292434e3cacb90e67d8d381aeac5a9",
      "tree": "cc42f42232e56b68111cfebdc175197d8607bdd7",
      "parents": [
        "ecba320f2e95c9a0c35011d1ecb1db4419980536"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Mar 20 22:43:56 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:43:56 2006 -0800"
      },
      "message": "[NET]: Replace skb_pull/skb_postpull_rcsum with skb_pull_rcsum\n\nWe\u0027re now starting to have quite a number of places that do skb_pull\nfollowed immediately by an skb_postpull_rcsum.  We can merge these two\noperations into one function with skb_pull_rcsum.  This makes sense\nsince most pull operations on receive skb\u0027s need to update the\nchecksum.\n\nI\u0027ve decided to make this out-of-line since it is fairly big and the\nfast path where hardware checksums are enabled need to call\ncsum_partial anyway.\n\nSince this is a brand new function we get to add an extra check on the\nlen argument.  As it is most callers of skb_pull ignore its return\nvalue which essentially means that there is no check on the len\nargument.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4ea94ab3710eb2434abe2eab1a479c2dc01f8ac",
      "tree": "72e07ca7d2d5fe2de31b3f5a4e64fa411efdf18d",
      "parents": [
        "2c7946a7bf45ae86736ab3b43d0085e43947945c"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "steve@chygwyn.com",
        "time": "Mon Mar 20 22:42:39 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:42:39 2006 -0800"
      },
      "message": "[DECnet]: Endian annotation and fixes for DECnet.\n\nThe typedef for dn_address has been removed in favour of using __le16\nor __u16 directly as appropriate. All the DECnet header files are\nupdated accordingly.\n\nThe byte ordering of dn_eth2dn() and dn_dn2eth() are both changed\nsince just about all their callers wanted network order rather than\nhost order, so the conversion is now done in the functions themselves.\n\nSeveral missed endianess conversions have been picked up during the\nconversion process. The nh_gw field in struct dn_fib_info has been\nchanged from a 32 bit field to 16 bits as it ought to be.\n\nOne or two cases of using htons rather than dn_htons in the routing\ncode have been found and fixed.\n\nThere are still a few warnings to fix, but this patch deals with the\nimportant cases.\n\nSigned-off-by: Steven Whitehouse \u003csteve@chygwyn.com\u003e\nSigned-off-by: Patrick Caulfield \u003cpatrick@tykepenguin.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c7946a7bf45ae86736ab3b43d0085e43947945c",
      "tree": "b956f301033ebaefe8d2701b257edfd947f537f3",
      "parents": [
        "be33690d8fcf40377f16193c463681170eb6b295"
      ],
      "author": {
        "name": "Catherine Zhang",
        "email": "cxzhang@watson.ibm.com",
        "time": "Mon Mar 20 22:41:23 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:41:23 2006 -0800"
      },
      "message": "[SECURITY]: TCP/UDP getpeersec\n\nThis patch implements an application of the LSM-IPSec networking\ncontrols whereby an application can determine the label of the\nsecurity association its TCP or UDP sockets are currently connected to\nvia getsockopt and the auxiliary data mechanism of recvmsg.\n\nPatch purpose:\n\nThis patch enables a security-aware application to retrieve the\nsecurity context of an IPSec security association a particular TCP or\nUDP socket is using.  The application can then use this security\ncontext to determine the security context for processing on behalf of\nthe peer at the other end of this connection.  In the case of UDP, the\nsecurity context is for each individual packet.  An example\napplication is the inetd daemon, which could be modified to start\ndaemons running at security contexts dependent on the remote client.\n\nPatch design approach:\n\n- Design for TCP\nThe patch enables the SELinux LSM to set the peer security context for\na socket based on the security context of the IPSec security\nassociation.  The application may retrieve this context using\ngetsockopt.  When called, the kernel determines if the socket is a\nconnected (TCP_ESTABLISHED) TCP socket and, if so, uses the dst_entry\ncache on the socket to retrieve the security associations.  If a\nsecurity association has a security context, the context string is\nreturned, as for UNIX domain sockets.\n\n- Design for UDP\nUnlike TCP, UDP is connectionless.  This requires a somewhat different\nAPI to retrieve the peer security context.  With TCP, the peer\nsecurity context stays the same throughout the connection, thus it can\nbe retrieved at any time between when the connection is established\nand when it is torn down.  With UDP, each read/write can have\ndifferent peer and thus the security context might change every time.\nAs a result the security context retrieval must be done TOGETHER with\nthe packet retrieval.\n\nThe solution is to build upon the existing Unix domain socket API for\nretrieving user credentials.  Linux offers the API for obtaining user\ncredentials via ancillary messages (i.e., out of band/control messages\nthat are bundled together with a normal message).\n\nPatch implementation details:\n\n- Implementation for TCP\nThe security context can be retrieved by applications using getsockopt\nwith the existing SO_PEERSEC flag.  As an example (ignoring error\nchecking):\n\ngetsockopt(sockfd, SOL_SOCKET, SO_PEERSEC, optbuf, \u0026optlen);\nprintf(\"Socket peer context is: %s\\n\", optbuf);\n\nThe SELinux function, selinux_socket_getpeersec, is extended to check\nfor labeled security associations for connected (TCP_ESTABLISHED \u003d\u003d\nsk-\u003esk_state) TCP sockets only.  If so, the socket has a dst_cache of\nstruct dst_entry values that may refer to security associations.  If\nthese have security associations with security contexts, the security\ncontext is returned.\n\ngetsockopt returns a buffer that contains a security context string or\nthe buffer is unmodified.\n\n- Implementation for UDP\nTo retrieve the security context, the application first indicates to\nthe kernel such desire by setting the IP_PASSSEC option via\ngetsockopt.  Then the application retrieves the security context using\nthe auxiliary data mechanism.\n\nAn example server application for UDP should look like this:\n\ntoggle \u003d 1;\ntoggle_len \u003d sizeof(toggle);\n\nsetsockopt(sockfd, SOL_IP, IP_PASSSEC, \u0026toggle, \u0026toggle_len);\nrecvmsg(sockfd, \u0026msg_hdr, 0);\nif (msg_hdr.msg_controllen \u003e sizeof(struct cmsghdr)) {\n    cmsg_hdr \u003d CMSG_FIRSTHDR(\u0026msg_hdr);\n    if (cmsg_hdr-\u003ecmsg_len \u003c\u003d CMSG_LEN(sizeof(scontext)) \u0026\u0026\n        cmsg_hdr-\u003ecmsg_level \u003d\u003d SOL_IP \u0026\u0026\n        cmsg_hdr-\u003ecmsg_type \u003d\u003d SCM_SECURITY) {\n        memcpy(\u0026scontext, CMSG_DATA(cmsg_hdr), sizeof(scontext));\n    }\n}\n\nip_setsockopt is enhanced with a new socket option IP_PASSSEC to allow\na server socket to receive security context of the peer.  A new\nancillary message type SCM_SECURITY.\n\nWhen the packet is received we get the security context from the\nsec_path pointer which is contained in the sk_buff, and copy it to the\nancillary message space.  An additional LSM hook,\nselinux_socket_getpeersec_udp, is defined to retrieve the security\ncontext from the SELinux space.  The existing function,\nselinux_socket_getpeersec does not suit our purpose, because the\nsecurity context is copied directly to user space, rather than to\nkernel space.\n\nTesting:\n\nWe have tested the patch by setting up TCP and UDP connections between\napplications on two machines using the IPSec policies that result in\nlabeled security associations being built.  For TCP, we can then\nextract the peer security context using getsockopt on either end.  For\nUDP, the receiving end can retrieve the security context using the\nauxiliary data mechanism of recvmsg.\n\nSigned-off-by: Catherine Zhang \u003ccxzhang@watson.ibm.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "15d99e02babae8bc20b836917ace07d93e318149",
      "tree": "6a8941a3ef45f831161730aeee4a2fcc18cca78a",
      "parents": [
        "c1b1bce8527c2c3cac7e2520ca54b7c04281033e"
      ],
      "author": {
        "name": "Rick Jones",
        "email": "rick.jones2@hp.com",
        "time": "Mon Mar 20 22:40:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:40:29 2006 -0800"
      },
      "message": "[TCP]: sysctl to allow TCP window \u003e 32767 sans wscale\n\nBack in the dark ages, we had to be conservative and only allow 15-bit\nwindow fields if the window scale option was not negotiated.  Some\nancient stacks used a signed 16-bit quantity for the window field of\nthe TCP header and would get confused.\n\nThose days are long gone, so we can use the full 16-bits by default\nnow.\n\nThere is a sysctl added so that we can still interact with such old\nstacks\n\nSigned-off-by: Rick Jones \u003crick.jones2@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "abd596a4b68b6526c2676233e10602dd9660e9d7",
      "tree": "4122bd7fc36c18ffb762ea8ae6d5c794c1924222",
      "parents": [
        "59f1741e541bf4f6139599389610a70de49c3ad2"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Mon Mar 20 22:39:47 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:39:47 2006 -0800"
      },
      "message": "[IPV4] ARP: Alloc acceptance of unsolicited ARP via netdevice sysctl.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "57b47a53ec4a67691ba32cff5768e8d78fa6c67f",
      "tree": "d735ae4734f7b386eefa508a0629715f45808d1d",
      "parents": [
        "6613f82dd293b23f582a649b287fadbf8d23e6cf"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 20 22:35:41 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:35:41 2006 -0800"
      },
      "message": "[NET]: sem2mutex part 2\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "153330618691694af64f39fb56c9de051862380e",
      "tree": "45ccb622bf0d13f6a0a663ba8af39f9dc2c9122e",
      "parents": [
        "2d0817d11eaec57435feb61493331a763f732a2b"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Mon Mar 20 22:32:28 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:32:28 2006 -0800"
      },
      "message": "[NET]: dev_put/dev_hold cleanup\n\nGet rid of the old __dev_put macro that is just a hold over from pre 2.6\nkernel.  And turn dev_hold into an inline instead of a macro.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d9ab5ad12b0d865bdb1b750d81192d34465541e9",
      "tree": "0bc4b3e9139836b39e5cab3affe9090bae4b11c7",
      "parents": [
        "6cb153cab92a6dc8771d496b10a50cd066fa7f71"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Mon Mar 20 22:27:35 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:27:35 2006 -0800"
      },
      "message": "[TG3]: Add 5787 and 5754 basic support\n\nAdd basic support for 2 new chips 5787 and 5754.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "99cae7fca1311573f2777b8ceaa8a5abd6e9b04e",
      "tree": "61b5ad07d0f8fed37e3c3ab08eedf514226562d8",
      "parents": [
        "c5ecd62c25400a3c6856e009f84257d5bd03f03b"
      ],
      "author": {
        "name": "Alpt",
        "email": "alpt@freaknet.org",
        "time": "Mon Mar 20 22:26:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:26:17 2006 -0800"
      },
      "message": "[NET] rtnetlink: Add RTPROT entry for Netsukuku.\n\nThe Netsukuku daemon is using the same number to mark its routes, you\ncan see it here:\nhttp://hinezumilabs.org/cgi-bin/viewcvs.cgi/netsukuku/src/krnl_route.h?rev\u003dHEAD\u0026content-type\u003dtext/vnd.viewcvs-markup\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6756ae4b4e97aba48c042b4aa6b77a18f507d2cb",
      "tree": "05bf37711d782fb0089d474716026c44a454f89b",
      "parents": [
        "253aa11578c1b89757282430891bb66ae5300092"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Mon Mar 20 22:23:58 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:23:58 2006 -0800"
      },
      "message": "[NET]: Convert RTNL to mutex.\n\nThis patch turns the RTNL from a semaphore to a new 2.6.16 mutex and\ngets rid of some of the leftover legacy.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ac81ae34ec8898e7eb1388fe21e3cee7b626a88",
      "tree": "a12010186c97a515d7484c827df030cd11ac4911",
      "parents": [
        "65a3980e6b14d591e3b8f5cdc7219be99e3003a4"
      ],
      "author": {
        "name": "David Basden",
        "email": "davidb-irda@rcpt.to",
        "time": "Mon Mar 20 22:21:10 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:21:10 2006 -0800"
      },
      "message": "[IRDA]: TOIM3232 dongle support\n\nHere goes a patch for supporting TOIM3232 based serial IrDA dongles.\nThe code is based on the tekram dongle code.\n\nIt\u0027s been tested with a TOIM3232 based IRWave 320S dongle. It may work\nfor TOIM4232 dongles, although it\u0027s not been tested.\n\nSigned-off-by: David Basden \u003cdavidb-irda@rcpt.to\u003e\nSigned-off-by: Samuel Ortiz \u003csamuel.ortiz@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0e7b13685f9a06949ea3070c97c0f0085a08cd37",
      "tree": "3ba0a11d61dc2dd64d7a93bb5cd70d58a46fec39",
      "parents": [
        "1d541ddd74802cfa0eb8a3864668851f6cd79bdf"
      ],
      "author": {
        "name": "John Heffner",
        "email": "jheffner@psc.edu",
        "time": "Mon Mar 20 21:32:58 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:32:58 2006 -0800"
      },
      "message": "[TCP] mtu probing: move tcp-specific data out of inet_connection_sock\n\nThis moves some TCP-specific MTU probing state out of\ninet_connection_sock back to tcp_sock.\n\nSigned-off-by: John Heffner \u003cjheffner@psc.edu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "231d06ae826664b83369166449144304859a62fa",
      "tree": "1c761b91405573f4e787454b454ead8354c3ba23",
      "parents": [
        "2e1f47c74c26a591fc490eb339f1b3167361158b"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Mon Mar 20 21:28:35 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:28:35 2006 -0800"
      },
      "message": "[NET]: Uninline kfree_skb and allow NULL argument\n\no Uninline kfree_skb, which saves some 15k of object code on my notebook.\n\no Allow kfree_skb to be called with a NULL argument.\n\n  Subsequent patches can remove conditional from drivers and further\n  reduce source and object size.\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "4bf07ef3fd5db2df7d1899fcf9c67d2263ead2e2"
}
