)]}'
{
  "log": [
    {
      "commit": "591eb85ecd7e6eb8596c6129ae074e16636b99f4",
      "tree": "535fb7e9bc29113ff62fd70b0dcd8ad197ab51e2",
      "parents": [
        "4658f79bec0b51222e769e328c2923f39f3bda77",
        "3a2916aa289504d694072a98876d23ca31d6401e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 17:32:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 17:32:09 2006 -0800"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n\n* master.kernel.org:/home/rmk/linux-2.6-arm: (45 commits)\n  [ARM] 3389/1: typo and grammar fix\n  [ARM] 3386/1: AT91RM9200 Clock update\n  [ARM] 3384/1: AT91RM9200: Timer\n  [ARM] 3382/1: ixp2000: unify defconfigs\n  [ARM] 3381/1: ixp2000: fix slowport write timing control register fields\n  [ARM] 3380/1: ixp2000: simplify ixdp2x00_master_npu() check\n  [ARM] 3379/1: ixp2000: use generic 8250 debug macros\n  [ARM] 3378/1: ixp2000: fix gpio interrupt handling\n  [ARM] Quieten spurious IRQ detection\n  [ARM] Use kcalloc to allocate counter_config array rather than kmalloc\n  [ARM] Oprofile: dynamically allocate counter_config\n  [ARM] Oprofile: Convert semaphore to mutex\n  [ARM] 3376/2: S3C2410 - update defconfig\n  [ARM] 3375/1: S3C2440 - fix osiris machine build\n  [ARM] 3374/1: ep93xx: gpio interrupt support\n  [ARM] 3361/1: S3C24XX - add USB bus clock source\n  [ARM] 3360/1: S3C2440 - add set rate methods and camera clock\n  [ARM] 3359/1: S3C24XX - add support for clk_set_rate\n  [ARM] Convert kmalloc+memset to kzalloc\n  [ARM] 3373/1: move uengine loader to arch/arm/common\n  ...\n"
    },
    {
      "commit": "4658f79bec0b51222e769e328c2923f39f3bda77",
      "tree": "3b09b794cde1164adc606861ddd3df6ddeb94ce2",
      "parents": [
        "f0c8bbfa154f4481623a4478b0ae94a6ceeaa026"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Mar 22 21:07:03 2006 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:56:53 2006 -0500"
      },
      "message": "[PATCH] ahci: add softreset\n\nNow that libata is smart enought to handle both soft and hard resets,\nadd softreset method.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f0c8bbfa154f4481623a4478b0ae94a6ceeaa026",
      "tree": "b39c25092a6a13c2c7c60234b50503f23571ef11",
      "parents": [
        "67951aded31a1a736c1f0f6e8317677ea6c21ee1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Mar 22 20:48:18 2006 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:56:53 2006 -0500"
      },
      "message": "[PATCH] libata: do not ignore PIO-only devices\n\nAs libata now can do PIO, don\u0027t ignore PIO-only devices.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "67951aded31a1a736c1f0f6e8317677ea6c21ee1",
      "tree": "a2472bd37d14326ea79f1ca4310620f4fd0c2560",
      "parents": [
        "f4b15fefb38fb4942d85247854660bc8e02641a7"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Mar 22 15:55:54 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:55:41 2006 -0500"
      },
      "message": "[PATCH] libata: Symbol exports\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f4b15fefb38fb4942d85247854660bc8e02641a7",
      "tree": "800703e620361be4835068056451c2ae913c3114",
      "parents": [
        "09c7ad79dc62c499bb03d1ee92f838db2fc776c5"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Mar 22 15:54:04 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:55:41 2006 -0500"
      },
      "message": "[PATCH] Update libata DMA blacklist to cover versions, and resync with IDE layer\n\nNot much to say here except that some drives have fixed and bad firmware\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "09c7ad79dc62c499bb03d1ee92f838db2fc776c5",
      "tree": "70a17d139824c671f898c2cda7babeb1c7860636",
      "parents": [
        "7c74ffd072fbe44b6039223982f2dc76840ac4f5"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Mar 22 15:52:40 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:55:40 2006 -0500"
      },
      "message": "[PATCH] libata: Fix a drive detection problem\n\nThe current code follows the spec but uses an overlong delay. This would\nbe great if the hardware did. Several vendors however forget the D7\npulldown. Fortunately 0xFF isnt a sane reset state so we can use it to\nskip detection as is done in drivers/ide. (ie this is a tested solution\nover a long time)\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "7c74ffd072fbe44b6039223982f2dc76840ac4f5",
      "tree": "d769cfcabc52873b45041170c0320b5b04ac58b3",
      "parents": [
        "f01c18456993bab43067b678f56c87ca954aa43b"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Mar 22 15:47:34 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:55:40 2006 -0500"
      },
      "message": "[PATCH] libata: note missing posting in mmio cmd write\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\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": "3a2916aa289504d694072a98876d23ca31d6401e",
      "tree": "cd22ef3df480d85920b3233286b4f125d5a73b8d",
      "parents": [
        "69b648a200b27a7c8ea92993bf5b4d40e83b5403"
      ],
      "author": {
        "name": "Erik Hovland",
        "email": "erik@hovland.org",
        "time": "Wed Mar 22 21:02:11 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Mar 22 21:02:11 2006 +0000"
      },
      "message": "[ARM] 3389/1: typo and grammar fix\n\nPatch from Erik Hovland\n\nI found a typo and what seems to be a run-on sentence in\narch/arm/common/dmabounce.c\n\nThis patch corrects both.\n\nSigned-off-by: Erik Hovland \u003cerik@hovland.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "69b648a200b27a7c8ea92993bf5b4d40e83b5403",
      "tree": "0ddc77b61b5f822424fe6dfa66a16785986d87b9",
      "parents": [
        "39806805de0314d5847bfd6d046ad7d4407ccd46"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Wed Mar 22 20:14:14 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Mar 22 20:14:14 2006 +0000"
      },
      "message": "[ARM] 3386/1: AT91RM9200 Clock update\n\nPatch from Andrew Victor\n\nThis patch includes a few changes to the clock support on the\nAT91RM9200.\n\n1. Added definitions for Ethernet, MMC, TWI, USARTs, and SPI peripheral\nclocks.\n\n2. Replaced some hard-coded hex values with the text definitions in\nat91rm9200_sys.h.\n\n3. If the USB96M bit is set for PLLB, then the rate of PLLB is not\naffected but only the USB Host/Device clocks which are derived from it.\nIssue reported by Sergei Sharonov.\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "39806805de0314d5847bfd6d046ad7d4407ccd46",
      "tree": "6a05969531953e3831650cde71a9143571472456",
      "parents": [
        "112d02e8d556ea0512afcfc3b0110c87ec9eb5f9"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Wed Mar 22 20:14:13 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Mar 22 20:14:13 2006 +0000"
      },
      "message": "[ARM] 3384/1: AT91RM9200: Timer\n\nPatch from Andrew Victor\n\nIf the timer interrupt is ever significantly delayed (or after the\nsystem was suspended), the system could spin incrementing the time for\ntoo long.\nThe fix is to replace the \"do {} while\" with a \"while {}\".\n\nOrignal patch by Savin Zlobec and Peter Menzebach.\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "112d02e8d556ea0512afcfc3b0110c87ec9eb5f9",
      "tree": "c83465c47ba162fdb8126b323c690c662a29a6c8",
      "parents": [
        "a04f2d9d3a08002a7712f18fcec43e2c4151d953"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Wed Mar 22 20:14:12 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Mar 22 20:14:12 2006 +0000"
      },
      "message": "[ARM] 3382/1: ixp2000: unify defconfigs\n\nPatch from Lennert Buytenhek\n\nUnify the five existing ixp2000 defconfigs into one defconfig.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "a04f2d9d3a08002a7712f18fcec43e2c4151d953",
      "tree": "d65e921b8f64b4ea7b61bc61db931892a680243d",
      "parents": [
        "709eb502ebcfcca8a3a36bab3bca3bd78caa53b1"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Wed Mar 22 20:14:11 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Mar 22 20:14:11 2006 +0000"
      },
      "message": "[ARM] 3381/1: ixp2000: fix slowport write timing control register fields\n\nPatch from Lennert Buytenhek\n\nThe original version of the chip docs had the PW and SU fields in\nthe slowport write timing control register accidentally reversed.\nThis is mentioned in the errata (documentation change #4) and fixed\nin newer docs.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "709eb502ebcfcca8a3a36bab3bca3bd78caa53b1",
      "tree": "b907252f28ea024f5b41da265a7c6d1417197780",
      "parents": [
        "e99053e07514e514611167ad648c65c87982c4d9"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Wed Mar 22 20:14:11 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Mar 22 20:14:11 2006 +0000"
      },
      "message": "[ARM] 3380/1: ixp2000: simplify ixdp2x00_master_npu() check\n\nPatch from Lennert Buytenhek\n\nOn the IXDP2x00s, the NPU that is PCI master is always the egress\n(i.e. \u0027master\u0027) NPU.  At least on the IXDP2800, both NPUs have flash,\nso the ixp2000_has_flash() check in ixdp2x00_master_npu() is useless.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "e99053e07514e514611167ad648c65c87982c4d9",
      "tree": "42a53730832060d917b921f3c7810e54d245d78b",
      "parents": [
        "bd115ea007e671e96b8b53c2e0e885103d39fd40"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Wed Mar 22 20:14:09 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Mar 22 20:14:09 2006 +0000"
      },
      "message": "[ARM] 3379/1: ixp2000: use generic 8250 debug macros\n\nPatch from Lennert Buytenhek\n\nThe xscale UART in the ixp2000 is basically just an 8250 UART (with\nsome extra bits and pieces), so we can use the generic 8250 debug\nmacros on the ixp2000.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "bd115ea007e671e96b8b53c2e0e885103d39fd40",
      "tree": "e33f6a612f0a4dcb447d2bd3ce4678f928d94838",
      "parents": [
        "bec1b8193651ea4394cc4d6e18152cb83e735f93"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Wed Mar 22 20:14:09 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Mar 22 20:14:09 2006 +0000"
      },
      "message": "[ARM] 3378/1: ixp2000: fix gpio interrupt handling\n\nPatch from Lennert Buytenhek\n\nixp2000 used to initially mark GPIO interrupts as invalid, and not\nmark them valid until set_irq_type() was called, but this doesn\u0027t\nwork if you want to use request_irq() with the SA_TRIGGER_* flags.\n\nSo, just mark the GPIO interrupts valid from the beginning.  We\nconfigure GPIOs as inputs when set_irq_type() is called anyway, so\nthis shouldn\u0027t be a problem.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\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": "d04ef3a795b3b7b376a02713ed5e211e9ae1f917",
      "tree": "837da034751a2fc1be0fc5a105c218d41a498eb6",
      "parents": [
        "36177ba655c238e33400cc2837a28720b62784bd",
        "dcc1e8dd88d4bc55e32a26dad7633d20ffe606d2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:56:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 10:56:57 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  [SPARC64]: Add a secondary TSB for hugepage mappings.\n  [SPARC]: Respect vm_page_prot in io_remap_page_range().\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": "7cae7e26f245151b9ccad868bf2edf8c8048d307",
      "tree": "db785f2a471c5b97db2551402e067b9559a8989d",
      "parents": [
        "cf01efd098597f7ee88a61e645afacba987c4531"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 22 00:09:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] SELinux: add slab cache for inode security struct\n\nAdd a slab cache for the SELinux inode security struct, one of which is\nallocated for every inode instantiated by the system.\n\nThe memory savings are considerable.\n\nOn 64-bit, instead of the size-128 cache, we have a slab object of 96\nbytes, saving 32 bytes per object.  After booting, I see about 4000 of\nthese and then about 17,000 after a kernel compile.  With this patch, we\nsave around 530KB of kernel memory in the latter case.  On 32-bit, the\nsavings are about half of this.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cf01efd098597f7ee88a61e645afacba987c4531",
      "tree": "8602df509dc2a2b067063f40084c83a4f698fb15",
      "parents": [
        "edb20fb5be2ff6943920aca4ccab0f4fdacddb9c"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 22 00:09:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] SELinux: cleanup stray variable in selinux_inode_init_security()\n\nRemove an unneded pointer variable in selinux_inode_init_security().\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "edb20fb5be2ff6943920aca4ccab0f4fdacddb9c",
      "tree": "6961017d5b02a6320b85826c33ccc81017c2e58f",
      "parents": [
        "d6aafa65354cd2dbb089ab9e7dc618f22230fe32"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 22 00:09:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] SELinux: fix hard link count for selinuxfs root directory\n\nA further fix is needed for selinuxfs link count management, to ensure that\nthe count is correct for the parent directory when a subdirectory is\ncreated.  This is only required for the root directory currently, but the\ncode has been updated for the general case.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6aafa65354cd2dbb089ab9e7dc618f22230fe32",
      "tree": "b274daf127ac8500229754d9841c8af1547bd66f",
      "parents": [
        "253a8b1db1af146d3a7eef0f3626781df12c7141"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 22 00:09:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] selinuxfs cleanups: sel_make_avc_files\n\nFix copy \u0026 paste error in sel_make_avc_files(), removing a supurious call to\nd_genocide() in the error path.  All of this will be cleaned up by\nkill_litter_super().\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "253a8b1db1af146d3a7eef0f3626781df12c7141",
      "tree": "9aea4b9864a3dc12df89c73e5cf156bd3e7932ad",
      "parents": [
        "161ce45a8a34ba81673f60c603e6fc6d37d99c8f"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 22 00:09:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] selinuxfs cleanups: sel_make_bools\n\nRemove the call to sel_make_bools() from sel_fill_super(), as policy needs to\nbe loaded before the boolean files can be created.  Policy will never be\nloaded during sel_fill_super() as selinuxfs is kernel mounted during init and\nthe only means to load policy is via selinuxfs.\n\nAlso, the call to d_genocide() on the error path of sel_make_bools() is\nincorrect and replaced with sel_remove_bools().\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "161ce45a8a34ba81673f60c603e6fc6d37d99c8f",
      "tree": "7e3851140870164beb585f32a70e2dc81668f391",
      "parents": [
        "cde174a885821b5eee7e00c8a9a426c9c8186a29"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 22 00:09:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] selinuxfs cleanups: sel_fill_super exit path\n\nUnify the error path of sel_fill_super() so that all errors pass through the\nsame point and generate an error message.  Also, removes a spurious dput() in\nthe error path which breaks the refcounting for the filesystem\n(litter_kill_super() will correctly clean things up itself on error).\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cde174a885821b5eee7e00c8a9a426c9c8186a29",
      "tree": "95c36020357f26d6a7ebfc3cc9d6d6ac8d250844",
      "parents": [
        "40e906f8224966ef65756cc75f9999ea2de0523d"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 22 00:09:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] selinuxfs cleanups: use sel_make_dir()\n\nUse existing sel_make_dir() helper to create booleans directory rather than\nduplicating the logic.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "40e906f8224966ef65756cc75f9999ea2de0523d",
      "tree": "6e72a24a93d1f36ae5d89e81d2020cd3d8a0bd9b",
      "parents": [
        "68bdcf28a8d245208a02dc9caa60fe13cc1b0ea8"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 22 00:09:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] selinuxfs cleanups: fix hard link count\n\nFix the hard link count for selinuxfs directories, which are currently one\nshort.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "68bdcf28a8d245208a02dc9caa60fe13cc1b0ea8",
      "tree": "4d50f43597d677c7b1b88b10696cb2358abaf83e",
      "parents": [
        "bb0030797f55c9996ea1cebd16b65750ceb7e4fd"
      ],
      "author": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Wed Mar 22 00:09:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:07 2006 -0800"
      },
      "message": "[PATCH] selinux: simplify sel_read_bool\n\nSimplify sel_read_bool to use the simple_read_from_buffer helper, like the\nother selinuxfs functions.\n\nSigned-off-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bb0030797f55c9996ea1cebd16b65750ceb7e4fd",
      "tree": "58256f9840bf05f141d986b6329a08e38065616a",
      "parents": [
        "8aad38752e81d1d4de67e3d8e2524618ce7c9276"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 22 00:09:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: security/\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: Stephen Smalley \u003csds@epoch.ncsc.mil\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8aad38752e81d1d4de67e3d8e2524618ce7c9276",
      "tree": "5813d3f31133313a5bcd77cb3298f7cb26b814ed",
      "parents": [
        "b20a35035f983f4ac7e29c4a68f30e43510007e0"
      ],
      "author": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Wed Mar 22 00:09:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] selinux: Disable automatic labeling of new inodes when no policy is loaded\n\nThis patch disables the automatic labeling of new inodes on disk\nwhen no policy is loaded.\n\nDiscussion is here:\nhttps://bugzilla.redhat.com/bugzilla/show_bug.cgi?id\u003d180296\n\nIn short, we\u0027re changing the behavior so that when no policy is loaded,\nSELinux does not label files at all.  Currently it does add an \u0027unlabeled\u0027\nlabel in this case, which we\u0027ve found causes problems later.\n\nSELinux always maintains a safe internal label if there is none, so with this\npatch, we just stick with that and wait until a policy is loaded before adding\na persistent label on disk.\n\nThe effect is simply that if you boot with SELinux enabled but no policy\nloaded and create a file in that state, SELinux won\u0027t try to set a security\nextended attribute on the new inode on the disk.  This is the only sane\nbehavior for SELinux in that state, as it cannot determine the right label to\nassign in the absence of a policy.  That state usually doesn\u0027t occur, but the\nrawhide installer seemed to be misbehaving temporarily so it happened to show\nup on a test install.\n\nSigned-off-by:  Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\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": "442295c94bf650221af3ef20fc68fa3e93876818",
      "tree": "32d5cae69596ec7729172901487cc08a357448f1",
      "parents": [
        "fdb7cc59084ba7eef935e4e40aaaf538ee34c625"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Wed Mar 22 00:09:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] mm: slab cache interleave rotor fix\n\nThe alien cache rotor in mm/slab.c assumes that the first online node is\nnode 0.  Eventually for some archs, especially with hotplug, this will no\nlonger be true.\n\nFix the interleave rotor to handle the general case of node numbering.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-by: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fdb7cc59084ba7eef935e4e40aaaf538ee34c625",
      "tree": "d31bd847f2d9ea3f5b2a632c718b53797172af88",
      "parents": [
        "9b65ef59d42a56fa1358958ede77aaa5bac385a8"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Wed Mar 22 00:09:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] mm: hugetlb alloc_fresh_huge_page bogus node loop fix\n\nFix bogus node loop in hugetlb.c alloc_fresh_huge_page(), which was\nassuming that nodes are numbered contiguously from 0 to num_online_nodes().\nOnce the hotplug folks get this far, that will be false.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-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": "9b65ef59d42a56fa1358958ede77aaa5bac385a8",
      "tree": "c6f83951e399cf52784f6d200c9588e4c41d6461",
      "parents": [
        "879336c3930ae9273ea1c45214cb8adae0ce494a"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "mita@miraclelinux.com",
        "time": "Wed Mar 22 00:09:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] fix swap cluster offset\n\nWhen we\u0027ve allocated SWAPFILE_CLUSTER pages, -\u003ecluster_next should be the\nfirst index of swap cluster.  But current code probably sets it wrong offset.\n\nSigned-off-by: Akinobu Mita \u003cmita@miraclelinux.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": "879336c3930ae9273ea1c45214cb8adae0ce494a",
      "tree": "24fbb8aff19f6747b6cc40cb05cbe9f4c21f85e3",
      "parents": [
        "b18e7e654d7af741d2bf34a90dc34128d0217fea"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Mar 22 00:09:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] drain_node_pages: interrupt latency reduction / optimization\n\n1. Only disable interrupts if there is actually something to free\n\n2. Only dirty the pcp cacheline if we actually freed something.\n\n3. Disable interrupts for each single pcp and not for cleaning\n  all the pcps in all zones of a node.\n\ndrain_node_pages is called every 2 seconds from cache_reap. This\nfix should avoid most disabling of interrupts.\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": "b18e7e654d7af741d2bf34a90dc34128d0217fea",
      "tree": "04cbc067da970b8b24c8b5d48a1e7d9520f92b06",
      "parents": [
        "1b55253a7f95adc82eb20937b57b3e3e32ba65df"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Wed Mar 22 00:09:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] slab: fix drain_array() so that it works correctly with the shared_array\n\nThe list_lock also protects the shared array and we call drain_array() with\nthe shared array.  Therefore we cannot go as far as I wanted to but have to\ntake the lock in a way so that it also protects the array_cache in\ndrain_pages.\n\n(Note: maybe we should make the array_cache locking more consistent?  I.e.\nalways take the array cache lock for shared arrays and disable interrupts\nfor the per cpu arrays?)\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": "1b55253a7f95adc82eb20937b57b3e3e32ba65df",
      "tree": "5ab3f9e6efa5e2ed2a39843b95dcf95ddb89592a",
      "parents": [
        "aab2207cf8d9c343b6b5f0e4d27e1732f8618d14"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Wed Mar 22 00:09:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:05 2006 -0800"
      },
      "message": "[PATCH] slab: remove drain_array_locked\n\nRemove drain_array_locked and use that opportunity to limit the time the l3\nlock is taken further.\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": "aab2207cf8d9c343b6b5f0e4d27e1732f8618d14",
      "tree": "deb851a556ac7d2339a5bc83985a33fe126321ee",
      "parents": [
        "35386e3b0f876bf194982f48f027af0c216499ce"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Wed Mar 22 00:09:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:05 2006 -0800"
      },
      "message": "[PATCH] slab: make drain_array more universal by adding more parameters\n\nAnd a parameter to drain_array to control the freeing of all objects and\nthen use drain_array() to replace instances of drain_array_locked with\ndrain_array.  Doing so will avoid taking locks in those locations if the\narrays are empty.\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": "35386e3b0f876bf194982f48f027af0c216499ce",
      "tree": "9fb79545f6797422f5cf666b0e65a4bb1882ee1d",
      "parents": [
        "248a0301e703cbf781aa02a91bcfc6da75870dd7"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Wed Mar 22 00:09:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:05 2006 -0800"
      },
      "message": "[PATCH] slab: cache_reap(): further reduction in interrupt holdoff\n\ncache_reap takes the l3-\u003elist_lock (disabling interrupts) unconditionally\nand then does a few checks and maybe does some cleanup.  This patch makes\ncache_reap() only take the lock if there is work to do and then the lock is\ntaken and released for each cleaning action.\n\nThe checking of when to do the next reaping is done without any locking and\nbecomes racy.  Should not matter since reaping can also be skipped if the\nslab mutex cannot be acquired.\n\nThe same is true for the touched processing.  If we get this wrong once in\nawhile then we will mistakenly clean or not clean the shared cache.  This\nwill impact performance slightly.\n\nNote that the additional drain_array() function introduced here will fall\nout in a subsequent patch since array cleaning will now be very similar\nfrom all callers.\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\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "248a0301e703cbf781aa02a91bcfc6da75870dd7",
      "tree": "74168da24983ec948fb25f92c2b3a1b9d76a5f13",
      "parents": [
        "d5d4b0aa4e1430d73050babba999365593bdb9d2"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 22 00:09:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:05 2006 -0800"
      },
      "message": "[PATCH] mm: make shrink_all_memory try harder\n\nMake shrink_all_memory() repeat the attempts to free more memory if there\nseems to be no pages to free.\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": "d5d4b0aa4e1430d73050babba999365593bdb9d2",
      "tree": "67199d156f61217f9493d31aa4a9bfbb9c97412e",
      "parents": [
        "bba1e9b2111b14625f670bd07e57fd7ed57ce804"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Wed Mar 22 00:09:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:04 2006 -0800"
      },
      "message": "[PATCH] optimize follow_hugetlb_page\n\nfollow_hugetlb_page() walks a range of user virtual address and then fills\nin list of struct page * into an array that is passed from the argument\nlist.  It also gets a reference count via get_page().  For compound page,\nget_page() actually traverse back to head page via page_private() macro and\nthen adds a reference count to the head page.  Since we are doing a virt to\npte look up, kernel already has a struct page pointer into the head page.\nSo instead of traverse into the small unit page struct and then follow a\nlink back to the head page, optimize that with incrementing the reference\ncount directly on the head page.\n\nThe benefit is that we don\u0027t take a cache miss on accessing page struct for\nthe corresponding user address and more importantly, not to pollute the\ncache with a \"not very useful\" round trip of pointer chasing.  This adds a\nmoderate performance gain on an I/O intensive database transaction\nworkload.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bba1e9b2111b14625f670bd07e57fd7ed57ce804",
      "tree": "fc46b8702597fafde7d1a550dcbc948f173303ad",
      "parents": [
        "42b88befd6e0dae1a5fe04c03925037fa890e1f3"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Wed Mar 22 00:09:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:04 2006 -0800"
      },
      "message": "[PATCH] convert hugetlbfs_counter to atomic\n\nImplementation of hugetlbfs_counter() is functionally equivalent to\natomic_inc_return().  Use the simpler atomic form.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\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": "4866920b93fd7d5b520278c3c76e6f4d5a352d81",
      "tree": "c4b8642c83e11af6d8e57ab35dc479f2c1a651d0",
      "parents": [
        "9da61aef0fd5b17dd4bf4baf33db12c470def774"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Mar 22 00:08:58 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:04 2006 -0800"
      },
      "message": "[PATCH] hugepage: Fix hugepage logic in free_pgtables() harder\n\nTurns out the hugepage logic in free_pgtables() was doubly broken.  The\nloop coalescing multiple normal page VMAs into one call to free_pgd_range()\nhad an off by one error, which could mean it would coalesce one hugepage\nVMA into the same bundle (checking \u0027vma\u0027 not \u0027next\u0027 in the loop).  I\ntransferred this bug into the new is_vm_hugetlb_page() based version.\nHere\u0027s the fix.\n\nThis one didn\u0027t bite on powerpc previously for the same reason the\nis_hugepage_only_range() problem didn\u0027t: powerpc\u0027s hugetlb_free_pgd_range()\nis identical to free_pgd_range().  It didn\u0027t bite on ia64 because the\nhugepage region is distant enough from any other region that the separated\nPMD_SIZE distance test would always prevent coalescing the two together.\n\nNo libhugetlbfs testsuite regressions (ppc64, POWER5).\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": "3935baa9bcda3ccaee4f7849f5157d316e34412e",
      "tree": "45f6d064693a91171c57159acac43822cae6e129",
      "parents": [
        "79ac6ba40eb8d70f0d204e98ae9b63280ad1018c"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Mar 22 00:08:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] hugepage: serialize hugepage allocation and instantiation\n\nCurrently, no lock or mutex is held between allocating a hugepage and\ninserting it into the pagetables / page cache.  When we do go to insert the\npage into pagetables or page cache, we recheck and may free the newly\nallocated hugepage.  However, since the number of hugepages in the system\nis strictly limited, and it\u0027s usualy to want to use all of them, this can\nstill lead to spurious allocation failures.\n\nFor example, suppose two processes are both mapping (MAP_SHARED) the same\nhugepage file, large enough to consume the entire available hugepage pool.\nIf they race instantiating the last page in the mapping, they will both\nattempt to allocate the last available hugepage.  One will fail, of course,\nreturning OOM from the fault and thus causing the process to be killed,\ndespite the fact that the entire mapping can, in fact, be instantiated.\n\nThe patch fixes this race by the simple method of adding a (sleeping) mutex\nto serialize the hugepage fault path between allocation and insertion into\npagetables and/or page cache.  It would be possible to avoid the\nserialization by catching the allocation failures, waiting on some\ncondition, then rechecking to see if someone else has instantiated the page\nfor us.  Given the likely frequency of hugepage instantiations, it seems\nvery doubtful it\u0027s worth the extra complexity.\n\nThis patch causes no regression on the libhugetlbfs testsuite, and one\ntest, which can trigger this race now passes where it previously failed.\n\nActually, the test still sometimes fails, though less often and only as a\nshmat() failure, rather processes getting OOM killed by the VM.  The dodgy\nheuristic tests in fs/hugetlbfs/inode.c for whether there\u0027s enough hugepage\nspace aren\u0027t protected by the new mutex, and would be ugly to do so, so\nthere\u0027s still a race there.  Another patch to replace those tests with\nsomething saner for this reason as well as others coming...\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": "79ac6ba40eb8d70f0d204e98ae9b63280ad1018c",
      "tree": "522d835dbdc6b6efe6b834f3f1f9a21a8ba161e5",
      "parents": [
        "8f860591ffb29738cf5539b6fbf27f50dcdeb380"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Mar 22 00:08:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] hugepage: Small fixes to hugepage clear/copy path\n\nMove the loops used in mm/hugetlb.c to clear and copy hugepages to their\nown functions for clarity.  As we do so, we add some checks of need_resched\n- we are, after all copying megabytes of memory here.  We also add\nmight_sleep() accordingly.  We generally dropped locks around the clear and\ncopy, already but not everyone has PREEMPT enabled, so we should still be\nchecking explicitly.\n\nFor this to work, we need to remove the clear_huge_page() from\nalloc_huge_page(), which is called with the page_table_lock held in the COW\npath.  We move the clear_huge_page() to just after the alloc_huge_page() in\nthe hugepage no-page path.  In the COW path, the new page is about to be\ncopied over, so clearing it was just a waste of time anyway.  So as a side\neffect we also fix the fact that we held the page_table_lock for far too\nlong in this path by calling alloc_huge_page() under it.\n\nIt causes no regressions on the libhugetlbfs testsuite (ppc64, POWER5).\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": "aed75ff3caafce404d9be7f0c088716375be5279",
      "tree": "15e7165969ff533b73e29a4ee0d4b7c889ef1d29",
      "parents": [
        "a564da3964db3256069190c2ae95069143ac37fb"
      ],
      "author": {
        "name": "Steven Pratt",
        "email": "slpratt@austin.ibm.com",
        "time": "Wed Mar 22 00:08:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] readahead: fix initial window size calculation\n\nThe current current get_init_ra_size is not optimal across different IO\nsizes and max_readahead values.  Here is a quick summary of sizes computed\nunder current design and under the attached patch.  All of these assume 1st\nIO at offset 0, or 1st detected sequential IO.\n\n\t32k max, 4k request\n\n\told         new\n\t-----------------\n\t 8k        8k\n\t16k       16k\n\t32k       32k\n\n\t128k max, 4k request\n\told         new\n\t-----------------\n\t32k         16k\n\t64k         32k\n\t128k        64k\n\t128k       128k\n\n\t128k max, 32k request\n\told         new\n\t-----------------\n\t32k         64k    \u003c-----\n\t64k        128k\n\t128k       128k\n\n\t512k max, 4k request\n\told         new\n\t-----------------\n\t4k         32k     \u003c----\n\t16k        64k\n\t64k       128k\n\t128k      256k\n\t512k      512k\n\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Steven Pratt \u003cslpratt@austin.ibm.com\u003e\nCc: Ram Pai \u003clinuxram@us.ibm.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a564da3964db3256069190c2ae95069143ac37fb",
      "tree": "b7b9d66c1d6dde82db23222b16b0296013b1c3db",
      "parents": [
        "d15c023b44e5d323f1f4130b85d29f08e43433b1"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Mar 22 00:08:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] readahead: -\u003eprev_page can overrun the ahead window\n\nIf get_next_ra_size() does not grow fast enough, -\u003eprev_page can overrun\nthe ahead window.  This means the caller will read the pages from\n-\u003eahead_start + -\u003eahead_size to -\u003eprev_page synchronously.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Steven Pratt \u003cslpratt@austin.ibm.com\u003e\nCc: Ram Pai \u003clinuxram@us.ibm.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d15c023b44e5d323f1f4130b85d29f08e43433b1",
      "tree": "f7153643b876b25f66e6e33ab2bbc670ba05a7f7",
      "parents": [
        "6e5ef1a96e6e3b123da56292bc35017c8c401491"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Wed Mar 22 00:08:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:02 2006 -0800"
      },
      "message": "[PATCH] shmem: inline to avoid warning\n\nshmem.c was named and shamed in Jesper\u0027s \"Building 100 kernels\" warnings:\nshmem_parse_mpol is only used when CONFIG_TMPFS parses mount options; and\nonly called from that one site, so mark it inline like its non-NUMA stub.\n\nSigned-off-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": "6e5ef1a96e6e3b123da56292bc35017c8c401491",
      "tree": "db9532c53013bccd7ac9d186784bbc6fd343bca4",
      "parents": [
        "a7290ee08e434399660ace34427c17696e47c562"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Wed Mar 22 00:08:45 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:02 2006 -0800"
      },
      "message": "[PATCH] vmscan: emove obsolete checks from shrink_list() and fix unlikely in refill_inactive_zone()\n\nAs suggested by Marcelo:\n\n1. The optimization introduced recently for not calling\n   page_referenced() during zone reclaim makes two additional checks in\n   shrink_list unnecessary.\n\n2. The if (unlikely(sc-\u003emay_swap)) in refill_inactive_zone is optimized\n   for the zone_reclaim case.  However, most peoples system only does swap.\n   Undo that.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Marcelo Tosatti \u003cmarcelo.tosatti@cyclades.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a7290ee08e434399660ace34427c17696e47c562",
      "tree": "ee7d16b2c946c90450cf22e8bcd91111ca66270f",
      "parents": [
        "617d2214ee06c209e5c375c280d50abace8058e1"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mbuesch@freenet.de",
        "time": "Wed Mar 22 00:08:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:02 2006 -0800"
      },
      "message": "[PATCH] Uninline sys_mmap common code (reduce binary size)\n\nRemove the inlining of the new vs old mmap system call common code.  This\nreduces the size of the resulting vmlinux for defconfig as follows:\n\nmb@pc1:~/develop/git/linux-2.6$ size vmlinux.mmap*\n   text    data     bss     dec     hex filename\n3303749  521524  186564 4011837  3d373d vmlinux.mmapinline\n3303557  521524  186564 4011645  3d367d vmlinux.mmapnoinline\n\nThe new sys_mmap2() has also one function call overhead removed, now.\n(probably it was already optimized to a jmp before, but anyway...)\n\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": "b7ab795b7bec9997d4fde39f249d52823d36d98d",
      "tree": "8b8825a0718ec38b5b0840fe06efa9a92a0e30c7",
      "parents": [
        "6626c5d53bc45c59798628677ba5606f02e371f3"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:02 2006 -0800"
      },
      "message": "[PATCH] mm: more CONFIG_DEBUG_VM\n\nPut a few more checks under CONFIG_DEBUG_VM\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": "6626c5d53bc45c59798628677ba5606f02e371f3",
      "tree": "7be40e7709b1887648a649fd6b5c036638c4608b",
      "parents": [
        "17cf44064ae744f081309108fa67f0e942b10167"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 00:08:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:02 2006 -0800"
      },
      "message": "[PATCH] mm: prep_zero_page() in irq is a bug\n\nprep_zero_page() uses KM_USER0 and hence may not be used from IRQ context, at\nleast for highmem pages.\n\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Christoph Lameter \u003cchristoph@lameter.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "17cf44064ae744f081309108fa67f0e942b10167",
      "tree": "9073ac7498b559f5d0d36843e305a39eecc6436b",
      "parents": [
        "7835e98b2e3c66dba79cb0ff8ebb90a2fe030c29"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:02 2006 -0800"
      },
      "message": "[PATCH] mm: cleanup prep_ stuff\n\nMove the prep_ stuff into prep_new_page.\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": "70dc991d66cac40fdb07346dba2b5d862d732c34",
      "tree": "53ba8de1ae2d49f7479391e82794e35f14c0f7f7",
      "parents": [
        "84097518d1ecd2330f9488e4c2d09953a3340e74"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:01 2006 -0800"
      },
      "message": "[PATCH] remove set_page_count(page, 0) users (outside mm)\n\nA couple of places set_page_count(page, 1) that don\u0027t need to.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\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": "4fa4f53bf92139595cae6f1a3d972fc0a3451d29",
      "tree": "a564a675bed7f34b1a05fce4055ea97e509ecf62",
      "parents": [
        "20aaffd6a6492a5f7975dd7be967cdf0e4d978c4"
      ],
      "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] x86_64: pageattr remove __put_page\n\nRemove page_count and __put_page from x86-64 pageattr\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "20aaffd6a6492a5f7975dd7be967cdf0e4d978c4",
      "tree": "b6202e19d2c42dfcc7bbb6c266034e695adac137",
      "parents": [
        "84d1c054b1c408c6c92676069fa678d55d5f0033"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: pageattr use single list\n\nUse page-\u003elru.next to implement the singly linked list of pages rather than\nthe struct deferred_page which needs to be allocated and freed for each\npage.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "84d1c054b1c408c6c92676069fa678d55d5f0033",
      "tree": "bffcaae1cf80706fcb276a3a15654b03b50bb6ae",
      "parents": [
        "f9aed0e2537174b95908f48b6052ae37196c9390"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:01 2006 -0800"
      },
      "message": "[PATCH] i386: pageattr remove __put_page\n\nStop using __put_page and page_count in i386 pageattr.c\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": "f9aed0e2537174b95908f48b6052ae37196c9390",
      "tree": "0b5cd42f36f08086f0258a753203b840123c9301",
      "parents": [
        "a6f563db09c54c80d80e9013182dc512a5e53d0f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:01 2006 -0800"
      },
      "message": "[PATCH] sg: use compound pages\n\nsg increments the refcount of constituent pages in its higher order memory\nallocations when they are about to be mapped by userspace.  This is done so\nthe subsequent get_page/put_page when doing the mapping and unmapping does not\nfree the page.\n\nMove over to the preferred way, that is, using compound pages instead.  This\nfixes a whole class of possible obscure bugs where a get_user_pages on a\nconstituent page may outlast the user mappings or even the driver.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Douglas Gilbert \u003cdougg@torque.net\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a6f563db09c54c80d80e9013182dc512a5e53d0f",
      "tree": "7fa43d6a7d83a30042356f06a9cc6b09472a70e7",
      "parents": [
        "fb8d14e172a29ba5ac69a73b61196be86fdfc3e1"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Wed Mar 22 00:08:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:01 2006 -0800"
      },
      "message": "[PATCH] remove VM_DONTCOPY bogosities\n\nNow that it\u0027s madvisable, remove two pieces of VM_DONTCOPY bogosity:\n\n1. There was and is no logical reason why VM_DONTCOPY should be in the\n   list of flags which forbid vma merging (and those drivers which set\n   it are also setting VM_IO, which itself forbids the merge).\n\n2. It\u0027s hard to understand the purpose of the VM_HUGETLB, VM_DONTCOPY\n   block in vm_stat_account: but never mind, it\u0027s under CONFIG_HUGETLB,\n   which (unlike CONFIG_HUGETLB_PAGE or CONFIG_HUGETLBFS) has never been\n   defined.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.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": "fb8d14e172a29ba5ac69a73b61196be86fdfc3e1",
      "tree": "5b31eac00f8fc5860170d7f8b2e7e961dbda0ddf",
      "parents": [
        "c9b02d970c385a253edb36c87643b0df706b50b4"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Wed Mar 22 00:08:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:00 2006 -0800"
      },
      "message": "[PATCH] mm: shrink_inactive_lis() nr_scan accounting fix\n\nIn shrink_inactive_list(), nr_scan is not accounted when nr_taken is 0.\nBut 0 pages taken does not mean 0 pages scanned.\n\nMove the goto statement below the accounting code to fix it.\n\nSigned-off-by: Wu Fengguang \u003cwfg@mail.ustc.edu.cn\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c9b02d970c385a253edb36c87643b0df706b50b4",
      "tree": "0e1990c1ced842a923221b36ee1546bf9aac8509",
      "parents": [
        "7fb2d46d396b2491818f8e43b01049b3234e6c07"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Wed Mar 22 00:08:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:00 2006 -0800"
      },
      "message": "[PATCH] mm: isolate_lru_pages() scan count fix\n\nIn isolate_lru_pages(), *scanned reports one more scan because the scan\ncounter is increased one more time on exit of the while-loop.\n\nChange the while-loop to for-loop to fix it.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Wu Fengguang \u003cwfg@mail.ustc.edu.cn\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7fb2d46d396b2491818f8e43b01049b3234e6c07",
      "tree": "d5826a4d1c3b1853be20c6049311eb52f1a98360",
      "parents": [
        "1742f19fa920cdd6905f0db5898524dde22ab2a4"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Wed Mar 22 00:08:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:00 2006 -0800"
      },
      "message": "[PATCH] zone_reclaim: additional comments and cleanup\n\nAdd some comments to explain how zone reclaim works.  And it fixes the\nfollowing issues:\n\n- PF_SWAPWRITE needs to be set for RECLAIM_SWAP to be able to write\n  out pages to swap. Currently RECLAIM_SWAP may not do that.\n\n- remove setting nr_reclaimed pages after slab reclaim since the slab shrinking\n  code does not use that and the nr_reclaimed pages is just right for the\n  intended follow up action.\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": "1742f19fa920cdd6905f0db5898524dde22ab2a4",
      "tree": "90a490795f29f96e89503ead5affb4c8f99e5e75",
      "parents": [
        "05ff51376f01fd8837946a4f8144a84f6cc71c19"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 00:08:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:00 2006 -0800"
      },
      "message": "[PATCH] vmscan: rename functions\n\nWe have:\n\n\ttry_to_free_pages\n\t-\u003eshrink_caches(struct zone **zones, ..)\n\t  -\u003eshrink_zone(struct zone *, ...)\n\t    -\u003eshrink_cache(struct zone *, ...)\n\t      -\u003eshrink_list(struct list_head *, ...)\n\t    -\u003erefill_inactive_list((struct zone *, ...)\n\nwhich is fairly irrational.\n\nRename things so that we have\n\n \ttry_to_free_pages\n \t-\u003eshrink_zones(struct zone **zones, ..)\n \t  -\u003eshrink_zone(struct zone *, ...)\n \t    -\u003eshrink_inactive_list(struct zone *, ...)\n \t      -\u003eshrink_page_list(struct list_head *, ...)\n\t    -\u003eshrink_active_list(struct zone *, ...)\n\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Christoph Lameter \u003cchristoph@lameter.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "05ff51376f01fd8837946a4f8144a84f6cc71c19",
      "tree": "ca91bcabe6b4bfa71801a39e2921a44ec0bb1003",
      "parents": [
        "69e05944af39fc6c97b09380c8721e38433bd828"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 00:08:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:00 2006 -0800"
      },
      "message": "[PATCH] vmscan return nr_reclaimed\n\nChange all the vmscan functions to retunr the number-of-reclaimed pages and\nremove scan_conrtol.nr_reclaimed.\n\nSaves ten-odd bytes of text and makes things clearer and more consistent.\n\nThe patch also changes the behaviour of zone_reclaim() when it falls back to slab shrinking.  Christoph says\n\n  \"Setting this to one means that we will rescan and shrink the slab for\n  each allocation if we are out of zone memory and RECLAIM_SLAB is set.  Plus\n  if we do an order 0 allocation we do not go off node as intended.\n\n  \"We better set this to zero.  This means the allocation will go offnode\n  despite us having potentially freed lots of memory on the zone.  Future\n  allocations can then again be done from this zone.\"\n\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Christoph Lameter \u003cchristoph@lameter.com\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": "179e96395b1f01e95ebe1ff5ef306b810dbbd147",
      "tree": "c21157905aa04dc37b531a1deaacd022932fa48e",
      "parents": [
        "8695949a1d7c99e039595db00af8e0fe4722307d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 00:08:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:00 2006 -0800"
      },
      "message": "[PATCH] vmscan: scan_control cleanup\n\nInitialise as much of scan_control as possible at the declaration site.  This\ntidies things up a bit and assures us that all unmentioned fields are zeroed\nout.\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": "8695949a1d7c99e039595db00af8e0fe4722307d",
      "tree": "ac845804aeabdeb19963b5907df921cb9ba8839e",
      "parents": [
        "a07fa3944bf924881450884224cbb2f1269cb9fa"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Wed Mar 22 00:08:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:59 2006 -0800"
      },
      "message": "[PATCH] Thin out scan_control: remove nr_to_scan and priority\n\nMake nr_to_scan and priority a parameter instead of putting it into scan\ncontrol.  This allows various small optimizations and IMHO makes the code\neasier to read.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a07fa3944bf924881450884224cbb2f1269cb9fa",
      "tree": "1a418f44586da209b7a05d0e08e6c2b2bc5fe420",
      "parents": [
        "78eef01b0fae087c5fadbd85dd4fe2918c3a015f"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 00:08:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:59 2006 -0800"
      },
      "message": "[PATCH] slab: use on_each_cpu()\n\nSlab duplicates on_each_cpu().\n\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": "911851e6ee6ac4e26f07be342a89632f78494fef",
      "tree": "898e7150d996eae1800183a5380791270f59263d",
      "parents": [
        "fcc234f888ba2365c44ba0507eb8a18eebf1f594"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Mar 22 00:08:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:59 2006 -0800"
      },
      "message": "[PATCH] slab: fix kernel-doc warnings\n\nFix kernel-doc warnings in mm/slab.c.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fcc234f888ba2365c44ba0507eb8a18eebf1f594",
      "tree": "afc0d6f5a6191a94d8285f0b21ecec5a9b911df9",
      "parents": [
        "b5d8ca7c50826c0b456b4a646875dc573adfde2b"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed Mar 22 00:08:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] mm: kill kmem_cache_t usage\n\nWe have struct kmem_cache now so use it instead of the old typedef.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b5d8ca7c50826c0b456b4a646875dc573adfde2b",
      "tree": "dc04800243ac331c862c1cdbeebd82bf369602d1",
      "parents": [
        "a737b3e2fcf96f576fa3e2e382236d9ee94f383f"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Mar 22 00:08:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] slab: remove cachep-\u003espinlock\n\nRemove cachep-\u003espinlock.  Locking has moved to the kmem_list3 and most of\nthe structures protected earlier by cachep-\u003espinlock is now protected by\nthe l3-\u003elist_lock.  slab cache tunables like batchcount are accessed always\nwith the cache_chain_mutex held.\n\nPatch tested on SMP and NUMA kernels with dbench processes running,\nconstant onlining/offlining, and constant cache tuning, all at the same\ntime.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nCc: Christoph Lameter \u003cchristoph@lameter.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a737b3e2fcf96f576fa3e2e382236d9ee94f383f",
      "tree": "8bc2a5e4f0f12ae01c6cb718ada98bc092daecbf",
      "parents": [
        "f30cf7d13eee420f5249b4d7709b46570098ab92"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 00:08:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] slab cleanup\n\nslab.c has become a bit revolting again.  Try to repair it.\n\n- Coding style fixes\n\n- Don\u0027t do assignments-in-if-statements.\n\n- Don\u0027t typecast assignments to/from void*\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f30cf7d13eee420f5249b4d7709b46570098ab92",
      "tree": "825ad85c9c517efb0be41bf114ceb73a15f5c914",
      "parents": [
        "8fea4e96a8f29ccc34c244f54574680ce9b43631"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed Mar 22 00:08:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] slab: extract setup_cpu_cache\n\nExtract setup_cpu_cache() function from kmem_cache_create() to make the\nlatter a little less complex.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8fea4e96a8f29ccc34c244f54574680ce9b43631",
      "tree": "651042fa1d73fd1efa1c4f1b6c9f25ebbe03ea6f",
      "parents": [
        "b50ec7d8070ae7a39fe78e65a8812bbc3ca2f7ac"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed Mar 22 00:08:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] slab: object to index mapping cleanup\n\nClean up the object to index mapping that has been spread around mm/slab.c.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\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": "a482289d46587ffcda4c85aab109fb74910d7a48",
      "tree": "351dc5d9c09a4fe3d122c2157a298852ac8a821c",
      "parents": [
        "545b1ea9bfa5a8ca9af33d63144bd4f2faaea8dd"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] hugepage allocator cleanup\n\nInsert \"fresh\" huge pages into the hugepage allocator by the same means as\nthey are freed back into it.  This reduces code size and allows\nenqueue_huge_page to be inlined into the hugepage free fastpath.\n\nEliminate occurances of hugepages on the free list with non-zero refcount.\nThis can allow stricter refcount checks in future.  Also required for\nlockless pagecache.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\n\n\"This patch also eliminates a leak \"cleaned up\" by re-clobbering the\nrefcount on every allocation from the hugepage freelists.  With respect to\nthe lockless pagecache, the crucial aspect is to eliminate unconditional\nset_page_count() to 0 on pages with potentially nonzero refcounts, though\ncloser inspection suggests the assignments removed are entirely spurious.\"\n\nAcked-by: William Irwin \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "545b1ea9bfa5a8ca9af33d63144bd4f2faaea8dd",
      "tree": "deef747e0f08089a0cd14e09551efaddfad813f9",
      "parents": [
        "9d41415221214ca4820b9464dfa548e2f20e7dd5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:58 2006 -0800"
      },
      "message": "[PATCH] mm: cleanup bootmem\n\nThe bootmem code added to page_alloc.c duplicated some page freeing code\nthat it really doesn\u0027t need to because it is not so performance critical.\n\nWhile we\u0027re here, make prefetching work properly by actually prefetching\nthe page we\u0027re about to use before prefetching ahead to the next one (ie.\nget the most important transaction started first).  Also prefetch just a\nsingle page ahead rather than leaving a gap of 16.\n\nJack Steiner reported no problems with SGI\u0027s ia64 simulator.\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": "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": "8e7a9aae91101916b86de07fafe3272ea8dc1f10",
      "tree": "799beb54db0ec0b6c58c5d6cdc902fa570f8be90",
      "parents": [
        "8dc04efbfb3c08a08fb7a3b97348d5d561b26ae2"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Mar 22 00:08:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:53:57 2006 -0800"
      },
      "message": "[PATCH] xtensa: pgtable fixes\n\n- Don\u0027t return uninitialised stack values in case of allocation failure\n\n- Don\u0027t bother clearing PageCompound because __GFP_COMP wasn\u0027t specified\n  Increment over the pte page rather than one pte entry in\n  pte_alloc_one_kernel\n\n- Actually increment the page pointer in pte_alloc_one\n\n- Compile fixes, typos.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Chris Zankel \u003cchris@zankel.net\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"
    }
  ],
  "next": "8d438f96d2b8eade6cbcd8adfc22dae6f5cbd6c0"
}
