)]}'
{
  "log": [
    {
      "commit": "45c091bb2d453ce4a8b06cf19872ec7a77fc4799",
      "tree": "06fb2e05518ebfba163f8424e028e7faf5672d66",
      "parents": [
        "d588fcbe5a7ba8bba2cebf7799ab2d573717a806",
        "2191fe3e39159e3375f4b7ec1420df149f154101"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 22:11:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 22:11:30 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (139 commits)\n  [POWERPC] re-enable OProfile for iSeries, using timer interrupt\n  [POWERPC] support ibm,extended-*-frequency properties\n  [POWERPC] Extra sanity check in EEH code\n  [POWERPC] Dont look for class-code in pci children\n  [POWERPC] Fix mdelay badness on shared processor partitions\n  [POWERPC] disable floating point exceptions for init\n  [POWERPC] Unify ppc syscall tables\n  [POWERPC] mpic: add support for serial mode interrupts\n  [POWERPC] pseries: Print PCI slot location code on failure\n  [POWERPC] spufs: one more fix for 64k pages\n  [POWERPC] spufs: fail spu_create with invalid flags\n  [POWERPC] spufs: clear class2 interrupt status before wakeup\n  [POWERPC] spufs: fix Makefile for \"make clean\"\n  [POWERPC] spufs: remove stop_code from struct spu\n  [POWERPC] spufs: fix spu irq affinity setting\n  [POWERPC] spufs: further abstract priv1 register access\n  [POWERPC] spufs: split the Cell BE support into generic and platform dependant parts\n  [POWERPC] spufs: dont try to access SPE channel 1 count\n  [POWERPC] spufs: use kzalloc in create_spu\n  [POWERPC] spufs: fix initial state of wbox file\n  ...\n\nManually resolved conflicts in:\n\tdrivers/net/phy/Makefile\n\tinclude/asm-powerpc/spu.h\n"
    },
    {
      "commit": "4f1bcaf094ccc512c23e10104c05a6f8e5b7a9e4",
      "tree": "883c6ece20a28f86eb73cd329bb9d4674b1e5480",
      "parents": [
        "d702ccb342e49f7591df5a87c3857c698183b0fa"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Thu Jun 22 14:47:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 15:05:58 2006 -0700"
      },
      "message": "[PATCH] vgacon: make VGA_MAP_MEM take size, remove extra use\n\nVGA_MAP_MEM translates to ioremap() on some architectures.  It makes sense\nto do this to vga_vram_base, because we\u0027re going to access memory between\nvga_vram_base and vga_vram_end.\n\nBut it doesn\u0027t really make sense to map starting at vga_vram_end, because\nwe aren\u0027t going to access memory starting there.  On ia64, which always has\nto be different, ioremapping vga_vram_end gives you something completely\nincompatible with ioremapped vga_vram_start, so vga_vram_size ends up being\nnonsense.\n\nAs a bonus, we often know the size up front, so we can use ioremap()\ncorrectly, rather than giving it a zero size.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e92a550e80fef01ebcc0bcd0896109cdb986c72",
      "tree": "6cdb7bc6c6ad51644f9b899b2604d26fe7cd540b",
      "parents": [
        "ddf5f75a16b3e7460ffee881795aa168dffcd0cf"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Thu Jun 15 14:11:22 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:33 2006 +1000"
      },
      "message": "[POWERPC] Fix mdelay badness on shared processor partitions\n\nOn partitioned PPC64 systems where a partition is given 1/10 of a\nprocessor, we have seen mdelay() delaying for 10 times longer than it\nshould.  The reason is that the generic mdelay(n) does n delays of 1\nmillisecond each.  However, with 1/10 of a processor, we only get a\none-millisecond timeslice every 10ms.  Thus each 1 millisecond delay\nloop ends up taking 10ms elapsed time.\n\nThe solution is just to use the PPC64 udelay function, which uses the\ntimebase to ensure that the delay is based on elapsed time rather than\nhow much processing time the partition has been given.  (Yes, the\ngeneric mdelay uses the PPC64 udelay, but the problem is that the\nstart time gets reset every millisecond, and each time it gets reset\nwe lose another 9ms.)\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: Andrew Morton \u003cakpm@osdl.org\u003e\n"
    },
    {
      "commit": "ddf5f75a16b3e7460ffee881795aa168dffcd0cf",
      "tree": "28149044321f1f7e39a957b3eed3cc6537229536",
      "parents": [
        "72abd54035a3d71fd8f02596e659257e8bba16ca"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd.bergmann@de.ibm.com",
        "time": "Tue Jun 20 02:30:33 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:33 2006 +1000"
      },
      "message": "[POWERPC] disable floating point exceptions for init\n\nFloating point exceptions should not be enabled by default,\nas this setting impacts the performance on some CPUs, in\nparticular the Cell BE. Since the bits are inherited from\nparent processes, the place to change the default is the\nthread struct used for init.\n\nglibc sets this up correctly per thread in its fesetenv\nfunction, so user space should not be impacted by this\nsetting. None of the other common libc implementations\n(uClibc, dietlibc, newlib, klibc) has support for fp\nexceptions, so they are unlikely to be hit by this either.\n\nThere is a small risk that somebody wrote their own\napplication that manually sets the fpscr bits instead\nof calling fesetenv, without changing the MSR bits as well.\nThose programs will break with this change.\n\nIt probably makes sense to change glibc in the future\nto be more clever about FE bits, so that when running\non a CPU where this is expensive, it disables exceptions\nASAP, while it keeps them enabled on CPUs where running\nwith exceptions on is cheaper than changing the state\noften.\n\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "72abd54035a3d71fd8f02596e659257e8bba16ca",
      "tree": "006ddd84ad8d7290bbadccd15633be0d36737c25",
      "parents": [
        "868ea0c9256b658b14603e1ad7361b81b92ccacd"
      ],
      "author": {
        "name": "Andreas Schwab",
        "email": "schwab@suse.de",
        "time": "Mon Jun 19 22:45:04 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:32 2006 +1000"
      },
      "message": "[POWERPC] Unify ppc syscall tables\n\nAvoid duplication of the syscall table for the cell platform.  Based on an\nidea from David Woodhouse.\n\nSigned-off-by: Andreas Schwab \u003cschwab@suse.de\u003e\nAcked-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "868ea0c9256b658b14603e1ad7361b81b92ccacd",
      "tree": "6d080ba156f8098277329f26f1d4e3a73cae2093",
      "parents": [
        "0aa8d15b01881ccaab5f2fb31eef33ced97ccb5f"
      ],
      "author": {
        "name": "Mark A. Greer",
        "email": "mgreer@mvista.com",
        "time": "Tue Jun 20 14:15:36 2006 -0700"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:32 2006 +1000"
      },
      "message": "[POWERPC] mpic: add support for serial mode interrupts\n\nOn Tue, Jun 20, 2006 at 02:01:26PM +1000, Benjamin Herrenschmidt wrote:\n\u003e On Mon, 2006-06-19 at 13:08 -0700, Mark A. Greer wrote:\n\u003e \u003e MPC10x-style interrupt controllers have a serial mode that allows\n\u003e \u003e several interrupts to be clocked in through one INT signal.\n\u003e \u003e\n\u003e \u003e This patch adds the software support for that mode.\n\u003e\n\u003e You hard code the clock ratio... why not add a separate call to be\n\u003e called after mpic_init,\n\u003e something like mpic_set_serial_int(int mpic, int enable, int\n\u003e clock_ratio) ?\n\nHow\u0027s this?\n--\n\nMPC10x-style interrupt controllers have a serial mode that allows\nseveral interrupts to be clocked in through one INT signal.\n\nThis patch adds the software support for that mode.\n\nSigned-off-by: Mark A. Greer \u003cmgreer@mvista.com\u003e\n--\n\n arch/powerpc/sysdev/mpic.c |   20 ++++++++++++++++++++\n include/asm-powerpc/mpic.h |   10 ++++++++++\n 2 files changed, 30 insertions(+)\n--\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "379507181a1e330d4f5b0fabe61cd43eccf09763",
      "tree": "dc986704087a40854a9f8a386d125627b20dee14",
      "parents": [
        "c983294872ebccd4aacf1b8dd694ac2170feadc3"
      ],
      "author": {
        "name": "arnd@arndb.de",
        "email": "arnd@arndb.de",
        "time": "Mon Jun 19 20:33:35 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:32 2006 +1000"
      },
      "message": "[POWERPC] spufs: one more fix for 64k pages\n\nThe SPU context save/restore code is currently built\nfor a 4k page size and we provide a _shipped version\nof it since most people don\u0027t have the spu toolchain\nthat is needed to rebuild that code.\n\nThis patch hardcodes the data structures to a 64k\npage alignment, which also guarantees 4k alignment\nbut unfortunately wastes 60k of memory per SPU\ncontext that is created in the running system.\n\nWe will follow up on this with another patch to\nreduce that overhead or maybe redo the context\nsave/restore logic to do this part entirely different,\nbut for now it should make experimental systems\nwork with either page size.\n\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "2eabbbd33ec39f690005aa186c57476598edc6b3",
      "tree": "abee6e62227111cfd961c7cf3bf692519837c380",
      "parents": [
        "a91942ae7ebd518006dcbeb2a1d7b147253c080e"
      ],
      "author": {
        "name": "Masato Noguchi",
        "email": "Masato.Noguchi@jp.sony.com",
        "time": "Mon Jun 19 20:33:31 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:31 2006 +1000"
      },
      "message": "[POWERPC] spufs: remove stop_code from struct spu\n\nThis patch remove \u0027stop_code\u0027 -- discarded member of struct spu.\nIt is written at initialize and interrupt, but never read\nin current implementation.\n\nSigned-off-by: Masato Noguchi \u003cMasato.Noguchi@jp.sony.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "a91942ae7ebd518006dcbeb2a1d7b147253c080e",
      "tree": "74a923f4847495b509089d92010c42c0cb123f4a",
      "parents": [
        "540270d82db943855538cea5d0c790e7e669dda0"
      ],
      "author": {
        "name": "Geoff Levand",
        "email": "geoffrey.levand@am.sony.com",
        "time": "Mon Jun 19 20:33:30 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:31 2006 +1000"
      },
      "message": "[POWERPC] spufs: fix spu irq affinity setting\n\nThis changes the hypervisor abstraction of setting cpu affinity to a\nhigher level to avoid platform dependent interrupt controller\nroutines.  I replaced spu_priv1_ops:spu_int_route_set() with a\nnew routine spu_priv1_ops:spu_cpu_affinity_set().\n\nAs a by-product, this change eliminated what looked like an\nexisting bug in the set affinity code where spu_int_route_set()\nmistakenly called int_stat_get().\n\nSigned-off-by: Geoff Levand \u003cgeoffrey.levand@am.sony.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "540270d82db943855538cea5d0c790e7e669dda0",
      "tree": "e13b8194d8781b2f5d3bf6566a8d96ecc943f8f3",
      "parents": [
        "c01ea72a3b8abb7baa4291a1876b82599867035a"
      ],
      "author": {
        "name": "Geoff Levand",
        "email": "geoffrey.levand@am.sony.com",
        "time": "Mon Jun 19 20:33:29 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:31 2006 +1000"
      },
      "message": "[POWERPC] spufs: further abstract priv1 register access\n\nTo support muti-platform binaries the spu hypervisor accessor\nroutines must have runtime binding.\n\nI removed the existing statically linked routines in spu.h\nand spu_priv1_mmio.c and created new accessor routines in spu_priv1.h\nthat operate indirectly through an ops struct spu_priv1_ops.\nspu_priv1_mmio.c contains the instance of the accessor routines\nfor running on raw hardware.\n\nSigned-off-by: Geoff Levand \u003cgeoffrey.levand@am.sony.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "1d64093f6627a7eef1ed0fe005463f0a5ea25a5f",
      "tree": "faa57ae7e34dd45b843161c233a59a15fe6ddaf1",
      "parents": [
        "0f0f90c304b42d8ce7fc5958de894bdcff3a0ca1"
      ],
      "author": {
        "name": "Jeremy Kerr",
        "email": "jk@ozlabs.org",
        "time": "Mon Jun 19 20:33:19 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:29 2006 +1000"
      },
      "message": "[POWERPC] cell: register SPUs as sysdevs\n\nSPUs are registered as system devices, exposing attributes through\nsysfs. Since the sysdev includes a kref, we can remove the one in\nstruct spu (it isn\u0027t used at the moment anyway).\n\nCurrently only the interrupt source and numa node attributes are added.\n\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "acf7d76827a577059636e949079021e6af6dd702",
      "tree": "283e94488c79e75dd3df9a376e1e8a27a69e26ec",
      "parents": [
        "ef82a306b46dbedaecbb154b24d05dfab937df35"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Jun 19 20:33:16 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:29 2006 +1000"
      },
      "message": "[POWERPC] cell: add RAS support\n\nThis is a first version of support for the Cell BE \"Reliability,\nAvailability and Serviceability\" features.\n\nIt doesn\u0027t yet handle some of the RAS interrupts (the ones described in\niic_is/iic_irr), I\u0027m still working on a proper way to expose these. They\nare essentially a cascaded controller by themselves (sic !) though I may\njust handle them locally to the iic driver. I need also to sync with\nDavid Erb on the way he hooked in the performance monitor interrupt.\n\nSo that\u0027s all for 2.6.17 and I\u0027ll do more work on that with my rework of\nthe powerpc interrupt layer that I\u0027m hacking on at the moment.\n\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "6b543404058a5ffdca8c48e95e0b8a69bb4bdba9",
      "tree": "0bde02196ca8de01df257679ddfc6ae66404472b",
      "parents": [
        "b809b3e86f39651475b30ceb1caf535071534d4d"
      ],
      "author": {
        "name": "Jon Loeliger",
        "email": "jdl@jdl.com",
        "time": "Sat Jun 17 17:52:51 2006 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 21 15:01:28 2006 +1000"
      },
      "message": "[POWERPC] Add 8641 Register space and IRQ definitions.\n\nSigned-off-by: Jeff Brown \u003cJeff.Brown@freescale.com\u003e\nSigned-off-by: Xianghua Xiao \u003cx.xiao@freescale.com\u003e\nSigned-off-by: Jon Loeliger \u003cjdl@freescale.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "cee4cca740d209bcb4b9857baa2253d5ba4e3fbe",
      "tree": "88a23004393ea4a32cad79839479c8e653e401d6",
      "parents": [
        "2edc322d420a4cec8dbc184a1220ecd7fa9f8ae6",
        "9348f0de2d2b541b4ba64fb1f4efee9710a3d731"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 15:10:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 15:10:08 2006 -0700"
      },
      "message": "Merge git://git.infradead.org/hdrcleanup-2.6\n\n* git://git.infradead.org/hdrcleanup-2.6: (63 commits)\n  [S390] __FD_foo definitions.\n  Switch to __s32 types in joystick.h instead of C99 types for consistency.\n  Add \u003csys/types.h\u003e to headers included for userspace in \u003clinux/input.h\u003e\n  Move inclusion of \u003clinux/compat.h\u003e out of user scope in asm-x86_64/mtrr.h\n  Remove struct fddi_statistics from user view in \u003clinux/if_fddi.h\u003e\n  Move user-visible parts of drivers/s390/crypto/z90crypt.h to include/asm-s390\n  Revert include/media changes: Mauro says those ioctls are only used in-kernel(!)\n  Include \u003clinux/types.h\u003e and use __uXX types in \u003clinux/cramfs_fs.h\u003e\n  Use __uXX types in \u003clinux/i2o_dev.h\u003e, include \u003clinux/ioctl.h\u003e too\n  Remove private struct dx_hash_info from public view in \u003clinux/ext3_fs.h\u003e\n  Include \u003clinux/types.h\u003e and use __uXX types in \u003clinux/affs_hardblocks.h\u003e\n  Use __uXX types in \u003clinux/divert.h\u003e for struct divert_blk et al.\n  Use __u32 for elf_addr_t in \u003casm-powerpc/elf.h\u003e, not u32. It\u0027s user-visible.\n  Remove PPP_FCS from user view in \u003clinux/ppp_defs.h\u003e, remove __P mess entirely\n  Use __uXX types in user-visible structures in \u003clinux/nbd.h\u003e\n  Don\u0027t use \u0027u32\u0027 in user-visible struct ip_conntrack_old_tuple.\n  Use __uXX types for S390 DASD volume label definitions which are user-visible\n  S390 BIODASDREADCMB ioctl should use __u64 not u64 type.\n  Remove unneeded inclusion of \u003clinux/time.h\u003e from \u003clinux/ufs_fs.h\u003e\n  Fix private integer types used in V4L2 ioctls.\n  ...\n\nManually resolve conflict in include/linux/mtd/physmap.h\n"
    },
    {
      "commit": "ce221982e0bef039d7047b0f667bb414efece5af",
      "tree": "fa01b712522338d3f19ee5a6fedace7b7149c430",
      "parents": [
        "19242b240793ac769f5b91b68a5e43dd39f0c530"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd.bergmann@de.ibm.com",
        "time": "Thu Jun 15 15:09:16 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jun 17 10:56:24 2006 -0700"
      },
      "message": "[PATCH] powerpc: enable CPU_FTR_CI_LARGE_PAGE for cell\n\nReflect the fact that the Cell Broadband Engine supports 64k\npages by adding the bit to the CPU features.\n\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "368a6ba5d188552aea2a668301a259164c9f355e",
      "tree": "d22916e2870618b2b4ff26588df8f66a5928ac64",
      "parents": [
        "0e4aa9c2009187fff1c999fe0aaa134c1a84f48a"
      ],
      "author": {
        "name": "Dave C Boutcher",
        "email": "boutcher@cs.umn.edu",
        "time": "Mon Jun 12 19:49:20 2006 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 19:31:27 2006 +1000"
      },
      "message": "[POWERPC] check firmware state before suspending\n\nCurrently the kernel blindly halts all the processors and calls the\nibm,suspend-me rtas call.  If the firmware is not in the correct\nstate, we then re-start all the processors and return.  It is much\nsmarter to first check the firmware state, and only if it is waiting,\ncall the ibm,suspend-me call.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "9e6e3c2c796f1e0ef335804d5c87073e365dea50",
      "tree": "0d749f2b5f2c9eb67f9084c88ef10151199cc4ff",
      "parents": [
        "df310656c7552ae7b8252e4b3d8e300cff164b16"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Sat Jun 10 23:14:51 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 19:31:26 2006 +1000"
      },
      "message": "[POWERPC] Fix HV bit handling on non partitioned machines\n\nOn non partitioned machines we currently set the HV bit in kernel space\nonly. It turns out we are supposed to maintain the HV bit in both user\nand kernel space.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "ca1588e71b70534e18368a46a3aad9b25dff941d",
      "tree": "5bee264d69ba4cbd8b5f5ffaf7f981cab161a52b",
      "parents": [
        "357518fa34d9dceda42bfc09642356a58370050d"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Sat Jun 10 20:58:08 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 19:31:26 2006 +1000"
      },
      "message": "[POWERPC] node local IOMMU tables\n\nAllocate IOMMU tables local to the relevant node.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nAcked-by: Olof Johansson \u003colof@lixom.net\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "357518fa34d9dceda42bfc09642356a58370050d",
      "tree": "c75689198fa2667a3d73d89ff125d910061b4fcf",
      "parents": [
        "f2b09c8189bc7b64a42753e98f7006b11bae1bdc"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Sat Jun 10 20:53:06 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 19:31:26 2006 +1000"
      },
      "message": "[POWERPC] pcibus_to_node fixes\n\nof_node_to_nid returns -1 if the associativity cannot be found. This\nmeans pcibus_to_cpumask has to be careful not to pass a negative index into\nnode_to_cpumask.\n\nSince pcibus_to_node could be used a lot, and of_node_to_nid is slow (it\nwalks a list doing strcmps), lets also cache the node in the\npci_controller struct.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "227318bbde6c8309b1d20ab46532ec2b737e1fee",
      "tree": "de8bbbda0d69fc641629c10e5a0a1070a09bdde7",
      "parents": [
        "8555a0029b1b0840237b750e55d4835a52cc719b"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Sat Jun 10 20:32:01 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 19:31:26 2006 +1000"
      },
      "message": "[POWERPC] Remove stale 64bit on 32bit kernel code\n\nRemove some stale POWER3/POWER4/970 on 32bit kernel support.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "3a2c48cfc97f9046abbd810f1efb1aa824bcfaf1",
      "tree": "afcd54f2ad36353abcf2282fdf15a05e77fcba4a",
      "parents": [
        "30d8caf7c625203b295a78f143820cdc3124830b"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Sat Jun 10 20:18:39 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 19:31:25 2006 +1000"
      },
      "message": "[POWERPC] 64bit FPSCR support\n\nForthcoming machines will extend the FPSCR to 64 bits.  We already\nhad a 64-bit save area for the FPSCR, but we need to use a new form\nof the mtfsf instruction.  Fortunately this new form is decoded as\nan ordinary mtfsf by existing 64-bit processors.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "204face4fb3ba2ca09a4073e7debc595e14c2388",
      "tree": "c98c1b576d249b392669a0d534598718af40478d",
      "parents": [
        "bb53bb3dcb12d79efdee3d82bff46a204af377f3"
      ],
      "author": {
        "name": "Jake Moilanen",
        "email": "moilanen@austin.ibm.com",
        "time": "Wed Jun 07 16:15:10 2006 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 19:31:25 2006 +1000"
      },
      "message": "[POWERPC] MSI abstraction\n\nInstead of trying to make PPC64 MSI fit in a Intel-centric MSI layer, a\nsimple short-term solution is to hook the pci_{en/dis}able_msi() calls\nand make a machdep call.\n\nThe rest of the MSI functions are superfluous for what is needed at this\ntime.  Many of which can have machdep calls added as needed.\n\nBen and Michael Ellerman are looking into rewrite the MSI layer to be\nmore generic.  However, in the meantime this works as a interim\nsolution.\n\nSigned-off-by: Jake Moilanen \u003cmoilanen@austin.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "bf72aeba2ffef599d1d386425c9e46b82be657cd",
      "tree": "ead8e5111dbcfa22e156999d1bb8a96e50f06fef",
      "parents": [
        "31925323b1b51bb65db729e029472a8b1f635b7d"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 10:45:18 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 15 10:45:18 2006 +1000"
      },
      "message": "powerpc: Use 64k pages without needing cache-inhibited large pages\n\nSome POWER5+ machines can do 64k hardware pages for normal memory but\nnot for cache-inhibited pages.  This patch lets us use 64k hardware\npages for most user processes on such machines (assuming the kernel\nhas been configured with CONFIG_PPC_64K_PAGES\u003dy).  User processes\nstart out using 64k pages and get switched to 4k pages if they use any\nnon-cacheable mappings.\n\nWith this, we use 64k pages for the vmalloc region and 4k pages for\nthe imalloc region.  If anything creates a non-cacheable mapping in\nthe vmalloc region, the vmalloc region will get switched to 4k pages.\nI don\u0027t know of any driver other than the DRM that would do this,\nthough, and these machines don\u0027t have AGP.\n\nWhen a region gets switched from 64k pages to 4k pages, we do not have\nto clear out all the 64k HPTEs from the hash table immediately.  We\nuse the _PAGE_COMBO bit in the Linux PTE to indicate whether the page\nwas hashed in as a 64k page or a set of 4k pages.  If hash_page is\ntrying to insert a 4k page for a Linux PTE and it sees that it has\nalready been inserted as a 64k page, it first invalidates the 64k HPTE\nbefore inserting the 4k HPTE.  The hash invalidation routines also use\nthe _PAGE_COMBO bit, to determine whether to look for a 64k HPTE or a\nset of 4k HPTEs to remove.  With those two changes, we can tolerate a\nmix of 4k and 64k HPTEs in the hash table, and they will all get\nremoved when the address space is torn down.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "430644312810645a6e05855db50a978df9ba3ad3",
      "tree": "2363ddbb95af2b3df95c0071060d9c69044e28ba",
      "parents": [
        "7a0c58d0513c246ac5438ef4a55ce8b93395ae0e"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Jun 12 18:38:21 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Jun 12 18:38:21 2006 +1000"
      },
      "message": "powerpc: Remove unused paca-\u003epgdir field\n\nThe pgdir field in the paca was a leftover from the dynamic VSIDs\npatch, and is not used in the current kernel code.  This removes it.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "e9370ae15dc2f8ba1e1889ce26f13cda565b6ecb",
      "tree": "338ed732f7a6607bc168795008e244f180876cda",
      "parents": [
        "fab5db97e44f76461f76b24adfa8ccb14d4df498"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 07 16:15:39 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:24:16 2006 +1000"
      },
      "message": "[PATCH] powerpc: Implement PR_[GS]ET_UNALIGN prctls for powerpc\n\nThis gives the ability to control whether alignment exceptions get\nfixed up or reported to the process as a SIGBUS, using the existing\nPR_SET_UNALIGN and PR_GET_UNALIGN prctls.  We do not implement the\noption of logging a message on alignment exceptions.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "fab5db97e44f76461f76b24adfa8ccb14d4df498",
      "tree": "123026a1a6f1702468220189b7410077479ae8a2",
      "parents": [
        "651d765d0b2c72d33430487c8b6ef64c60cd2134"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 07 16:14:40 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:24:15 2006 +1000"
      },
      "message": "[PATCH] powerpc: Implement support for setting little-endian mode via prctl\n\nThis adds the PowerPC part of the code to allow processes to change\ntheir endian mode via prctl.\n\nThis also extends the alignment exception handler to be able to fix up\nalignment exceptions that occur in little-endian mode, both for\n\"PowerPC\" little-endian and true little-endian.\n\nWe always enter signal handlers in big-endian mode -- the support for\nlittle-endian mode does not amount to the creation of a little-endian\nuser/kernel ABI.  If the signal handler returns, the endian mode is\nrestored to what it was when the signal was delivered.\n\nWe have two new kernel CPU feature bits, one for PPC little-endian and\none for true little-endian.  Most of the classic 32-bit processors\nsupport PPC little-endian, and this is reflected in the CPU feature\ntable.  There are two corresponding feature bits reported to userland\nin the AT_HWCAP aux vector entry.\n\nThis is based on an earlier patch by Anton Blanchard.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "e78dbc800c37f035d476c4fdebdf43cdecfcb731",
      "tree": "3b5ff1242c284e0c77e755b62d7e8600aafceb25",
      "parents": [
        "8eb6c6e3b9c8bfed3d75536ab142d7694627c2e5"
      ],
      "author": {
        "name": "Michael Neuling",
        "email": "mikey@neuling.org",
        "time": "Thu Jun 08 14:42:34 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:24:05 2006 +1000"
      },
      "message": "[PATCH] powerpc: oprofile support for POWER6\n\nPOWER6 moves some of the MMCRA bits and also requires some bits to be\ncleared each PMU interrupt.\n\nSigned-off-by: Michael Neuling \u003cmikey@neuling.org\u003e\nAcked-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "8eb6c6e3b9c8bfed3d75536ab142d7694627c2e5",
      "tree": "7dd9c4146f60e88ca1fc8ebe976e1b7a3ae6ea2c",
      "parents": [
        "318facbee05417fb432603a8309a10cdb942a87b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Jun 06 16:11:35 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:24:01 2006 +1000"
      },
      "message": "[PATCH] powerpc: node-aware dma allocations\n\nMake sure dma_alloc_coherent allocates memory from the local node.  This\nis important on Cell where we avoid going through the slow cpu\ninterconnect.\n\nNote:  I could only test this patch on Cell, it should be verified on\nsome pseries machine by those that have the hardware.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "318facbee05417fb432603a8309a10cdb942a87b",
      "tree": "753d84a8213b9e6639e661d329d5473b35e6c191",
      "parents": [
        "507279db1819aacf4022e790b3fc8bc8cf56debf"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Jun 06 16:09:39 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:21:08 2006 +1000"
      },
      "message": "[PATCH] powerpc: implement pcibus_to_node and pcibus_to_cpumask\n\nOn 64bit powerpc we can find out what node a pci bus hangs off, so\nimplement the topology.h macros that export this information.\n\nFor 32bit this seems a little more difficult, but I don\u0027t know of 32bit\npowerpc NUMA machines either, so let\u0027s leave it out for now.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "507279db1819aacf4022e790b3fc8bc8cf56debf",
      "tree": "e5e95d50b093f0eab31e7856b9f596caa6e097af",
      "parents": [
        "4a3ecc622465dbff7404139a8ad18bf4cb99f836"
      ],
      "author": {
        "name": "John Rose",
        "email": "johnrose@austin.ibm.com",
        "time": "Mon Jun 05 16:31:48 2006 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:21:06 2006 +1000"
      },
      "message": "[PATCH] powerpc: reorg RTAS delay code\n\nThis patch attempts to handle RTAS \"busy\" return codes in a more simple\nand consistent manner.  Typical callers of RTAS shouldn\u0027t have to\nmanage wait times and delay calls.\n\nThis patch also changes the kernel to use msleep() rather than udelay()\nwhen a runtime delay is necessary.  This will avoid CPU soft lockups\nfor extended delay conditions.\n\nSigned-off-by: John Rose \u003cjohnrose@austin.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "c5cf0e30bf3d8cb56758abb612827647c0a821cf",
      "tree": "54a471818e91204db11f14544df0bb38bd03058f",
      "parents": [
        "a5bba930d802009c259e56c8d53086d96f63813b"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@au1.ibm.com",
        "time": "Tue May 30 14:14:19 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:20:59 2006 +1000"
      },
      "message": "[PATCH] powerpc: Fix buglet with MMU hash management\n\nOur MMU hash management code would not set the \"C\" bit (changed bit) in\nthe hardware PTE when updating a RO PTE into a RW PTE. That would cause\nthe hardware to possibly to a write back to the hash table to set it on\nthe first store access, which in addition to being a performance issue,\nmight also hit a bug when running with native hash management (non-HV)\nas our code is specifically optimized for the case where no write back\nhappens.\n\nThus there is a very small therocial window were a hash PTE can become\ncorrupted if that HPTE has just been upgraded to read write, a store\naccess happens on it, and that races with another processor evicting\nthat same slot. Since eviction (caused by an almost full hash) is\nextremely rare, the bug is very unlikely to happen fortunately.\n\nThis fixes by allowing the updating of the protection bits in the native\nhash handling to also set (but not clear) the \"C\" bit, and, in order to\nalso improve performances in the general case, by always setting that\nbit on newly inserted hash PTE so that writeback really never happens.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "a5bba930d802009c259e56c8d53086d96f63813b",
      "tree": "8dd60002042bc0795b3d0544fcae7f5082405b16",
      "parents": [
        "98a90c02792f22afd8161f96fc9b9f0f0eb0880e"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue May 30 13:51:37 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:20:57 2006 +1000"
      },
      "message": "[PATCH] powerpc vdso updates\n\nThis patch cleans up some locking \u0026 error handling in the ppc vdso and\nmoves the vdso base pointer from the thread struct to the mm context\nwhere it more logically belongs. It brings the powerpc implementation\ncloser to Ingo\u0027s new x86 one and also adds an arch_vma_name() function\nallowing to print [vsdo] in /proc/\u003cpid\u003e/maps if Ingo\u0027s x86 vdso patch is\nalso applied.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "98a90c02792f22afd8161f96fc9b9f0f0eb0880e",
      "tree": "df721c929ab40ab986793369ece2eed6029e3227",
      "parents": [
        "c029cc66cb3d83f70c02e0c182f0eed1419f8020"
      ],
      "author": {
        "name": "Renzo Davoli",
        "email": "renzo@cs.unibo.it",
        "time": "Sun May 21 20:06:58 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:20:51 2006 +1000"
      },
      "message": "[PATCH] powerpc: enable PPC_PTRACE_[GS]ETREGS on ppc32\n\nI have tested PPC_PTRACE_GETREGS and PPC_PTRACE_SETREGS on umview.\n\nI do not understand why historically these tags has been defined as\nPPC_PTRACE_GETREGS and PPC_PTRACE_SETREGS instead of simply\nPTRACE_[GS]ETREGS. The other \"originality\" is that the address must be\nput into the \"addr\" field instead of the \"data\" field as stated in the\nmanual.\n\nSigned-off-by: renzo davoli \u003crenzo@cs.unibo.it\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "c029cc66cb3d83f70c02e0c182f0eed1419f8020",
      "tree": "b9ed887a0e6434fedebcbf90b3d2ba1aeff68a01",
      "parents": [
        "0a9cb46a73abd6c45e7c986bec984eed60c417b6",
        "ba8f5baba79da8eb502f8534c3a8ecb64aceb790"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 01 19:05:23 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jun 01 19:05:23 2006 +1000"
      },
      "message": "Merge branch \u0027merge\u0027\n"
    },
    {
      "commit": "6bf08cb246b5ac639b2429533d303f5026f2520c",
      "tree": "33b9234ddd26959c9342b4932f596a9b009bf3bd",
      "parents": [
        "c71d48877e6f3d5e3eb22fcaaa612081bce3d089"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu May 25 18:44:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri May 26 11:55:46 2006 -0700"
      },
      "message": "[PATCH] Add CMSPAR to termbits.h for powerpc and alpha\n\nSome driver wants to use CMSPAR, but it was missing on alpha and powerpc.\nThis adds it, with the same value as every other architecture uses.\n\n(akpm: fixes the build of an upcoming gregkh USB patch)\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "66643de455c27973ac31ad6de9f859d399916842",
      "tree": "7ebed7f051879007d4b11d6aaa9e65a1bcb0b08f",
      "parents": [
        "2c23d62abb820e19c54012520f08a198c2233a85",
        "387e2b0439026aa738a9edca15a57e5c0bcb4dfc"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed May 24 09:22:21 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed May 24 09:22:21 2006 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tinclude/asm-powerpc/unistd.h\n\tinclude/asm-sparc/unistd.h\n\tinclude/asm-sparc64/unistd.h\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "0a9cb46a73abd6c45e7c986bec984eed60c417b6",
      "tree": "e713d9a0d03de947f3727e6fead942024f4c0767",
      "parents": [
        "7499bf1a4cabde789e7694b33d01a1913ae1dddf"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Fri May 19 15:35:32 2006 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed May 24 16:08:58 2006 +1000"
      },
      "message": "[PATCH] remove powerpc bitops in favor of existing generic bitops\n\nThere already exists a big endian safe bitops implementation in\nlib/find_next_bit.c.  The code in it is 90%+ common with the powerpc\nspecific version, so the powerpc version is redundant.  This patch\nmakes the necessary changes to use the generic bitops in powerpc, and\nremoves the powerpc specific version.\n\nSigned-off-by: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "403fac4f83bd8e089a192c542511fbeb2729a6c5",
      "tree": "f33cf1d6caee0cb7edaa977ec8cc5d6f340d93b7",
      "parents": [
        "b02527931672749d404b5f640b7e086afc37f4e0"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Fri May 19 16:51:57 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed May 24 16:08:56 2006 +1000"
      },
      "message": "[PATCH] powerpc: remove LogicalSlot from pci_dn\n\nAs we now store enough information in the device_node.\n\nAlso the Flags field was not used either, do remove that.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "b02527931672749d404b5f640b7e086afc37f4e0",
      "tree": "7f825ab2706441559a39710f360c1fb4c1073b85",
      "parents": [
        "96ff6afaf1c2fdd118139095dea66c0910379780"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Fri May 19 16:50:39 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed May 24 16:08:56 2006 +1000"
      },
      "message": "[PATCH] powerpc: remove Irq from pci_dn\n\nAs we now store enough information in the device_node to allocate the\nirq number in pcibios_final_fixup.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "96ff6afaf1c2fdd118139095dea66c0910379780",
      "tree": "5364530523d40789b549edc66e02e47b04932c9a",
      "parents": [
        "0d177df15d12926dc2ef7c814f317f02de52ce17"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Fri May 19 16:48:47 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed May 24 16:08:56 2006 +1000"
      },
      "message": "[PATCH] powerpc: remove iSeries_Global_Device_List\n\nWe can now scan the list of device nodes instead.  This also allows us\nto remove the Device_list member of struct pci_dn.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "0f0410823792ae0ecb45f2578598b115835ffdbb",
      "tree": "b20f362f34757b8d612d8f1c2740fca5f329d93e",
      "parents": [
        "b471f55427ee94d6de2b33b88a7409f8cbc6b5dc"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue May 23 07:46:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue May 23 10:35:32 2006 -0700"
      },
      "message": "[PATCH] powerpc: wire up sys_[gs]et_robust_list\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d4ad66faecc4dd9f3db14e0b013741a6f867b089",
      "tree": "002f68be37820100103202270f07e5d6a6fb840f",
      "parents": [
        "8ae5b2801a0beb10a55a7ebd5140482e2f84c3fa"
      ],
      "author": {
        "name": "Jeremy Kerr",
        "email": "jk@ozlabs.org",
        "time": "Thu May 18 18:05:15 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri May 19 15:02:21 2006 +1000"
      },
      "message": "[PATCH] powerpc: Add of_parse_dma_window()\n\nAdd a function for generic parsing of dma-window properties (ie,\nibm,dma-window and ibm,my-dma-window) of pci and virtual device nodes.\n\nThis function will also be used by cell.\n\nSigned-off-by: Jeremy Kerr \u003cjk@ozlabs.org\u003e\nAcked-by: Olof Johansson \u003colof@lixom.net\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "8ae5b2801a0beb10a55a7ebd5140482e2f84c3fa",
      "tree": "e392faf5cc57559564da909f2bb2b65fcc18b516",
      "parents": [
        "35dd54326e857f1648c7cc1028e8d5e1dbe04992"
      ],
      "author": {
        "name": "jimix@watson.ibm.com",
        "email": "jimix@watson.ibm.com",
        "time": "Wed May 17 12:00:35 2006 -0400"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri May 19 15:02:19 2006 +1000"
      },
      "message": "[PATCH] powerpc: udbg_printf() formatting attribute\n\nThis patch allows the compiler to catch any printf-like mismatches for\nudbg_printf().  After some brute force building I\u0027ve only found issues\nwith my own code and lparcfg.c It could break some developers, but\nIMHO that would be goodness.\n\nSigned-off-by: Jimi Xenidis \u003cjimix@watson.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "35dd54326e857f1648c7cc1028e8d5e1dbe04992",
      "tree": "dea05effa25bc751d1b777a0b80f0f46d3ff0b8e",
      "parents": [
        "473104134b35ce1c3ca77b738c561d6c215adc1b"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Thu May 18 11:16:11 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri May 19 15:02:18 2006 +1000"
      },
      "message": "[PATCH] powerpc: Move crashkernel\u003d handling into the kernel.\n\nThis was missing a quilt ref.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "473104134b35ce1c3ca77b738c561d6c215adc1b",
      "tree": "979ccd57fe0695a66287d5f09fd3781e16cd1faa",
      "parents": [
        "2babf5c2ec2f2d5de3e38d20f7df7fd815fd10c9"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed May 17 18:00:49 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri May 19 15:02:16 2006 +1000"
      },
      "message": "[PATCH] powerpc: Kdump header cleanup\n\nWe need to know the base address of the kdump kernel even when we\u0027re not a\nkdump kernel, so add a #define for it. Move the logic that sets the kdump\nkernelbase into kdump.h instead of page.h.\n\nRename kdump_setup() to setup_kdump_trampoline() to make it clearer what it\u0027s\ndoing, and add an empty definition for the !CRASH_DUMP case to avoid a\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "2babf5c2ec2f2d5de3e38d20f7df7fd815fd10c9",
      "tree": "9ecda21067fe36f36fbefae87141150b62c39acd",
      "parents": [
        "846f77b08c8301682ded5ce127c56397327a60d0"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed May 17 18:00:46 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri May 19 15:02:15 2006 +1000"
      },
      "message": "[PATCH] powerpc: Unify mem\u003d handling\n\nWe currently do mem\u003d handling in three seperate places. And as benh pointed out\nI wrote two of them. Now that we parse command line parameters earlier we can\nclean this mess up.\n\nMoving the parsing out of prom_init means the device tree might be allocated\nabove the memory limit. If that happens we\u0027d have to move it. As it happens\nwe already have logic to do that for kdump, so just genericise it.\n\nThis also means we might have reserved regions above the memory limit, if we\ndo the bootmem allocator will blow up, so we have to modify\nlmb_enforce_memory_limit() to truncate the reserves as well.\n\nTested on P5 LPAR, iSeries, F50, 44p. Tested moving device tree on P5 and\n44p and F50.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "d6b89a196dfb03fdfbe3d574ab6773fe14a1d2c6",
      "tree": "e2434d227933e425af867f37ed822fafcd76ef80",
      "parents": [
        "485a2d54dbc7cf939bd0c22daad74e2cf6f001d7"
      ],
      "author": {
        "name": "Michael Neuling",
        "email": "mikey@neuling.org",
        "time": "Tue May 09 11:33:38 2006 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri May 19 14:35:25 2006 +1000"
      },
      "message": "[PATCH] powerpc: whitespace cleanup in reg.h\n\nIn reg.h we mostly have #define\u003cspace\u003e but there are a few #define\u003ctab\u003e\naround.  Clean these up so we use space exclusively.\n\nSigned-off-by: Michael Neuling \u003cmikey@neuling.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "5047f09b56d0bc3c21aec9cb16de60283da645c6",
      "tree": "09a07554b933c3bb912ce3bfc0ea7c7e1f16041c",
      "parents": [
        "c0f1fe00c3923135b2c2f443448585482da8a53e",
        "5528e568a760442e0ec8fd2dea1f0791875a066b"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat May 06 19:59:18 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat May 06 19:59:18 2006 +0100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "f18fc729cd2d67b76e24206ee3567c1f6983c358",
      "tree": "9dbf177222d94213d9dd82d67de6d905e1a2b278",
      "parents": [
        "5a43ee65620d628ba04deecf241b63b2410b97f2",
        "d98550e334715b2d9e45f8f0f4e1608720108640"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri May 05 15:45:48 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri May 05 15:45:48 2006 +1000"
      },
      "message": "Merge ../linux-2.6\n"
    },
    {
      "commit": "5ee882f153a49098a12f6b26f153ba12a33d767a",
      "tree": "0e30f008608f8c7ba9622512643d0c4a8b0e8116",
      "parents": [
        "2c88f4a8bc4276013f7eee7824056d9cecccadb1"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu May 04 12:39:12 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu May 04 12:39:12 2006 +0100"
      },
      "message": "Use __u32 for elf_addr_t in \u003casm-powerpc/elf.h\u003e, not u32. It\u0027s user-visible.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "6bfd93c32a5065d0e858780b3beb0b667081601c",
      "tree": "af13455be2b53f11fbbfec0305731b452db396a2",
      "parents": [
        "6e1976961c9bd9a3dc368139fab1883961efc879"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed May 03 23:02:04 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed May 03 23:06:46 2006 +1000"
      },
      "message": "powerpc: Fix incorrect might_sleep in __get_user/__put_user on kernel addresses\n\nWe have a case where __get_user and __put_user can validly be used\non kernel addresses in interrupt context - namely, the alignment\nexception handler, as our get/put_unaligned just do a single access\nand rely on the alignment exception handler to fix things up in the\nrare cases where the cpu can\u0027t handle it in hardware.  Thus we can\nget alignment exceptions in the network stack at interrupt level.\nThe alignment exception handler does a __get_user to read the\ninstruction and blows up in might_sleep().\n\nSince a __get_user on a kernel address won\u0027t actually ever sleep,\nthis makes the might_sleep conditional on the address being less\nthan PAGE_OFFSET.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "8261aa600943046a5305564a1cd7432009971799",
      "tree": "a25304dd85c473d2fae77bc27fec49183978feba",
      "parents": [
        "953039c8df7beb2694814e20e2707a77d335a2e3"
      ],
      "author": {
        "name": "Jeremy Kerr",
        "email": "jk@ozlabs.org",
        "time": "Mon May 01 12:16:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon May 01 18:17:46 2006 -0700"
      },
      "message": "[PATCH] powerpc: cell: Add numa id to struct spu\n\nAdd an nid member to the spu structure, and store the numa id of the spu there\non creation.\n\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "953039c8df7beb2694814e20e2707a77d335a2e3",
      "tree": "8e8d6af92441d70074efc24f55cf5965ae28447a",
      "parents": [
        "bed120c64eb07b6838bb758109811484af8cebba"
      ],
      "author": {
        "name": "Jeremy Kerr",
        "email": "jk@ozlabs.org",
        "time": "Mon May 01 12:16:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon May 01 18:17:46 2006 -0700"
      },
      "message": "[PATCH] powerpc: Allow devices to register with numa topology\n\nChange of_node_to_nid() to traverse the device tree, looking for a numa id.\nCell uses this to assign ids to SPUs, which are children of the CPU node.\nExisting users of of_node_to_nid() are altered to use of_node_to_nid_single(),\nwhich doesn\u0027t do the traversal.\n\nExport an attach_sysdev_to_node() function, allowing system devices (eg.\nSPUs) to link themselves into the numa topology in sysfs.\n\nSigned-off-by: Arnd Bergmann \u003carnd.bergmann@de.ibm.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b07019f29328ebb1b48d3faf952b84f07ec9b973",
      "tree": "99fbd8379fb9fe17c5b06c74871f71207ebb072e",
      "parents": [
        "c3ce7e203af5d8eab7c3390fc991a1fcb152f741",
        "e0a515bc6a2188f02916e976f419a8640312e32a"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@shinybook.infradead.org",
        "time": "Sun Apr 30 20:34:39 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Apr 30 20:34:39 2006 +0100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "bc97ce951cfb697eaac9d5b6a2fbe4544fdf1a7c",
      "tree": "ae880181c00f47a28e805f5328ab7e9a15620ee9",
      "parents": [
        "c7f0e8cb5654a50986c6097b3c0cca972e406899"
      ],
      "author": {
        "name": "Olof Johansson",
        "email": "olof@lixom.net",
        "time": "Fri Apr 28 22:51:59 2006 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 29 18:07:54 2006 +1000"
      },
      "message": "[PATCH] powerpc: kill union tce_entry\n\nIt\u0027s been long overdue to kill the union tce_entry in the pSeries/iSeries\nTCE code, especially since I asked the Summit guys to do it on the code\nthey copied from us.\n\nAlso, while I was at it, I cleaned up some whitespace.\n\nBuilt and booted on pSeries, built on iSeries.\n\nSigned-off-by: Olof Johansson \u003colof@lixom.net\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "c7f0e8cb5654a50986c6097b3c0cca972e406899",
      "tree": "dc8a8e590c5cf97d8b7cae2f1e93bdbef178f89f",
      "parents": [
        "dd721ffd95d5e1516380da0b254ef737582a258f"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Apr 27 17:23:32 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 29 18:02:02 2006 +1000"
      },
      "message": "[PATCH] powerpc: merge the rest of the vio code\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "dd721ffd95d5e1516380da0b254ef737582a258f",
      "tree": "fc31c2124b0de8b301622d755e444e4d5acb95b1",
      "parents": [
        "e10fa77368dff31140451fac04d78d9f51f0f3ac"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Apr 27 17:21:46 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 29 18:02:01 2006 +1000"
      },
      "message": "[PATCH] powerpc: use a common vio_match_device routine\n\nThis requires the compatible properties having vaules that are empty\nstrings instead of just being empty properties.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "e10fa77368dff31140451fac04d78d9f51f0f3ac",
      "tree": "20f3645859dbd995ded831f5a40b78e823e4fc6e",
      "parents": [
        "95a1ca6cd8e702a19ee56efae522a5816a56a205"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Apr 27 17:18:21 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 29 18:02:00 2006 +1000"
      },
      "message": "[PATCH] powerpc: use the device tree for the iSeries vio bus probe\n\nAs an added bonus, since every vio_dev now has a device_node\nassociated with it, hotplug now works.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "29f147d746326e4db5fe350c70373081d61a2965",
      "tree": "04c065ace8c62953441bc22079b93449b996f283",
      "parents": [
        "916a3d5729c8b710d56acf579f3fdb4de7c03e77",
        "6fb8f3acbe833586eb32598d1f844eb9f77c4fba"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 29 16:15:57 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 29 16:15:57 2006 +1000"
      },
      "message": "Merge branch \u0027merge\u0027\n"
    },
    {
      "commit": "03054d51a70e8c273df5d9bc31fea6c843eaa1c3",
      "tree": "44b1b9e52979a0b083edb5169c1ac328abd4c715",
      "parents": [
        "09b03b6c29638eb5c79b02e585cb1b20d91a8ea0"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Sat Apr 29 09:51:06 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 29 10:56:58 2006 +1000"
      },
      "message": "[PATCH] powerpc: Add cputable entry for POWER6\n\nAdd a cputable entry for the POWER6 processor.\n\nThe SIHV and SIPR bits in the mmcra have moved in POWER6, so disable\nsupport for that until oprofile is fixed.\n\nAlso tell firmware that we know about POWER6.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "56142536868a2be34f261ed8fdca1610f8a73fbd",
      "tree": "0bd66166b318d8403b1881285f6813ece2acced1",
      "parents": [
        "34c278d3913a15b64943e8c40a16b4f732cc7c59"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@shinybook.infradead.org",
        "time": "Sat Apr 29 01:51:47 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Apr 29 01:51:47 2006 +0100"
      },
      "message": "Remove unneeded _syscallX macros from user view in asm-*/unistd.h\n\nThese aren\u0027t needed by glibc or klibc, and they\u0027re broken in some cases\nanyway. The uClibc folks are apparently switching over to stop using\nthem too (now that we agreed that they should be dropped, at least).\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "d6754b401a15eaa16492ea5dbaa4826361d3f411",
      "tree": "032f067d3af458527d903a7653885404ed82431e",
      "parents": [
        "acc429a517bd11fdcac9bea97d082d26231beb92",
        "693f7d362055261882659475d2ef022e32edbff1"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@shinybook.infradead.org",
        "time": "Sat Apr 29 01:42:26 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Apr 29 01:42:26 2006 +0100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "2833c28aa0d0326780acfa61149a2a02dcb2c9b4",
      "tree": "d72d4efadf63dea4bdcbc100e8bfad9192f415a7",
      "parents": [
        "30aacebed0f0619f23ce84df7c59ad033ca08d77"
      ],
      "author": {
        "name": "Andreas Schwab",
        "email": "schwab@suse.de",
        "time": "Thu Apr 27 15:46:42 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Apr 28 21:04:59 2006 +1000"
      },
      "message": "[PATCH] powerpc: Wire up *at syscalls\n\nWire up *at syscalls.\n\nThis patch has been tested on ppc64 (using glibc\u0027s testsuite, both 32bit\nand 64bit), and compile-tested for ppc32 (I have currently no ppc32 system\navailable, but I expect no problems).\n\nSigned-off-by: Andreas Schwab \u003cschwab@suse.de\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "1269277a5e7c6d7ae1852e648a8bcdb78035e9fa",
      "tree": "77208bc4494519f6df0dc55834c6ceaac74643b6",
      "parents": [
        "f749edae5ebd339eaf22508572233600f717424f"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Apr 24 23:22:17 2006 +0100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Apr 28 21:04:55 2006 +1000"
      },
      "message": "[PATCH] powerpc: Use check_legacy_ioport() on ppc32 too.\n\nSome people report that we die on some Macs when we are expecting to\ncatch machine checks after poking at some random I/O address. I\u0027d seen\nit happen on my dual G4 with serial ports until we fixed those to use\nOF, but now other users are reporting it with i8042.\n\nThis expands the use of check_legacy_ioport() to avoid that situation\neven on 32-bit kernels.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "f10a04c034c7285a1b15dfa4a83d3e56578e34e8",
      "tree": "ee6bd0c670b6606017cbd88b56a1247ff241e00e",
      "parents": [
        "37e53db8aa233c65142d63b496277bf5be9c0ade"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Fri Apr 28 15:02:51 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Apr 28 15:02:51 2006 +1000"
      },
      "message": "[PATCH] powerpc: Fix pagetable bloat for hugepages\n\nAt present, ARCH\u003dpowerpc kernels can waste considerable space in\npagetables when making large hugepage mappings.  Hugepage PTEs go in\nPMD pages, but each PMD page maps 256M and so contains only 16\nhugepage PTEs (128 bytes of data), but takes up a 1024 byte\nallocation.  With CONFIG_PPC_64K_PAGES enabled (64k base page size),\nthe situation is worse.  Now hugepage PTEs are at the PTE page level\n(also mapping 256M), so we store 16 hugepage PTEs in a 64k allocation.\n\nThe PowerPC MMU already means that any 256M region is either all\nhugepage, or all normal pages.  Thus, with some care, we can use a\ndifferent allocation for the hugepage PTE tables and only allocate the\n128 bytes necessary.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "912d35f86781e64d73be1ef358f703c08905ac37",
      "tree": "5863ad70f5cdccba0c1cd28f83d173deaf71fb83",
      "parents": [
        "016b661e2f717168e600f3c85f29e1a49f88e004"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Apr 26 10:59:21 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Apr 26 10:59:21 2006 +0200"
      },
      "message": "[PATCH] Add support for the sys_vmsplice syscall\n\nsys_splice() moves data to/from pipes with a file input/output. sys_vmsplice()\nmoves data to a pipe, with the input being a user address range instead.\n\nThis uses an approach suggested by Linus, where we can hold partial ranges\ninside the pages[] map. Hopefully this will be useful for network\nreceive support as well.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "dd02ec3ac25828d0918f5b389defe2238d015fe6",
      "tree": "67cff36d121dc0f06561c8142fbabb72fef4105e",
      "parents": [
        "454ac778459bc70f0a9818a6a8fd974ced11de66"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 25 13:51:52 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 25 13:51:52 2006 +0100"
      },
      "message": "Remove user-visible references to PAGE_SIZE in include/asm-powerpc/elf.h\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "916a3d5729c8b710d56acf579f3fdb4de7c03e77",
      "tree": "3c063664f777cfd345a2c9d557fdef12f73d773c",
      "parents": [
        "55308c3712f56279d5547ef6e97d365ac3ab9e6d",
        "d0e15bed84db7a9b0ea85d2ad9707b5e6d2e38da"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sun Apr 23 10:55:56 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sun Apr 23 10:55:56 2006 +1000"
      },
      "message": "Merge branch \u0027merge\u0027\n"
    },
    {
      "commit": "d0e15bed84db7a9b0ea85d2ad9707b5e6d2e38da",
      "tree": "b27ecd617ae9113d083514b10ec27a649fd22c78",
      "parents": [
        "7c8ce71b092425f1e938285cab2a679c09444d9b"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sun Apr 23 10:42:04 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sun Apr 23 10:42:04 2006 +1000"
      },
      "message": "powerpc: Fix define_machine so machine_is() works from modules\n\nmachine_is() was always returning 0 when used in a module, because\nwe weren\u0027t exporting the machine definitions.  This was why sound\nwasn\u0027t working on powermacs when CONFIG_SND_POWERMAC\u003dm.  Original\nfix from Ben Herrenschmidt, further fixed by me.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "ac325acd50013fa8f4953208cbb96504dec9b12a",
      "tree": "6c08470d68be38504c6aadae168b873efb39e8db",
      "parents": [
        "4bd174fe1cca738f53cf8bb9ac3cb327b1f516ed"
      ],
      "author": {
        "name": "Linas Vepstas",
        "email": "linas@austin.ibm.com",
        "time": "Tue Apr 18 21:05:21 2006 -0700"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 22 18:46:13 2006 +1000"
      },
      "message": "[PATCH] powerpc/pseries: clear PCI failure counter if no new failures\n\nThe current PCI error recovery system keeps track of the number of PCI card\nresets, and refuses to bring a card back up if this number is too large.\nThe goal of doing this was to avoid an infinite loop of resets if a card is\nobviously dead.  However, if the failures are rare, but the machine has a\nhigh uptime, this mechanism might still be triggered; this is too harsh.\n\nThis patch will avoids this problem by decrementing the fail count after an\nhour.  Thus, as long as a pci card BSOD\u0027s less than 6 times an hour, it\nwill continue to be reset indefinitely.  If it\u0027s failure rate is greater\nthan that, it will be taken off-line permanently.\n\nThis patch is larger than it might otherwise be because it changes\nindentation by removing a pointless while-loop.  The while loop is not\nneeded, as the handler is invoked once fo each event (by schedule_work());\nthe loop is leftover cruft from an earlier implementation.\n\nSigned-off-by: Linas Vepstas \u003clinas@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "c256f4b9598c71afd8eb0b7d3d3790a38734cf43",
      "tree": "7366b0e03b5d9f1b0abfaa38230246f6d3875735",
      "parents": [
        "81bbbe92949b069c101e13d3acbd4bc7d088cb79"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Fri Apr 07 15:23:03 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 22 18:45:05 2006 +1000"
      },
      "message": "[PATCH] powerpc: remove io_page_mask\n\nCleanup patch which removes the io_page_mask.  It fixes the reset on\nsome e1000 devices which is needed for clean kexec reboots.  The legacy\ndevices which broke with this patch (parallel port and PC speaker) have\nnow been fixed in Linus\u0027 tree.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nAcked-by: Michael Neuling \u003cmikey@neuling.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "7daa411b810d7eadfaabe3765ec5f827893dbb30",
      "tree": "c7cef2c78faa74928fb32942d9e9aaf262fe98ab",
      "parents": [
        "f4ffaa452e71495a06376f12f772342bc57051fc"
      ],
      "author": {
        "name": "Olof Johansson",
        "email": "olof@lixom.net",
        "time": "Wed Apr 12 21:05:59 2006 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Apr 21 22:28:55 2006 +1000"
      },
      "message": "[PATCH] powerpc: IOMMU support for honoring dma_mask\n\nSome devices don\u0027t support full 32-bit DMA address space, which we currently\nassume. Add the required mask-passing to the IOMMU allocators.\n\nSigned-off-by: Olof Johansson \u003colof@lixom.net\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "6fbe85f914ad08cc43408a40ad18a561222e1b93",
      "tree": "320da01ba20dcbf6d31d80d35b1217193d663814",
      "parents": [
        "a9a5cd5d2a57fb76dbae2115450f777b69beccf7",
        "f39224a8c1828bdd327539da72a53d8a13595838"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 18 10:34:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 18 10:34:24 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge:\n  powerpc: Use correct sequence for putting CPU into nap mode\n  [PATCH] spufs: fix context-switch decrementer code\n  [PATCH] powerpc32: Set cpu explicitly in kernel compiles\n  [PATCH] powerpc/pseries: bugfix: balance calls to pci_device_put\n  [PATCH] powerpc: Fix machine detection in prom_init.c\n  [PATCH] ppc32: Fix string comparing in platform_notify_map\n  [PATCH] powerpc: Avoid __initcall warnings\n  [PATCH] powerpc: Ensure runlatch is off in the idle loop\n  powerpc: Fix CHRP booting - needs a define_machine call\n  powerpc: iSeries has only 256 IRQs\n"
    },
    {
      "commit": "f39224a8c1828bdd327539da72a53d8a13595838",
      "tree": "cc9e9139e2e7e2e36774e5c52a5311439160633c",
      "parents": [
        "183b73ae7c9e4e19fa95d88e1778481899a65210"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Apr 18 21:49:11 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Apr 18 21:49:11 2006 +1000"
      },
      "message": "powerpc: Use correct sequence for putting CPU into nap mode\n\nWe weren\u0027t using the recommended sequence for putting the CPU into\nnap mode.  When I changed the idle loop, for some reason 7447A cpus\nstarted hanging when we put them into nap mode.  Changing to the\nrecommended sequence fixes that.\n\nThe complexity here is that the recommended sequence is a loop that\nkeeps putting the cpu back into nap mode.  Clearly we need some way\nto break out of the loop when an interrupt (external interrupt,\ndecrementer, performance monitor) occurs.  Here we use a bit in\nthe thread_info struct to indicate that we need this, and the exception\nentry code notices this and arranges for the exception to return\nto the value in the link register, thus breaking out of the loop.\nWe use a new `local_flags\u0027 field in the thread_info which we can\nalter without needing to use an atomic update sequence.\n\nThe PPC970 has the same recommended sequence, so we do the same thing\nthere too.\n\nThis also fixes a bug in the kernel stack overflow handling code on\n32-bit, since it was causing a value that we needed in a register to\nget trashed.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "70524490ee2ea1bbf6cee6c106597b3ac25a3fc2",
      "tree": "c61dd500035bc3e0dea364777de1b7a58b41a75c",
      "parents": [
        "cbb7e577e732f576b9f399bc2600bdc0626c68dc"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Apr 11 15:51:17 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Apr 11 15:51:17 2006 +0200"
      },
      "message": "[PATCH] splice: add support for sys_tee()\n\nBasically an in-kernel implementation of tee, which uses splice and the\npipe buffers as an intelligent way to pass data around by reference.\n\nWhere the user space tee consumes the input and produces a stdout and\nfile output, this syscall merely duplicates the data inside a pipe to\nanother pipe. No data is copied, the output just grabs a reference to the\ninput pipe data.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "c80d79d746cc48bd94b0ce4f6d4f3c90cd403aaf",
      "tree": "5aa8d1590d95f8fd820ad797fe03a063b592e9bf",
      "parents": [
        "653edba1a8b2ed018bdfb078131324dfbfe1dd6a"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Mon Apr 10 22:53:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:39 2006 -0700"
      },
      "message": "[PATCH] Configurable NODES_SHIFT\n\nCurrent implementations define NODES_SHIFT in include/asm-xxx/numnodes.h for\neach arch.  Its definition is sometimes configurable.  Indeed, ia64 defines 5\nNODES_SHIFT values in the current git tree.  But it looks a bit messy.\n\nSGI-SN2(ia64) system requires 1024 nodes, and the number of nodes already has\nbeen changeable by config.  Suitable node\u0027s number may be changed in the\nfuture even if it is other architecture.  So, I wrote configurable node\u0027s\nnumber.\n\nThis patch set defines just default value for each arch which needs multi\nnodes except ia64.  But, it is easy to change to configurable if necessary.\n\nOn ia64 the number of nodes can be already configured in generic ia64 and SN2\nconfig.  But, NODES_SHIFT is defined for DIG64 and HP\u0027S machine too.  So, I\nchanged it so that all platforms can be configured via CONFIG_NODES_SHIFT.  It\nwould be simpler.\n\nSee also: http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114358010523896\u0026w\u003d2\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7d01c880856bae31502095bc68784c1518a680cb",
      "tree": "8bc0a1b072d9fdf2bc15288e7ce712ff636a7cf8",
      "parents": [
        "6246b6128bbe34d0752f119cf7c5111c85fe481d"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Apr 04 14:49:48 2006 +1000"
      },
      "committer": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Apr 04 14:49:48 2006 +1000"
      },
      "message": "powerpc: iSeries has only 256 IRQs\n\nThe iSeries Hypervisor only allows us to specify IRQ numbers up to 255 (it\nhas a u8 field to pass it in).  This patch allows platforms to specify a\nmaximum to the virtual IRQ numbers we will use and has iSeries set that\nto 255.  If not set, the maximum is NR_IRQS - 1 (as before).\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\n"
    },
    {
      "commit": "794e085e56a67921eea80bcaeeac38d1517369be",
      "tree": "af82eeb1156db92daa05ab2bf83b0566731a3ff7",
      "parents": [
        "34422fed65bb1cf609892d73f1cf5e9626445f9e"
      ],
      "author": {
        "name": "Nathan Fontenot",
        "email": "nfont@austin.ibm.com",
        "time": "Fri Mar 31 12:04:52 2006 -0600"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 01 22:37:11 2006 +1100"
      },
      "message": "[PATCH] powerpc/pseries: EEH Cleanup\n\nThis patch removes unnecessary exports, marks functions as static when\npossible, and simplifies some list-related code.\n\nSigned-off-by: Nathan Fontenot \u003cnfont@austin.ibm.com\u003e\nSigned-off-by: Linas Vepstas \u003clinas@austin.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "b13a96cfb055fd4b9c61463f87534a6f406b174b",
      "tree": "4ab32133b1a786ef9bd9448ffadff0f2fc9c36bf",
      "parents": [
        "706c8c93ba4865a19e981b9770151a7a63c15794"
      ],
      "author": {
        "name": "Heiko J Schick",
        "email": "schihei@de.ibm.com",
        "time": "Thu Mar 30 22:47:14 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 01 22:37:00 2006 +1100"
      },
      "message": "[PATCH] powerpc: Extends HCALL interface for InfiniBand usage\n\nThis extends the HCALL interface for InfiniBand usage. I\u0027ve\nmade the patch against the linux-2.6 git tree and Segher\u0027s patch:\n[PATCH] Change H_StudlyCaps to H_SHOUTING_CAPS\n\nWe moved this into the common powerpc code based on comments we\ngot after posting the first eHCA InfiniBand device driver patch.\n\nSigned-off-by: Heiko j Schick \u003cschickhj@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "706c8c93ba4865a19e981b9770151a7a63c15794",
      "tree": "63cbae3a74bfe40adcb1efa9ea5a6e7f6898b8ca",
      "parents": [
        "8df83028cf52e3bf68dfd35a4b1a044b326a4a99"
      ],
      "author": {
        "name": "Segher Boessenkool",
        "email": "segher@kernel.crashing.org",
        "time": "Thu Mar 30 14:49:40 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 01 22:36:57 2006 +1100"
      },
      "message": "[PATCH] powerpc/pseries: Change H_StudlyCaps to H_SHOUTING_CAPS\n\nAlso cleans up some nearby whitespace problems.\n\nSigned-off-by: Segher Boessenkool \u003csegher@kernel.crashing.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "4b75679f60d0ce780609cbff249769b669f4fb69",
      "tree": "2c8890020b5e7d340036acb01f73a6e53feb038d",
      "parents": [
        "30c14e40ed85469f166b5effdab6705c73c5cd5e",
        "025be81e83043f20538dcced1e12c5f8d152fbdb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:52:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:52:30 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  [NET]: Allow skb headroom to be overridden\n  [TCP]: Kill unused extern decl for tcp_v4_hash_connecting()\n  [NET]: add SO_RCVBUF comment\n  [NET]: Deinline some larger functions from netdevice.h\n  [DCCP]: Use NULL for pointers, comfort sparse.\n  [DECNET]: Fix refcount\n"
    },
    {
      "commit": "025be81e83043f20538dcced1e12c5f8d152fbdb",
      "tree": "b5789ee2931739c7066f5369ce699ef4f3fa758e",
      "parents": [
        "0803dbed7a23721d091639c9e173c0389dcd524a"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Fri Mar 31 02:27:06 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 31 02:27:06 2006 -0800"
      },
      "message": "[NET]: Allow skb headroom to be overridden\n\nPreviously we added NET_IP_ALIGN so an architecture can override the\npadding done to align headers. The next step is to allow the skb\nheadroom to be overridden.\n\nWe currently always reserve 16 bytes to grow into, meaning all DMAs\nstart 16 bytes into a cacheline. On ppc64 we really want DMA writes to\nstart on a cacheline boundary, so we increase that headroom to one\ncacheline.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5274f052e7b3dbd81935772eb551dfd0325dfa9d",
      "tree": "c79f813ec513660edb6f1e4a75cb366c6b84f53f",
      "parents": [
        "5d4fe2c1ce83c3e967ccc1ba3d580c1a5603a866"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 30 15:15:30 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 30 12:28:18 2006 -0800"
      },
      "message": "[PATCH] Introduce sys_splice() system call\n\nThis adds support for the sys_splice system call. Using a pipe as a\ntransport, it can connect to files or sockets (latter as output only).\n\nFrom the splice.c comments:\n\n   \"splice\": joining two ropes together by interweaving their strands.\n\n   This is the \"extended pipe\" functionality, where a pipe is used as\n   an arbitrary in-memory buffer. Think of a pipe as a small kernel\n   buffer that you can use to transfer data from one end to the other.\n\n   The traditional unix read/write is extended with a \"splice()\" operation\n   that transfers data buffers to or from a pipe buffer.\n\n   Named by Larry McVoy, original implementation from Linus, extended by\n   Jens to support splicing to files and fixing the initial implementation\n   bugs.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "15e812ad849e142e3dfc984d33c4d8042389f148",
      "tree": "e2d50c583457e8c4b2d06eea9846c04d0f5629d7",
      "parents": [
        "fa465f8c7008c6cab32b05f3f1af57f7c86e8873"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Mon Mar 27 12:00:45 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 29 13:44:16 2006 +1100"
      },
      "message": "[PATCH] powerpc: Remove oprofile spinlock backtrace code\n\nRemove oprofile spinlock backtrace code now we have proper calltrace\nsupport. Also make MMCRA sihv and sipr bits a variable since they may\nchange in future cpus. Finally, MMCRA should be a 64bit quantity.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "6c6bd754bf43d59756f094de144ecac239629dda",
      "tree": "b6cf2a7a3f133d24d22c63ba7bb8f9ebb02a8bab",
      "parents": [
        "b848e0a07dd5a874821bb587bb724fac4aa45bad"
      ],
      "author": {
        "name": "Brian Rogan",
        "email": "bcr6@cornell.edu",
        "time": "Mon Mar 27 11:57:01 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 29 13:44:16 2006 +1100"
      },
      "message": "[PATCH] powerpc: Add oprofile calltrace support\n\nAdd oprofile calltrace support to powerpc. Disable spinlock backtracing\nnow we can use calltrace info.\n\n(Updated to work on both 32bit and 64bit by me).\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "0e5519548fdc8eadc3eacb49b1908d44d347fb2b",
      "tree": "176d01babed4ece005f6c4715c464411c4262e9b",
      "parents": [
        "bab70a4af737f623de5b034976a311055308ab86"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Mar 28 14:50:51 2006 -0800"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 29 13:44:15 2006 +1100"
      },
      "message": "[PATCH] for_each_possible_cpu: powerpc\n\nfor_each_cpu() actually iterates across all possible CPUs.  We\u0027ve had mistakes\nin the past where people were using for_each_cpu() where they should have been\niterating across only online or present CPUs.  This is inefficient and\npossibly buggy.\n\nWe\u0027re renaming for_each_cpu() to for_each_possible_cpu() to avoid this in the\nfuture.\n\nThis patch replaces for_each_cpu with for_each_possible_cpu.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "bac30d1a78d0f11c613968fc8b351a91ed465386",
      "tree": "e52f3c876522a2f6047a6ec1c27df2e8a79486b8",
      "parents": [
        "e8222502ee6157e2713da9e0792c21f4ad458d50",
        "ca9ba4471c1203bb6e759b76e83167fec54fe590"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 29 13:24:50 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 29 13:24:50 2006 +1100"
      },
      "message": "Merge ../linux-2.6\n"
    },
    {
      "commit": "e8222502ee6157e2713da9e0792c21f4ad458d50",
      "tree": "0f970fb99912c257a7e5254f863a53f79d22ab14",
      "parents": [
        "056cb48a2fb6fb31debf665695a9f97b45cfb8ec"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Mar 28 23:15:54 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 23:15:54 2006 +1100"
      },
      "message": "[PATCH] powerpc: Kill _machine and hard-coded platform numbers\n\nThis removes statically assigned platform numbers and reworks the\npowerpc platform probe code to use a better mechanism.  With this,\nboard support files can simply declare a new machine type with a\nmacro, and implement a probe() function that uses the flattened\ndevice-tree to detect if they apply for a given machine.\n\nWe now have a machine_is() macro that replaces the comparisons of\n_machine with the various PLATFORM_* constants.  This commit also\nchanges various drivers to use the new macro instead of looking at\n_machine.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "872345b715ee02f3b45528449f0d11b44ef9ebb8",
      "tree": "f2baa4bb2c6461bc4dc1fb6f14d1f0ad93e7ccaa",
      "parents": [
        "4d177fbfdadb011f1bac96f9ccba0cc9f21da8de"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Mar 27 23:42:49 2006 -0800"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 20:48:54 2006 +1100"
      },
      "message": "[PATCH] git-powerpc: WARN was a dumb idea\n\nThere are at least 14 different implementations of WARN() in the tree already.\nThe build fails all over the place.\n\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "b239cbe957ae730caa8af2f169a4d35b8c1bb299",
      "tree": "7567ee8777c8b4331770240952b738cf4f52d1b9",
      "parents": [
        "69ed3324983bb937d78a8579ed91b90242ee5aaa"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Mar 28 14:40:58 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 16:45:36 2006 +1100"
      },
      "message": "[PATCH] powerpc: make ISA floppies work again\n\nWe used to assume that a DMA mapping request with a NULL dev was for\nISA DMA.  This assumption was broken at some point.  Now we explicitly\npass the detected ISA PCI device in the floppy setup.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "45d607ed92695d7543f5e1fc5b133cd69834e3e4",
      "tree": "c82b6ae1f9b9827894021797a85cbcbe6efca08e",
      "parents": [
        "11089f08d9dd8b89cd07d6f126ccb4849e3c61a3"
      ],
      "author": {
        "name": "Ryan S. Arnold",
        "email": "rsa@us.ibm.com",
        "time": "Mon Mar 27 21:25:16 2006 +0200"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 16:45:26 2006 +1100"
      },
      "message": "[PATCH] powerpc: hvc_console updates\n\nThese are some updates from both Ryan and Arnd for the hvc_console\ndriver:\n\nThe main point is to enable the inclusion of a console driver\nfor rtas, which is currrently needed for the cell platform.\n\nAlso shuffle around some data-type declarations and moves some\nfunctions out of include/asm-ppc64/hvconsole.h and into a new\ndrivers/char/hvc_console.h file.\n\nSigned-off-by: \"Ryan S. Arnold\" \u003crsa@us.ibm.com\u003e\nSigned-off-by: Arnd Bergmann \u003cabergman@de.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "d0160bf0b3e87032be8e85f80ddd2f18e107b86f",
      "tree": "ad29de605288def9799b1cde52e1c5ddf03b4ee6",
      "parents": [
        "2f25194dbe0c4b2472ce133ea3e9bcbb14936ae7"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Mon Mar 27 14:26:25 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 16:45:20 2006 +1100"
      },
      "message": "[PATCH] powerpc: Rename and export ppc64_firmware_features\n\nWe need to export ppc64_firmware_features for modules. Before we do that\nI think we should probably rename it to powerpc_firmware_features.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "2f25194dbe0c4b2472ce133ea3e9bcbb14936ae7",
      "tree": "4bb2a77da578dafd951ff2bd24ff2fd8c61c0b83",
      "parents": [
        "72533db0121e11811366b5a456f4068d1a4d542c"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Mon Mar 27 11:46:18 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 16:19:52 2006 +1100"
      },
      "message": "[PATCH] powerpc: export validate_sp for oprofile calltrace\n\nExport validate_sp so we can use it in the oprofile calltrace code.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "72533db0121e11811366b5a456f4068d1a4d542c",
      "tree": "b7dfcb86ca34e76efec8b7f2c2f165cf8414bd02",
      "parents": [
        "0a26b1364f14852bc9a51db0ca63c5250c775627"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Mon Mar 27 11:23:29 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 16:19:49 2006 +1100"
      },
      "message": "[PATCH] powerpc: Remove some ifdefs in oprofile_impl.h\n\n- No one uses op_counter_config.valid, so remove it\n- No need to ifdef around function protypes.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "0a26b1364f14852bc9a51db0ca63c5250c775627",
      "tree": "83422473cb4bf4c450012cded06288a0dc6abedf",
      "parents": [
        "ff2e6d7e27cf1f757ab0d97e1a9e46de47152a0e"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 10:22:10 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Mar 28 10:22:10 2006 +1100"
      },
      "message": "ppc: Remove CHRP, POWER3 and POWER4 support from arch/ppc\n\n32-bit CHRP machines are now supported only in arch/powerpc, as are\nall 64-bit PowerPC processors.  This means that we don\u0027t use\nOpen Firmware on any platform in arch/ppc any more.\n\nThis makes PReP support a single-platform option like every other\nplatform support option in arch/ppc now, thus CONFIG_PPC_MULTIPLATFORM\nis gone from arch/ppc.  CONFIG_PPC_PREP is the option that selects\nPReP support and is generally what has replaced\nCONFIG_PPC_MULTIPLATFORM within arch/ppc.\n\n_machine is all but dead now, being #defined to 0.\n\nUpdated Makefiles, comments and Kconfig options generally to reflect\nthese changes.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "e041c683412d5bf44dc2b109053e3b837b71742d",
      "tree": "9d271066ef379da0c0fb3b8cb4137abd5d2ebba0",
      "parents": [
        "76b81e2b0e2241accebcc68e126bc5ab958661b9"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Mar 27 01:16:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:50 2006 -0800"
      },
      "message": "[PATCH] Notifier chain update: API changes\n\nThe kernel\u0027s implementation of notifier chains is unsafe.  There is no\nprotection against entries being added to or removed from a chain while the\nchain is in use.  The issues were discussed in this thread:\n\n    http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113018709002036\u0026w\u003d2\n\nWe noticed that notifier chains in the kernel fall into two basic usage\nclasses:\n\n\t\"Blocking\" chains are always called from a process context\n\tand the callout routines are allowed to sleep;\n\n\t\"Atomic\" chains can be called from an atomic context and\n\tthe callout routines are not allowed to sleep.\n\nWe decided to codify this distinction and make it part of the API.  Therefore\nthis set of patches introduces three new, parallel APIs: one for blocking\nnotifiers, one for atomic notifiers, and one for \"raw\" notifiers (which is\nreally just the old API under a new name).  New kinds of data structures are\nused for the heads of the chains, and new routines are defined for\nregistration, unregistration, and calling a chain.  The three APIs are\nexplained in include/linux/notifier.h and their implementation is in\nkernel/sys.c.\n\nWith atomic and blocking chains, the implementation guarantees that the chain\nlinks will not be corrupted and that chain callers will not get messed up by\nentries being added or removed.  For raw chains the implementation provides no\nguarantees at all; users of this API must provide their own protections.  (The\nidea was that situations may come up where the assumptions of the atomic and\nblocking APIs are not appropriate, so it should be possible for users to\nhandle these things in their own way.)\n\nThere are some limitations, which should not be too hard to live with.  For\natomic/blocking chains, registration and unregistration must always be done in\na process context since the chain is protected by a mutex/rwsem.  Also, a\ncallout routine for a non-raw chain must not try to register or unregister\nentries on its own chain.  (This did happen in a couple of places and the code\nhad to be changed to avoid it.)\n\nSince atomic chains may be called from within an NMI handler, they cannot use\nspinlocks for synchronization.  Instead we use RCU.  The overhead falls almost\nentirely in the unregister routine, which is okay since unregistration is much\nless frequent that calling a chain.\n\nHere is the list of chains that we adjusted and their classifications.  None\nof them use the raw API, so for the moment it is only a placeholder.\n\n  ATOMIC CHAINS\n  -------------\narch/i386/kernel/traps.c:\t\ti386die_chain\narch/ia64/kernel/traps.c:\t\tia64die_chain\narch/powerpc/kernel/traps.c:\t\tpowerpc_die_chain\narch/sparc64/kernel/traps.c:\t\tsparc64die_chain\narch/x86_64/kernel/traps.c:\t\tdie_chain\ndrivers/char/ipmi/ipmi_si_intf.c:\txaction_notifier_list\nkernel/panic.c:\t\t\t\tpanic_notifier_list\nkernel/profile.c:\t\t\ttask_free_notifier\nnet/bluetooth/hci_core.c:\t\thci_notifier\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_chain\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_expect_chain\nnet/ipv6/addrconf.c:\t\t\tinet6addr_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_expect_chain\nnet/netlink/af_netlink.c:\t\tnetlink_chain\n\n  BLOCKING CHAINS\n  ---------------\narch/powerpc/platforms/pseries/reconfig.c:\tpSeries_reconfig_chain\narch/s390/kernel/process.c:\t\tidle_chain\narch/x86_64/kernel/process.c\t\tidle_notifier\ndrivers/base/memory.c:\t\t\tmemory_chain\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_policy_notifier_list\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_transition_notifier_list\ndrivers/macintosh/adb.c:\t\tadb_client_list\ndrivers/macintosh/via-pmu.c\t\tsleep_notifier_list\ndrivers/macintosh/via-pmu68k.c\t\tsleep_notifier_list\ndrivers/macintosh/windfarm_core.c\twf_client_list\ndrivers/usb/core/notify.c\t\tusb_notifier_list\ndrivers/video/fbmem.c\t\t\tfb_notifier_list\nkernel/cpu.c\t\t\t\tcpu_chain\nkernel/module.c\t\t\t\tmodule_notify_list\nkernel/profile.c\t\t\tmunmap_notifier\nkernel/profile.c\t\t\ttask_exit_notifier\nkernel/sys.c\t\t\t\treboot_notifier_list\nnet/core/dev.c\t\t\t\tnetdev_chain\nnet/decnet/dn_dev.c:\t\t\tdnaddr_chain\nnet/ipv4/devinet.c:\t\t\tinetaddr_chain\n\nIt\u0027s possible that some of these classifications are wrong.  If they are,\nplease let us know or submit a patch to fix them.  Note that any chain that\ngets called very frequently should be atomic, because the rwsem read-locking\nused for blocking chains is very likely to incur cache misses on SMP systems.\n(However, if the chain\u0027s callout routines may sleep then the chain cannot be\natomic.)\n\nThe patch set was written by Alan Stern and Chandra Seetharaman, incorporating\nmaterial written by Keith Owens and suggestions from Paul McKenney and Andrew\nMorton.\n\n[jes@sgi.com: restructure the notifier chain initialization macros]\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f17d3a5049d32392b79925c73a0cf99ce6d5af0",
      "tree": "3c2aa0cbe337684d353dd2cfb0c177b4ae15217c",
      "parents": [
        "8fdd6c6df7889dc89df3d9fe0f5bbe6733e39f48"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes updates\n\n- fix: initialize the robust list(s) to NULL in copy_process.\n\n- doc update\n\n- cleanup: rename _inuser to _inatomic\n\n- __user cleanups and other small cleanups\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.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": "e9056f13bfcdd054a0c3d730e4e096748d8a363a",
      "tree": "876d70d99cb679f7c4cbf6609d6341cadfb5c57e",
      "parents": [
        "62ac285f3c701f0457a15fe01baa64a965c4f5f1"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes: arch defaults\n\nThis patchset provides a new (written from scratch) implementation of robust\nfutexes, called \"lightweight robust futexes\".  We believe this new\nimplementation is faster and simpler than the vma-based robust futex solutions\npresented before, and we\u0027d like this patchset to be adopted in the upstream\nkernel.  This is version 1 of the patchset.\n\n  Background\n  ----------\n\nWhat are robust futexes?  To answer that, we first need to understand what\nfutexes are: normal futexes are special types of locks that in the\nnoncontended case can be acquired/released from userspace without having to\nenter the kernel.\n\nA futex is in essence a user-space address, e.g.  a 32-bit lock variable\nfield.  If userspace notices contention (the lock is already owned and someone\nelse wants to grab it too) then the lock is marked with a value that says\n\"there\u0027s a waiter pending\", and the sys_futex(FUTEX_WAIT) syscall is used to\nwait for the other guy to release it.  The kernel creates a \u0027futex queue\u0027\ninternally, so that it can later on match up the waiter with the waker -\nwithout them having to know about each other.  When the owner thread releases\nthe futex, it notices (via the variable value) that there were waiter(s)\npending, and does the sys_futex(FUTEX_WAKE) syscall to wake them up.  Once all\nwaiters have taken and released the lock, the futex is again back to\n\u0027uncontended\u0027 state, and there\u0027s no in-kernel state associated with it.  The\nkernel completely forgets that there ever was a futex at that address.  This\nmethod makes futexes very lightweight and scalable.\n\n\"Robustness\" is about dealing with crashes while holding a lock: if a process\nexits prematurely while holding a pthread_mutex_t lock that is also shared\nwith some other process (e.g.  yum segfaults while holding a pthread_mutex_t,\nor yum is kill -9-ed), then waiters for that lock need to be notified that the\nlast owner of the lock exited in some irregular way.\n\nTo solve such types of problems, \"robust mutex\" userspace APIs were created:\npthread_mutex_lock() returns an error value if the owner exits prematurely -\nand the new owner can decide whether the data protected by the lock can be\nrecovered safely.\n\nThere is a big conceptual problem with futex based mutexes though: it is the\nkernel that destroys the owner task (e.g.  due to a SEGFAULT), but the kernel\ncannot help with the cleanup: if there is no \u0027futex queue\u0027 (and in most cases\nthere is none, futexes being fast lightweight locks) then the kernel has no\ninformation to clean up after the held lock!  Userspace has no chance to clean\nup after the lock either - userspace is the one that crashes, so it has no\nopportunity to clean up.  Catch-22.\n\nIn practice, when e.g.  yum is kill -9-ed (or segfaults), a system reboot is\nneeded to release that futex based lock.  This is one of the leading\nbugreports against yum.\n\nTo solve this problem, \u0027Robust Futex\u0027 patches were created and presented on\nlkml: the one written by Todd Kneisel and David Singleton is the most advanced\nat the moment.  These patches all tried to extend the futex abstraction by\nregistering futex-based locks in the kernel - and thus give the kernel a\nchance to clean up.\n\nE.g.  in David Singleton\u0027s robust-futex-6.patch, there are 3 new syscall\nvariants to sys_futex(): FUTEX_REGISTER, FUTEX_DEREGISTER and FUTEX_RECOVER.\nThe kernel attaches such robust futexes to vmas (via\nvma-\u003evm_file-\u003ef_mapping-\u003erobust_head), and at do_exit() time, all vmas are\nsearched to see whether they have a robust_head set.\n\nLots of work went into the vma-based robust-futex patch, and recently it has\nimproved significantly, but unfortunately it still has two fundamental\nproblems left:\n\n - they have quite complex locking and race scenarios.  The vma-based\n   patches had been pending for years, but they are still not completely\n   reliable.\n\n - they have to scan _every_ vma at sys_exit() time, per thread!\n\nThe second disadvantage is a real killer: pthread_exit() takes around 1\nmicrosecond on Linux, but with thousands (or tens of thousands) of vmas every\npthread_exit() takes a millisecond or more, also totally destroying the CPU\u0027s\nL1 and L2 caches!\n\nThis is very much noticeable even for normal process sys_exit_group() calls:\nthe kernel has to do the vma scanning unconditionally!  (this is because the\nkernel has no knowledge about how many robust futexes there are to be cleaned\nup, because a robust futex might have been registered in another task, and the\nfutex variable might have been simply mmap()-ed into this process\u0027s address\nspace).\n\nThis huge overhead forced the creation of CONFIG_FUTEX_ROBUST, but worse than\nthat: the overhead makes robust futexes impractical for any type of generic\nLinux distribution.\n\nSo it became clear to us, something had to be done.  Last week, when Thomas\nGleixner tried to fix up the vma-based robust futex patch in the -rt tree, he\nfound a handful of new races and we were talking about it and were analyzing\nthe situation.  At that point a fundamentally different solution occured to\nme.  This patchset (written in the past couple of days) implements that new\nsolution.  Be warned though - the patchset does things we normally dont do in\nLinux, so some might find the approach disturbing.  Parental advice\nrecommended ;-)\n\n  New approach to robust futexes\n  ------------------------------\n\nAt the heart of this new approach there is a per-thread private list of robust\nlocks that userspace is holding (maintained by glibc) - which userspace list\nis registered with the kernel via a new syscall [this registration happens at\nmost once per thread lifetime].  At do_exit() time, the kernel checks this\nuser-space list: are there any robust futex locks to be cleaned up?\n\nIn the common case, at do_exit() time, there is no list registered, so the\ncost of robust futexes is just a simple current-\u003erobust_list !\u003d NULL\ncomparison.  If the thread has registered a list, then normally the list is\nempty.  If the thread/process crashed or terminated in some incorrect way then\nthe list might be non-empty: in this case the kernel carefully walks the list\n[not trusting it], and marks all locks that are owned by this thread with the\nFUTEX_OWNER_DEAD bit, and wakes up one waiter (if any).\n\nThe list is guaranteed to be private and per-thread, so it\u0027s lockless.  There\nis one race possible though: since adding to and removing from the list is\ndone after the futex is acquired by glibc, there is a few instructions window\nfor the thread (or process) to die there, leaving the futex hung.  To protect\nagainst this possibility, userspace (glibc) also maintains a simple per-thread\n\u0027list_op_pending\u0027 field, to allow the kernel to clean up if the thread dies\nafter acquiring the lock, but just before it could have added itself to the\nlist.  Glibc sets this list_op_pending field before it tries to acquire the\nfutex, and clears it after the list-add (or list-remove) has finished.\n\nThat\u0027s all that is needed - all the rest of robust-futex cleanup is done in\nuserspace [just like with the previous patches].\n\nUlrich Drepper has implemented the necessary glibc support for this new\nmechanism, which fully enables robust mutexes.  (Ulrich plans to commit these\nchanges to glibc-HEAD later today.)\n\nKey differences of this userspace-list based approach, compared to the vma\nbased method:\n\n - it\u0027s much, much faster: at thread exit time, there\u0027s no need to loop\n   over every vma (!), which the VM-based method has to do.  Only a very\n   simple \u0027is the list empty\u0027 op is done.\n\n - no VM changes are needed - \u0027struct address_space\u0027 is left alone.\n\n - no registration of individual locks is needed: robust mutexes dont need\n   any extra per-lock syscalls.  Robust mutexes thus become a very lightweight\n   primitive - so they dont force the application designer to do a hard choice\n   between performance and robustness - robust mutexes are just as fast.\n\n - no per-lock kernel allocation happens.\n\n - no resource limits are needed.\n\n - no kernel-space recovery call (FUTEX_RECOVER) is needed.\n\n - the implementation and the locking is \"obvious\", and there are no\n   interactions with the VM.\n\n  Performance\n  -----------\n\nI have benchmarked the time needed for the kernel to process a list of 1\nmillion (!) held locks, using the new method [on a 2GHz CPU]:\n\n - with FUTEX_WAIT set [contended mutex]: 130 msecs\n - without FUTEX_WAIT set [uncontended mutex]: 30 msecs\n\nI have also measured an approach where glibc does the lock notification [which\nit currently does for !pshared robust mutexes], and that took 256 msecs -\nclearly slower, due to the 1 million FUTEX_WAKE syscalls userspace had to do.\n\n(1 million held locks are unheard of - we expect at most a handful of locks to\nbe held at a time.  Nevertheless it\u0027s nice to know that this approach scales\nnicely.)\n\n  Implementation details\n  ----------------------\n\nThe patch adds two new syscalls: one to register the userspace list, and one\nto query the registered list pointer:\n\n asmlinkage long\n sys_set_robust_list(struct robust_list_head __user *head,\n                     size_t len);\n\n asmlinkage long\n sys_get_robust_list(int pid, struct robust_list_head __user **head_ptr,\n                     size_t __user *len_ptr);\n\nList registration is very fast: the pointer is simply stored in\ncurrent-\u003erobust_list.  [Note that in the future, if robust futexes become\nwidespread, we could extend sys_clone() to register a robust-list head for new\nthreads, without the need of another syscall.]\n\nSo there is virtually zero overhead for tasks not using robust futexes, and\neven for robust futex users, there is only one extra syscall per thread\nlifetime, and the cleanup operation, if it happens, is fast and\nstraightforward.  The kernel doesnt have any internal distinction between\nrobust and normal futexes.\n\nIf a futex is found to be held at exit time, the kernel sets the highest bit\nof the futex word:\n\n\t#define FUTEX_OWNER_DIED        0x40000000\n\nand wakes up the next futex waiter (if any). User-space does the rest of\nthe cleanup.\n\nOtherwise, robust futexes are acquired by glibc by putting the TID into the\nfutex field atomically.  Waiters set the FUTEX_WAITERS bit:\n\n\t#define FUTEX_WAITERS           0x80000000\n\nand the remaining bits are for the TID.\n\n  Testing, architecture support\n  -----------------------------\n\nI\u0027ve tested the new syscalls on x86 and x86_64, and have made sure the parsing\nof the userspace list is robust [ ;-) ] even if the list is deliberately\ncorrupted.\n\ni386 and x86_64 syscalls are wired up at the moment, and Ulrich has tested the\nnew glibc code (on x86_64 and i386), and it works for his robust-mutex\ntestcases.\n\nAll other architectures should build just fine too - but they wont have the\nnew syscalls yet.\n\nArchitectures need to implement the new futex_atomic_cmpxchg_inuser() inline\nfunction before writing up the syscalls (that function returns -ENOSYS right\nnow).\n\nThis patch:\n\nAdd placeholder futex_atomic_cmpxchg_inuser() implementations to every\narchitecture that supports futexes.  It returns -ENOSYS.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nAcked-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "659e35051b165fb40f1160190c2d23f3d5c319d5",
      "tree": "2c102902c0c3be8b5bc005f11cf758203e0407f7",
      "parents": [
        "dc8ecb43701a78bd3c38e7fed1d1c76840579450"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Mar 27 01:15:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:44 2006 -0800"
      },
      "message": "[PATCH] unify pfn_to_page: powerpc pfn_to_page\n\nPowerPC can use generic ones.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "9618edab82fda8dbce5ea3abcdac9ded07abb2d4"
}
