)]}'
{
  "log": [
    {
      "commit": "5f4cb662a0a2533b45656607471571460310a5ca",
      "tree": "19f3f431f75f7103a1b98e1eea56978712399c6b",
      "parents": [
        "8be1a6d6c77ab4532e4476fdb8177030ef48b52c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Jul 14 20:36:36 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 27 11:34:09 2008 +0300"
      },
      "message": "KVM: SVM: allow enabling/disabling NPT by reloading only the architecture module\n\nIf NPT is enabled after loading both KVM modules on AMD and it should be\ndisabled, both KVM modules must be reloaded. If only the architecture module is\nreloaded the behavior is undefined. With this patch it is possible to disable\nNPT only by reloading the kvm_amd module.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "8be1a6d6c77ab4532e4476fdb8177030ef48b52c",
      "tree": "c94ff327a6291672e1f9071a79bf61d63f5f0cb9",
      "parents": [
        "852fef69c0d9510a28a70221cfddd004efa02552",
        "cc9969c96765476db5e30c9e074a57838604c1d1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:40:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:40:36 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:\n  mlx4: Update/add Mellanox Technologies copyright lines to mlx4 driver files\n  mlx4_core: Add VLAN tag field to WQE control segment struct\n  RDMA/nes: CM connection setup/teardown rework\n  IPoIB: Correct help text for INFINIBAND_IPOIB_DEBUG\n  IPoIB/cm: Connected mode is no longer EXPERIMENTAL\n  RDMA/ucm: BKL is not needed for ib_ucm_open()\n  RDMA/ucma: BKL is not needed for ucma_open()\n"
    },
    {
      "commit": "9ee08c2df47c10ba624ff05a6c0f2500748bcb69",
      "tree": "0a2788abb3b5547b83965e0b3132eec8b196bd81",
      "parents": [
        "eaf0ba5ef69538b6913525294a3a0fcb0e0992e0",
        "3d45955962496879dead8d4dd70bb9a23b07154b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:30:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:30:56 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (57 commits)\n  [MTD] [NAND] subpage read feature as a way to increase performance. \n  CPUFREQ: S3C24XX NAND driver frequency scaling support.\n  [MTD][NAND] au1550nd: remove unused variable\n  [MTD] jedec_probe: Fix SST 16-bit chip detection\n  [MTD][MTDPART] Fix a division by zero bug\n  [MTD][MTDPART] Cleanup and document the erase region handling\n  [MTD][MTDPART] Handle most checkpatch findings\n  [MTD][MTDPART] Seperate main loop from per-partition code in add_mtd_partition\n  [MTD] physmap: resume already suspended chips on failure to suspend\n  [MTD] physmap: Fix suspend/resume/shutdown bugs.\n  [MTD] [NOR] Fix -ETIMEO errors in CFI driver\n  [MTD] [NAND] fsl_elbc_nand: fix section mismatch with CONFIG_MTD_OF_PARTS\u003dy\n  [JFFS2] Use .unlocked_ioctl\n  [MTD] Fix const assignment in the MTD command line partitioning driver\n  [MTD] [NOR] gen_probe: No debug message when debugging is disabled\n  [MTD] [NAND] remove __PPC__ hardcoded address from DiskOnChip drivers\n  [MTD] [MAPS] Remove the bast-flash driver.\n  [MTD] [NAND] fsl_elbc_nand: ecclayout cleanups\n  [MTD] [NAND] fsl_elbc_nand: implement support for flash-based BBT\n  [MTD] [NAND] fsl_elbc_nand: fix OOB workability for large page NAND chips\n  ...\n"
    },
    {
      "commit": "eaf0ba5ef69538b6913525294a3a0fcb0e0992e0",
      "tree": "2c67cfa8fcc8f971bcf660b83654c9e6b807ff3d",
      "parents": [
        "732730d48dc777f6577a6e0fece42b860324998e",
        "a9906a19193db69ad0158f289f839edf8aaf103f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:29:39 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:29:39 2008 -0700"
      },
      "message": "Merge branch \u0027tracehook\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-utrace\n\n* \u0027tracehook\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-utrace:\n  tracehook: comment fixes\n"
    },
    {
      "commit": "bdee6ac7d1c9a4a9b65db1753b0bfa0b61361dde",
      "tree": "d2d260a3aa7e0902be023c0fbdb52ec26dbd6609",
      "parents": [
        "4836e3007882984279ca63d3c42bf0b14616eb78",
        "deec9ae31e6079551ce9260d29a4cf83e5b19a83"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:27:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:27:31 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:\n  atmel-mci: debugfs support\n  mmc: Add per-card debugfs support\n  mmc: Export internal host state through debugfs\n  imxmmc: fix crash when no platform data is provided\n  imxmmc: fix platform resources\n  imxmmc: remove DEBUG definition\n  mmc_spi: put signals to low power off fix\n"
    },
    {
      "commit": "4836e3007882984279ca63d3c42bf0b14616eb78",
      "tree": "28bf22726964e068b825491d71a141eefedbe5f8",
      "parents": [
        "5c7c204aeca51ccfad63caab4fcdc5d8026c0fd8",
        "4e1e018ecc6f7bfd10fc75b3ff9715cc8164e0a2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:23:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:23:44 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (39 commits)\n  [PATCH] fix RLIM_NOFILE handling\n  [PATCH] get rid of corner case in dup3() entirely\n  [PATCH] remove remaining namei_{32,64}.h crap\n  [PATCH] get rid of indirect users of namei.h\n  [PATCH] get rid of __user_path_lookup_open\n  [PATCH] f_count may wrap around\n  [PATCH] dup3 fix\n  [PATCH] don\u0027t pass nameidata to __ncp_lookup_validate()\n  [PATCH] don\u0027t pass nameidata to gfs2_lookupi()\n  [PATCH] new (local) helper: user_path_parent()\n  [PATCH] sanitize __user_walk_fd() et.al.\n  [PATCH] preparation to __user_walk_fd cleanup\n  [PATCH] kill nameidata passing to permission(), rename to inode_permission()\n  [PATCH] take noexec checks to very few callers that care\n  Re: [PATCH 3/6] vfs: open_exec cleanup\n  [patch 4/4] vfs: immutable inode checking cleanup\n  [patch 3/4] fat: dont call notify_change\n  [patch 2/4] vfs: utimes cleanup\n  [patch 1/4] vfs: utimes: move owner check into inode_change_ok()\n  [PATCH] vfs: use kstrdup() and check failing allocation\n  ...\n"
    },
    {
      "commit": "5c7c204aeca51ccfad63caab4fcdc5d8026c0fd8",
      "tree": "4bfd5f4455b706c9ba86a8925bf367f437d16336",
      "parents": [
        "228428428138e231a155464239880201e5cc8b44",
        "3712b42d4b1bec29a4232a6673bf2e6dcc5faa68"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:19:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:19:41 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/ISDN-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/ISDN-2.6:\n  Add layer1 over IP support\n  Add mISDN HFC multiport driver\n  Add mISDN HFC PCI driver\n  Add mISDN DSP\n  Add mISDN core files\n  Define AF_ISDN and PF_ISDN\n  Add mISDN driver\n"
    },
    {
      "commit": "228428428138e231a155464239880201e5cc8b44",
      "tree": "89b437f5501d03ca36b717e232337426d0de77ca",
      "parents": [
        "78681ac08a611313595d13cafabae1183b71ef48",
        "6c3b8fc618905d7599dcc514c99ce4293d476f39"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:17:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:17:56 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  netns: fix ip_rt_frag_needed rt_is_expired\n  netfilter: nf_conntrack_extend: avoid unnecessary \"ct-\u003eext\" dereferences\n  netfilter: fix double-free and use-after free\n  netfilter: arptables in netns for real\n  netfilter: ip{,6}tables_security: fix future section mismatch\n  selinux: use nf_register_hooks()\n  netfilter: ebtables: use nf_register_hooks()\n  Revert \"pkt_sched: sch_sfq: dump a real number of flows\"\n  qeth: use dev-\u003eml_priv instead of dev-\u003epriv\n  syncookies: Make sure ECN is disabled\n  net: drop unused BUG_TRAP()\n  net: convert BUG_TRAP to generic WARN_ON\n  drivers/net: convert BUG_TRAP to generic WARN_ON\n"
    },
    {
      "commit": "510a35d4a47802f4a0028aa6bd2ca2170da5e32f",
      "tree": "8eb0d6091fe89f013436c5080dc4cbaf825172cf",
      "parents": [
        "b2d002dba5a8a4c0c3ec96fd1ff3c9def6bd71a1"
      ],
      "author": {
        "name": "Andrea Righi",
        "email": "righi.andrea@gmail.com",
        "time": "Sat Jul 26 15:22:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:16:47 2008 -0700"
      },
      "message": "hugetlb: remove unused variable warning\n\nRemove the following warning when CONFIG_HUGETLB_PAGE is not set:\n\n\tipc/shm.c: In function `shm_get_stat\u0027:\n\tipc/shm.c:565: warning: unused variable `h\u0027\n\n[akpm@linux-foundation.org: use tabs, not spaces]\nSigned-off-by: Andrea Righi \u003crighi.andrea@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a9436d0c3cbe8941b1acd5b0736d355295cad98",
      "tree": "d29f52ca2778aa2aa1ee66158b234e4ac462013b",
      "parents": [
        "a048d3aff8b828b6c0fa7ddd90a531248ab4e0f9"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mb@bu3sch.de",
        "time": "Sat Jul 26 15:22:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:16:47 2008 -0700"
      },
      "message": "gpiolib: fix typo in comment\n\nThis fixes an off-by-one error in a comment.\n\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4cc38a1b383f0c6c65a3fef4ff8144e8000e4ec3",
      "tree": "41398a50217368a35f0a5653e4e38634bc90255a",
      "parents": [
        "3f8206d496e9e9495afb1d4e70d29712b4d403c9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 03:48:26 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:43 2008 -0400"
      },
      "message": "[PATCH] remove remaining namei_{32,64}.h crap\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3f8206d496e9e9495afb1d4e70d29712b4d403c9",
      "tree": "5bedea1aff8b5e584fbf8497c80fcaccf9242d69",
      "parents": [
        "964bd183624c03680796b63b4ab97ee3905a806a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 03:46:43 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:42 2008 -0400"
      },
      "message": "[PATCH] get rid of indirect users of namei.h\n\nfs.h needs path.h, not namei.h; nfs_fs.h doesn\u0027t need it at all.\nSeveral places in the tree needed direct include.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "964bd183624c03680796b63b4ab97ee3905a806a",
      "tree": "801fa25ccd01a7c7bf8ee793ba910edc8ce3f55a",
      "parents": [
        "516e0cc5646f377ab80fcc2ee639892eccb99853"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 03:33:14 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:41 2008 -0400"
      },
      "message": "[PATCH] get rid of __user_path_lookup_open\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "516e0cc5646f377ab80fcc2ee639892eccb99853",
      "tree": "e06296dcedb42dbe397d237887873e70c5823d51",
      "parents": [
        "3c333937ee3be114b181c4861188cfe8f6a59697"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 00:39:17 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:40 2008 -0400"
      },
      "message": "[PATCH] f_count may wrap around\n\nmake it atomic_long_t; while we are at it, get rid of useless checks in affs,\nhfs and hpfs - -\u003eopen() always has it equal to 1, -\u003erelease() - to 0.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2d8f30380ab8c706f4e0a8f1aaa22b5886e9ac8a",
      "tree": "b798097fd831eab39f35c8c2e5a8ccfd7a850ef5",
      "parents": [
        "256984a83880ff7ac78055cb87baea48137f0b77"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 22 09:59:21 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:34 2008 -0400"
      },
      "message": "[PATCH] sanitize __user_walk_fd() et.al.\n\n* do not pass nameidata; struct path is all the callers want.\n* switch to new helpers:\n\tuser_path_at(dfd, pathname, flags, \u0026path)\n\tuser_path(pathname, \u0026path)\n\tuser_lpath(pathname, \u0026path)\n\tuser_path_dir(pathname, \u0026path)  (fail if not a directory)\n  The last 3 are trivial macro wrappers for the first one.\n* remove nameidata in callers.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f419a2e3b64def707e1384ee38abb77f99af5f6d",
      "tree": "adbe12c510f04cf25ca6f822ee8004c8679a3a63",
      "parents": [
        "30524472c2f728c20d6bf35191042a5d455c0a64"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 22 00:07:17 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:31 2008 -0400"
      },
      "message": "[PATCH] kill nameidata passing to permission(), rename to inode_permission()\n\nIncidentally, the name that gives hundreds of false positives on grep\nis not a good idea...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9767d74957450da6365c363d69e3d02d605d7375",
      "tree": "913afe491d13b42b0cfcb540569080bba4725dfd",
      "parents": [
        "88b387824fdaecb6ba0f471acf0aadf7d24739fd"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Jul 01 15:01:26 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:25 2008 -0400"
      },
      "message": "[patch 1/4] vfs: utimes: move owner check into inode_change_ok()\n\nAdd a new ia_valid flag: ATTR_TIMES_SET, to handle the\nUTIMES_OMIT/UTIMES_NOW and UTIMES_NOW/UTIMES_OMIT cases.  In these\ncases neither ATTR_MTIME_SET nor ATTR_ATIME_SET is in the flags, yet\nthe POSIX draft specifies that permission checking is performed the\nsame way as if one or both of the times was explicitly set to a\ntimestamp.\n\nSee the path \"vfs: utimensat(): fix error checking for\n{UTIME_NOW,UTIME_OMIT} case\" by Michael Kerrisk for the patch\nintroducing this behavior.\n\nThis is a cleanup, as well as allowing filesystems (NFS/fuse/...) to\nperform their own permission checking instead of the default.\n\nCC: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCC: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "88b387824fdaecb6ba0f471acf0aadf7d24739fd",
      "tree": "bd0e169bc0d2a802cd4ea58baf957bfa4602e956",
      "parents": [
        "672b16b2f66c149888bd876a4f92342112205fe1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jul 21 18:06:36 2008 +0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:24 2008 -0400"
      },
      "message": "[PATCH] vfs: use kstrdup() and check failing allocation\n\n- use kstrdup() instead of kmalloc() + memcpy()\n- return NULL if allocating -\u003emnt_devname failed\n- mnt_devname should be const\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b77b0646ef4efe31a7449bb3d9360fd00f95433d",
      "tree": "f8487fe832fbe23400c9f98e808555f0251fb158",
      "parents": [
        "a110343f0d6d41f68b7cf8c00b57a3172c67f816"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jul 17 09:37:02 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:22 2008 -0400"
      },
      "message": "[PATCH] pass MAY_OPEN to vfs_permission() explicitly\n\n... and get rid of the last \"let\u0027s deduce mask from nameidata-\u003eflags\"\nbit.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a110343f0d6d41f68b7cf8c00b57a3172c67f816",
      "tree": "04f57e3454e796765a7395d2ece4739cf536ae9f",
      "parents": [
        "7f2da1e7d0330395e5e9e350b879b98a1ea495df"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jul 17 09:19:08 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:21 2008 -0400"
      },
      "message": "[PATCH] fix MAY_CHDIR/MAY_ACCESS/LOOKUP_ACCESS mess\n\n* MAY_CHDIR is redundant - it\u0027s an equivalent of MAY_ACCESS\n* MAY_ACCESS on fuse should affect only the last step of pathname resolution\n* fchdir() and chroot() should pass MAY_ACCESS, for the same reason why\n  chdir() needs that.\n* now that we pass MAY_ACCESS explicitly in all cases, LOOKUP_ACCESS can be\n  removed; it has no business being in nameidata.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7f2da1e7d0330395e5e9e350b879b98a1ea495df",
      "tree": "adc01ced45bb1de10fe58511e7143bbbd138a192",
      "parents": [
        "8bb79224b87aab92071e94d46e70bd160d89bf34"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 10 20:44:54 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:20 2008 -0400"
      },
      "message": "[PATCH] kill altroot\n\nlong overdue...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8bb79224b87aab92071e94d46e70bd160d89bf34",
      "tree": "dab47cbb434876e5916f18b738ef8bd3fe1e1ce1",
      "parents": [
        "db2e747b14991a4c6a5c98b0e5f552a193237c03"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 16 09:51:03 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:19 2008 -0400"
      },
      "message": "[PATCH] permission checks for chdir need special treatment only on the last step\n\n... so we ought to pass MAY_CHDIR to vfs_permission() instead of having\nit triggered on every step of preceding pathname resolution.  LOOKUP_CHDIR\nis killed by that.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "db2e747b14991a4c6a5c98b0e5f552a193237c03",
      "tree": "8850e8ef9e1a7bb3d7bbc051f191cd8350093564",
      "parents": [
        "7e79eedb3b22200cc8b774baea3a7bf28d766101"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Jun 24 16:50:16 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:18 2008 -0400"
      },
      "message": "[patch 5/5] vfs: remove mode parameter from vfs_symlink()\n\nRemove the unused mode parameter from vfs_symlink and callers.\n\nThanks to Tetsuo Handa for noticing.\n\nCC: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "2f1936b87783a3a56c9441b27b9ba7a747f11e8e",
      "tree": "024a0f3da74ba6365f209d03685133760146149b",
      "parents": [
        "c82e42da8a6b2f3a85dc4d4278cb8238702f8f64"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Jun 24 16:50:14 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:16 2008 -0400"
      },
      "message": "[patch 3/5] vfs: change remove_suid() to file_remove_suid()\n\nAll calls to remove_suid() are made with a file pointer, because\n(similarly to file_update_time) it is called when the file is written.\n\nClean up callers by passing in a file instead of a dentry.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "e6305c43eda10ebfd2ad9e35d6e172ccc7bb3695",
      "tree": "8a95bd0e27fb3ce895cca9ef91af2e1605e4cdab",
      "parents": [
        "1bd5191d9f5d1928c4efdf604c4164b04bb88dbe"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 15 21:03:57 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:14 2008 -0400"
      },
      "message": "[PATCH] sanitize -\u003epermission() prototype\n\n* kill nameidata * argument; map the 3 bits in -\u003eflags anybody cares\n  about to new MAY_... ones and pass with the mask.\n* kill redundant gfs2_iop_permission()\n* sanitize ecryptfs_permission()\n* fix remaining places where -\u003epermission() instances might barf on new\n  MAY_... found in mask.\n\nThe obvious next target in that direction is permission(9)\n\nfolded fix for nfs_permission() breakage from Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9043476f726802f4b00c96d0c4f418dde48d1304",
      "tree": "9ead0294bc75e219c12b44fc7eb8996248400f2a",
      "parents": [
        "ae7edecc9b8810770a8e5cb9a466ea4bdcfa8401"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 15 08:54:06 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:12 2008 -0400"
      },
      "message": "[PATCH] sanitize proc_sysctl\n\n* keep references to ctl_table_head and ctl_table in /proc/sys inodes\n* grab the former during operations, use the latter for access to\n  entry if that succeeds\n* have -\u003ed_compare() check if table should be seen for one who does lookup;\n  that allows us to avoid flipping inodes - if we have the same name resolve\n  to different things, we\u0027ll just keep several dentries and -\u003ed_compare()\n  will reject the wrong ones.\n* have -\u003elookup() and -\u003ereaddir() scan the table of our inode first, then\n  walk all ctl_table_header and scan -\u003eattached_by for those that are\n  attached to our directory.\n* implement -\u003egetattr().\n* get rid of insane amounts of tree-walking\n* get rid of the need to know dentry in -\u003epermission() and of the contortions\n  induced by that.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ae7edecc9b8810770a8e5cb9a466ea4bdcfa8401",
      "tree": "8c0a244f4aea3eca5d8edf45665266b007eb046e",
      "parents": [
        "bd7b1533cd6a68c734062aa69394bec7e2b1718e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 15 06:33:31 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:11 2008 -0400"
      },
      "message": "[PATCH] sysctl: keep track of tree relationships\n\nIn a sense, that\u0027s the heart of the series.  It\u0027s based on the following\nproperty of the trees we are actually asked to add: they can be split into\nstem that is already covered by registered trees and crown that is entirely\nnew.  IOW, if a/b and a/c/d are introduced by our tree, then a/c is also\nintroduced by it.\n\nThat allows to associate tree and table entry with each node in the union;\nwhile directory nodes might be covered by many trees, only one will cover\nthe node by its crown.  And that will allow much saner logics for /proc/sys\nin the next patches.  This patch introduces the data structures needed to\nkeep track of that.\n\nWhen adding a sysctl table, we find a \"parent\" one.  Which is to say,\nfind the deepest node on its stem that already is present in one of the\ntables from our table set or its ancestor sets.  That table will be our\nparent and that node in it - attachment point.  Add our table to list\nanchored in parent, have it refer the parent and contents of attachment\npoint.  Also remember where its crown lives.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bd7b1533cd6a68c734062aa69394bec7e2b1718e",
      "tree": "f968f6c68672502db08912bf69d8e3d1ba25169b",
      "parents": [
        "f7e6ced4061da509f737541ca4dbd44d83a6e82f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 15 16:00:59 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:10 2008 -0400"
      },
      "message": "[PATCH] sysctl: make sure that /proc/sys/net/ipv4 appears before per-ns ones\n\nMassage ipv4 initialization - make sure that net.ipv4 appears as\nnon-per-net-namespace before it shows up in per-net-namespace sysctls.\nThat\u0027s the only change outside of sysctl.c needed to get sane ordering\nrules and data structures for sysctls (esp. for procfs side of that\nmess).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f7e6ced4061da509f737541ca4dbd44d83a6e82f",
      "tree": "065a6907a085854da1eb176da1314c472e69a364",
      "parents": [
        "734550921e9b7ab924a43aa3d0bd4239dac4fbf1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 15 01:44:23 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:09 2008 -0400"
      },
      "message": "[PATCH] allow delayed freeing of ctl_table_header\n\nRefcount the sucker; instead of freeing it by the end of unregistration\njust drop the refcount and free only when it hits zero.  Make sure that\nwe _always_ make -\u003eunregistering non-NULL in start_unregistering().\n\nThat allows anybody to get a reference to such puppy, preventing its\nfreeing and reuse.  It does *not* block unregistration.  Anybody who\nholds such a reference can\n\t* try to grab a \"use\" reference (ctl_head_grab()); that will\nsucceeds if and only if it hadn\u0027t entered unregistration yet.  If it\nsucceeds, we can use it in all normal ways until we release the \"use\"\nreference (with ctl_head_finish()).  Note that this relies on having\n-\u003eunregistering become non-NULL in all cases when one starts to unregister\nthe sucker.\n\t* keep pointers to ctl_table entries; they *can* be freed if\nthe entire thing is unregistered.  However, if ctl_head_grab() succeeds,\nwe know that unregistration had not happened (and will not happen until\nctl_head_finish()) and such pointers can be used safely.\n\nIOW, now we can have inodes under /proc/sys keep references to ctl_table\nentries, protecting them with references to ctl_table_header and\ngrabbing the latter for the duration of operations that require access\nto ctl_table.  That won\u0027t cause deadlocks, since unregistration will not\nbe stopped by mere keeping a reference to ctl_table_header.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "734550921e9b7ab924a43aa3d0bd4239dac4fbf1",
      "tree": "7be4b0808ba9860f1d953b45120262a277866021",
      "parents": [
        "7ac6cd653d7c31ad6b7bb5b88c549c4ebf628c34"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 14 21:22:20 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:08 2008 -0400"
      },
      "message": "[PATCH] beginning of sysctl cleanup - ctl_table_set\n\nNew object: set of sysctls [currently - root and per-net-ns].\nContains: pointer to parent set, list of tables and \"should I see this set?\"\nmethod (-\u003eis_seen(set)).\nCurrent lists of tables are subsumed by that; net-ns contains such a beast.\n-\u003elookup() for ctl_table_root returns pointer to ctl_table_set instead of\nthat to -\u003elist of that ctl_table_set.\n\n[folded compile fixes by rdd for configs without sysctl]\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d2d9648ec6858e19d16a0b16da62534e85888653",
      "tree": "ba3d66e3ed90ef56ec58e699beeb487db930375b",
      "parents": [
        "d70b67c8bc72ee23b55381bd6a884f4796692f77"
      ],
      "author": {
        "name": "Denys Vlasenko",
        "email": "vda.linux@googlemail.com",
        "time": "Tue Jul 01 14:16:09 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:06 2008 -0400"
      },
      "message": "[PATCH] reuse xxx_fifo_fops for xxx_pipe_fops\n\nMerge fifo and pipe file_operations.\n\nSigned-off-by: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "93bc4e89c260d91576840c4881d1066d84ccd422",
      "tree": "456176a054fc9a3fed18ac6ce50c7a34a86c5808",
      "parents": [
        "3918fed5f31213067c1c345bd904e1ea369e6819"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Sat Jul 26 17:49:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 26 17:49:33 2008 -0700"
      },
      "message": "netfilter: fix double-free and use-after free\n\nAs suggested by Patrick McHardy, introduce a __krealloc() that doesn\u0027t\nfree the original buffer to fix a double-free and use-after-free bug\nintroduced by me in netfilter that uses RCU.\n\nReported-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nTested-by: Dieter Ries \u003cclip2@gmx.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "af69fb3a8ffa37e986db00ed93099dc44babeef4",
      "tree": "63354d4ae8b0d6e08f3f550e55cb6c4ccc548bd3",
      "parents": [
        "1700fe1a10dc0eaac0ef60a8093eaeafa9bff9ae"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sun Jul 27 02:00:43 2008 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sun Jul 27 02:00:43 2008 +0200"
      },
      "message": "Add mISDN HFC multiport driver\n\nEnable support for cards with Cologne Chip AG\u0027s HFC multiport\nchip.\n\nSigned-off-by: Karsten Keil \u003ckkeil@suse.de\u003e\n"
    },
    {
      "commit": "960366cf8dbb3359afaca30cf7fdbf69a6d6dda7",
      "tree": "261bc6e6584caf44d8d1fa319e6228431ac3b91d",
      "parents": [
        "1b2b03f8e514e4f68e293846ba511a948b80243c"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sun Jul 27 01:56:38 2008 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sun Jul 27 01:56:38 2008 +0200"
      },
      "message": "Add mISDN DSP\n\nEnable support for digital audio processing capability.\nThis module may be used for special applications that require\ncross connecting of bchannels, conferencing, dtmf decoding\necho cancelation, tone generation, and Blowfish encryption and\ndecryption.\nIt may use hardware features if available.\n\nSigned-off-by: Karsten Keil \u003ckkeil@suse.de\u003e\n"
    },
    {
      "commit": "1b2b03f8e514e4f68e293846ba511a948b80243c",
      "tree": "5ffb07d532afca95170ea0615bb74af78b0d0483",
      "parents": [
        "04578dd330f1ec6bc9c4233833bee0d0ca73ff09"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sun Jul 27 01:54:58 2008 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sun Jul 27 01:54:58 2008 +0200"
      },
      "message": "Add mISDN core files\n\nAdd mISDN core files\n\nSigned-off-by: Karsten Keil \u003ckkeil@suse.de\u003e\n"
    },
    {
      "commit": "04578dd330f1ec6bc9c4233833bee0d0ca73ff09",
      "tree": "dc7557207bb86a37d166efa4ca6d29e66b944b45",
      "parents": [
        "e4ac9bc1f6686dcb8c34e2756aa93cc9546fa6ae"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sat Jul 26 18:52:34 2008 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Sun Jul 27 01:47:00 2008 +0200"
      },
      "message": "Define AF_ISDN and PF_ISDN\n\nDefine the address and protocol family value for mISDN.\n\nSigned-off-by: Karsten Keil \u003ckkeil@suse.de\u003e\n"
    },
    {
      "commit": "f4b7f927b531ca350cfc4ca1bdc3377dac7f9a32",
      "tree": "9ad0b50fba46d24deb361a37a28141b12830b443",
      "parents": [
        "6edd8ee60ac9b974bd6ec3b1bcb2aab02762fa8c"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "haavard.skinnemoen@atmel.com",
        "time": "Thu Jul 24 14:18:58 2008 +0200"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Sun Jul 27 01:26:17 2008 +0200"
      },
      "message": "mmc: Add per-card debugfs support\n\nFor each card successfully added to the bus, create a subdirectory under\nthe host\u0027s debugfs root with information about the card.\n\nAt the moment, only a single file is added to the card directory for\nall cards: \"state\". It reflects the \"state\" field in struct mmc_card,\nindicating whether the card is present, readonly, etc.\n\nFor MMC and SD cards (not SDIO), another file is added: \"status\".\nReading this file will ask the card about its current status and\nreturn it. This can be useful if the card just refuses to respond to\nany commands, which might indicate that the card state is not what the\nMMC core thinks it is (due to a missing stop command, for example.)\n\nSigned-off-by: Haavard Skinnemoen \u003chaavard.skinnemoen@atmel.com\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "6edd8ee60ac9b974bd6ec3b1bcb2aab02762fa8c",
      "tree": "0f24dc879d9645935974489d152dd83815fcff68",
      "parents": [
        "c5d5e9c40fc6cabedd5fdc7441e6e9d37f5c9bba"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "haavard.skinnemoen@atmel.com",
        "time": "Thu Jul 24 14:18:57 2008 +0200"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Sun Jul 27 01:26:16 2008 +0200"
      },
      "message": "mmc: Export internal host state through debugfs\n\nWhen CONFIG_DEBUG_FS is set, create a few files under /sys/kernel/debug\ncontaining information about an mmc host\u0027s internal state. Currently,\njust a single file is created, \"ios\", which contains information about\nthe current operating parameters for the bus (clock speed, bus width,\netc.)\n\nHost drivers can add additional files and directories under the host\u0027s\nroot directory by passing the debugfs_root field in struct mmc_host as\nthe \u0027parent\u0027 parameter to debugfs_create_*.\n\nSigned-off-by: Haavard Skinnemoen \u003chaavard.skinnemoen@atmel.com\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "a9906a19193db69ad0158f289f839edf8aaf103f",
      "tree": "6168b333784d733213e4978b8f35cdde7ae66e02",
      "parents": [
        "a048d3aff8b828b6c0fa7ddd90a531248ab4e0f9"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Sat Jul 26 14:41:26 2008 -0700"
      },
      "committer": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Sat Jul 26 14:41:26 2008 -0700"
      },
      "message": "tracehook: comment fixes\n\nThis fixes some typos and errors in \u003clinux/tracehook.h\u003e comments.\nNo code changes.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\n"
    },
    {
      "commit": "fb3b80614438f8b73b3879a19350439d6aa402da",
      "tree": "8397dc4dd85b3ecc8d3cb3f56d143843a6346b8c",
      "parents": [
        "7f268a2ba7c884a239713696238dd4207a57dd9a",
        "3a61ec387c9092dfc91a5959145d36835a72fc4c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 13:25:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 13:25:05 2008 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, AMD IOMMU: include amd_iommu_last_bdf in device initialization\n  x86: fix IBM Summit based systems\u0027 phys_cpu_present_map on 32-bit kernels\n  x86, RDC321x: remove gpio.h complications\n  x86, RDC321x: add to mach-default\n  crashdump: fix undefined reference to `elfcorehdr_addr\u0027\n  flag parameters: fix compile error of sys_epoll_create1\n"
    },
    {
      "commit": "7f268a2ba7c884a239713696238dd4207a57dd9a",
      "tree": "fdc02fecda32f5df8de3ddc2c01c29ba68e6a42b",
      "parents": [
        "689796a141cea79d745a4689c65dd01c39e5e100",
        "2d2009806dd843f3adc0cbbb5d2204980f28111a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 13:23:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 13:23:17 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (30 commits)\n  Blackfin arch: If we double fault, rather than hang forever, reset\n  Blackfin arch: When icache is off, make sure people know it\n  Blackfin arch: Fix bug - skip single step in high priority interrupt handler instead of disabling all interrupts in single step debugging.\n  Blackfin arch: cache the values of vco/sclk/cclk as the overhead of doing so (~24 bytes) is worth avoiding the software mult/div routines\n  Blackfin arch: fix bug - IMDMA is not type struct dma_register\n  Blackfin arch: check the EXTBANKS field of the DDRCTL1 register to see if we are using both memory banks\n  Blackfin arch: Apply Bluetechnix CM-BF527 board support patch\n  Blackfin arch: Add unwinding for stack info, and a little more detail on trace buffer\n  Blackfin arch: Add ISP1760 board resources to BF548-EZKIT\n  Blackfin arch: fix bug - detect 0.1 silicon revision BF527-EZKIT as 0.0 version\n  Blackfin arch: add missing IORESOURCE_MEM flags to UART3\n  Blackfin arch: Add return value check in bfin_sir_probe(), remove SSYNC().\n  Blackfin arch:  Extend sram malloc to handle L2 SRAM.\n  Blackfin arch: Remove useless config option.\n  Blackfin arch:  change L1 malloc to base on slab cache and lists.\n  Blackfin arch: use local labels and ENDPROC() markings\n  Blackfin arch: Do not need this dualcore test module in kernel.\n  Blackfin arch: Allow ptrace to peek and poke application data in L1 data SRAM.\n  Blackfin arch: Add ANOMALY_05000368 workaround\n  Blackfin arch: Functional power management support\n  ...\n"
    },
    {
      "commit": "9580d85f9cdb076c4bfb467bc6c0d3c5e499957a",
      "tree": "ff746752ff4ce2bff2ae50cea345c1bbbe2b3ba7",
      "parents": [
        "7c363b8c6536f26934172d3c46f0bbec01a97c61"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 19:46:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:12 2008 -0700"
      },
      "message": "drivers/char/rtc.c: make 2 functions static\n\nThe following functions can now become static:\n - rtc_interrupt()\n - rtc_get_rtc_time()\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Bernhard Walle \u003cbwalle@suse.de\u003e\nAcked-by: Paul Gortmaker \u003cp_gortmaker@yahoo.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7c363b8c6536f26934172d3c46f0bbec01a97c61",
      "tree": "46a9ce1b0ef9285ab2c7b04f0cf584294853a16f",
      "parents": [
        "15f59adae001766a2c7f7fe4f196387bb04bcff5"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 19:46:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:12 2008 -0700"
      },
      "message": "mm/swapfile.c: make code static\n\nThis patch makes the following needlessly global code static:\n - swap_lock\n - nr_swapfiles\n - struct swap_list\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15f59adae001766a2c7f7fe4f196387bb04bcff5",
      "tree": "941f7a7c38af5783d55560ce303f3432fcffc01b",
      "parents": [
        "9d8fddfb17aaee4ffc5e3d0560620d0fa8b50a42"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 19:46:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:12 2008 -0700"
      },
      "message": "make mm/memory.c:print_bad_pte() static\n\nThis patch makes the needlessly global print_bad_pte() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d8fddfb17aaee4ffc5e3d0560620d0fa8b50a42",
      "tree": "f8a6b13a3048d1ae9c169b2d732fa05d8dcdf2ac",
      "parents": [
        "9e5c6da71e89fa25ced6e88182225a99941bec90"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 19:46:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:12 2008 -0700"
      },
      "message": "mm/allocpercpu.c: make 4 functions static\n\nThis patch makes the following needlessly global functions static:\n - percpu_depopulate()\n - __percpu_depopulate_mask()\n - percpu_populate()\n - __percpu_populate_mask()\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bbc698636ed48b6fcd323964e0f847a6a796325d",
      "tree": "c90d31c179aad154089a88d4845f1721ded40860",
      "parents": [
        "85ba2d862e521375a8ee01526c5c46b1f24bb4af"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:10 2008 -0700"
      },
      "message": "task_current_syscall\n\nThis adds the new function task_current_syscall() on machines where the\nasm/syscall.h interface is supported (CONFIG_HAVE_ARCH_TRACEHOOK).  It\u0027s\nexported for modules to use in the future.  This function safely samples\nthe state of a blocked thread to collect what system call it is blocked\nin, and the six system call argument registers.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "85ba2d862e521375a8ee01526c5c46b1f24bb4af",
      "tree": "f098555cb580b2864f145aa845b574f07d2cf694",
      "parents": [
        "1f5a4ad97a0e7b663d527ecc02aabe203d000d91"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:58 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: wait_task_inactive\n\nThis extends wait_task_inactive() with a new argument so it can be used in\na \"soft\" mode where it will check for the task changing state unexpectedly\nand back off.  There is no change to existing callers.  This lays the\ngroundwork to allow robust, noninvasive tracing that can try to sample a\nblocked thread but back off safely if it wakes up.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "828c365cc8b8d38c346fccb19fa80d28f2240831",
      "tree": "cedb0f1ce389f4b12d7b0975ce52c8af7939cfcd",
      "parents": [
        "64b1208d5b0ef8859fd52ea7ae286a3eb994669b"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: asm/syscall.h\n\nThis adds asm-generic/syscall.h, which documents what a real\nasm-ARCH/syscall.h file should define.  This is not used yet, but will\nprovide all the machine-dependent details of examining a user system call\nabout to begin, in progress, or just ended.\n\nEach arch should add an asm-ARCH/syscall.h that defines all the entry\npoints documented in asm-generic/syscall.h, as short inlines if possible.\nThis lets us write new tracing code that understands user system call\nregisters, without any new arch-specific work.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64b1208d5b0ef8859fd52ea7ae286a3eb994669b",
      "tree": "ebb92b717406dc104924c4ccdedf14357a62b84f",
      "parents": [
        "b787f7ba677840da16a2228c16571ce8a1fcb799"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: TIF_NOTIFY_RESUME\n\nThis adds tracehook.h inlines to enable a new arch feature in support of\nuser debugging/tracing.  This is not used yet, but it lays the groundwork\nfor a debugger to be able to wrangle a task that\u0027s possibly running,\nwithout interrupting its syscalls in progress.\n\nEach arch should define TIF_NOTIFY_RESUME, and in their entry.S code treat\nit much like TIF_SIGPENDING.  That is, it causes you to take the slow path\nwhen returning to user mode, where you get the full user-mode state\naccessible as for signal handling or ptrace.  The arch code should check\nTIF_NOTIFY_RESUME after handling TIF_SIGPENDING.  When it\u0027s set, clear it\nand then call tracehook_notify_resume().\n\nIn future, tracing code will call set_notify_resume() when it wants to get\na callback in tracehook_notify_resume().\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b787f7ba677840da16a2228c16571ce8a1fcb799",
      "tree": "b1838c4ae7f38c00efc2375871a255275500f245",
      "parents": [
        "2b2a1ff64afbadac842bbc58c5166962cf4f7664"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: force signal_pending()\n\nThis defines a new hook tracehook_force_sigpending() that lets tracing\ncode decide to force TIF_SIGPENDING on in recalc_sigpending().\n\nThis is not used yet, so it compiles away to nothing for now.  It lays the\ngroundwork for new tracing code that can interrupt a task synthetically\nwithout actually sending a signal.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2b2a1ff64afbadac842bbc58c5166962cf4f7664",
      "tree": "660640eb95117ce6f7436331f23f73805abced10",
      "parents": [
        "fa00b80b3c41a845b3d56f866fb40a2e98754c51"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: death\n\nThis moves the ptrace logic in task death (exit_notify) into tracehook.h\ninlines.  Some code is rearranged slightly to make things nicer.  There is\nno change, only cleanup.\n\nThere is one hook called with the tasklist_lock write-locked, as ptrace\nneeds.  There is also a new hook called after exit_state changes and\nwithout locks.  This is a better place for tracing work to be in the\nfuture, since it doesn\u0027t delay the whole system with locking.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fa00b80b3c41a845b3d56f866fb40a2e98754c51",
      "tree": "819d6966cad1fdeef3f32497c696afb203e3720b",
      "parents": [
        "7bcf6a2ca5f639b038c48711ebe6c4eca2036641"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: job control\n\nThis defines the tracehook_notify_jctl() hook to formalize the ptrace\neffects on the job control notifications.  There is no change, only\ncleanup.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7bcf6a2ca5f639b038c48711ebe6c4eca2036641",
      "tree": "4219a0725d581310f729d4616361febd700f0574",
      "parents": [
        "283d7559e7712f95a05331eb0a85394c6368101b"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: get_signal_to_deliver\n\nThis defines the tracehook_get_signal() hook to allow tracing code to slip\nin before normal signal dequeuing.  This lays the groundwork for new\ntracing features that can inject synthetic signals outside the normal\nqueue or control the disposition of delivered signals.  The calling\nconvention lets tracehook_get_signal() decide both exactly what will\nhappen and what signal number to report in the handler/exit.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "283d7559e7712f95a05331eb0a85394c6368101b",
      "tree": "9d8249b44cfe9a3216320940ec5754ecfd220bcd",
      "parents": [
        "445a91d2fe3667fb8fc251433645f686933cf56a"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: syscall\n\nThis adds standard tracehook.h inlines for arch code to call when\nTIF_SYSCALL_TRACE has been set.  This replaces having each arch implement\nthe ptrace guts for its syscall tracing support.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "445a91d2fe3667fb8fc251433645f686933cf56a",
      "tree": "496f0715ba3079f3bf98e9808480fe7f25872b16",
      "parents": [
        "35de254dc60f91004b3b5ebb1fc7b2c3093d6032"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: tracehook_consider_fatal_signal\n\nThis defines tracehook_consider_fatal_signal() has a fine-grained hook for\ndeciding to skip the special cases for a fatal signal, as ptrace does.\nThere is no change, only cleanup.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "35de254dc60f91004b3b5ebb1fc7b2c3093d6032",
      "tree": "101e174247bb3174c8abe0fb8d1405ed6a4db6d1",
      "parents": [
        "c45aea27617d6a1e0aacddc3b0233f704222fcbd"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: tracehook_consider_ignored_signal\n\nThis defines tracehook_consider_ignored_signal() has a fine-grained hook\nfor deciding to prevent the normal short-circuit of sending an ignored\nsignal, as ptrace does.  There is no change, only cleanup.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c45aea27617d6a1e0aacddc3b0233f704222fcbd",
      "tree": "9406cbb5f3ca0029b2f6ef44a951fb7d21fe93f9",
      "parents": [
        "fa8e26ccd485216fc45c8c2dd1ec3b7ef1a0a2f8"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: tracehook_signal_handler\n\nThis defines tracehook_signal_handler() as a hook for the arch signal\nhandling code to call.  It gives ptrace the opportunity to stop for a\npseudo-single-step trap immediately after signal handler setup is done.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fa8e26ccd485216fc45c8c2dd1ec3b7ef1a0a2f8",
      "tree": "b6c3059593d7d185aaf7f5b69c363a48b18c5bb1",
      "parents": [
        "0d094efeb1e98010c6b99923f1eb7e17bf1e3a74"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: tracehook_expect_breakpoints\n\nThis adds tracehook_expect_breakpoints() as a formal hook for the nommu\ncode to use for its, \"Is text-poking likely?\" check at mmap time.  This\nnames the actual semantics the code means to test, and documents it.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0d094efeb1e98010c6b99923f1eb7e17bf1e3a74",
      "tree": "6ee271b6da5796e5321d2ab6f9d7d9ba03c300a2",
      "parents": [
        "dae33574dcf5211e1f43c7e45fa29f73ba3e00cb"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: tracehook_tracer_task\n\nThis adds the tracehook_tracer_task() hook to consolidate all forms of\n\"Who is using ptrace on me?\" logic.  This is used for \"TracerPid:\" in\n/proc and for permission checks.  We also clean up the selinux code the\ncalled an identical accessor.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dae33574dcf5211e1f43c7e45fa29f73ba3e00cb",
      "tree": "090eb4af17451836fb39cebf57fbee64a6bd23b5",
      "parents": [
        "daded34be96b1975ff8539ff62ad8b158ce7d842"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:48 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: release_task\n\nThis moves the ptrace-related logic from release_task into tracehook.h and\nptrace.h inlines.  It provides clean hooks both before and after locking\ntasklist_lock, for future tracing logic to do more cleanup without the\nlock.\n\nThis also changes release_task() itself in the rare \"zap_leader\" case to\nset the leader to EXIT_DEAD before iterating.  This maintains the\ninvariant that release_task() only ever handles a task in EXIT_DEAD.  This\nis a common-sense invariant that is already always true except in this one\narcane case of zombie leader whose parent ignores SIGCHLD.\n\nThis change is harmless and only costs one store in this one rare case.\nIt keeps the expected state more consisently sane, which is nicer when\ndebugging weirdness in release_task().  It also lets some future code in\nthe tracehook entry points rely on this invariant for bookkeeping.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "daded34be96b1975ff8539ff62ad8b158ce7d842",
      "tree": "8cab5e809e513efd1a403e587a53a1e75365d1fc",
      "parents": [
        "09a05394fe2448a4139b014936330af23fa7ec83"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: vfork-done\n\nThis moves the PTRACE_EVENT_VFORK_DONE tracing into a tracehook.h inline,\ntracehook_report_vfork_done().  The change has no effect, just clean-up.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "09a05394fe2448a4139b014936330af23fa7ec83",
      "tree": "a7b3f0ffe271d4d35c3b98a99183d8792ea4db53",
      "parents": [
        "30199f5a46aee204bf437a4f5b0740f3efe448b7"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: clone\n\nThis moves all the ptrace initialization and tracing logic for task\ncreation into tracehook.h and ptrace.h inlines.  It reorganizes the code\nslightly, but should not change any behavior.\n\nThere are four tracehook entry points, at each important stage of task\ncreation.  This keeps the interface from the core fork.c code fairly\nclean, while supporting the complex setup required for ptrace or something\nlike it.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30199f5a46aee204bf437a4f5b0740f3efe448b7",
      "tree": "9855ecf45727f6c41e9d75d4a5ac68c35546c14d",
      "parents": [
        "ff1188646c6870f336e910fb894eeed74f50471f"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: exit\n\nThis moves the PTRACE_EVENT_EXIT tracing into a tracehook.h inline,\ntracehook_report_exec().  The change has no effect, just clean-up.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6341c393fcc37d58727865f1ee2f65e632e9d4f0",
      "tree": "6e88d928e17f663b225884e81877a7a069d7c514",
      "parents": [
        "88ac2921a71f788ed693bcd44731dd6bc1994640"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: exec\n\nThis moves all the ptrace hooks related to exec into tracehook.h inlines.\n\nThis also lifts the calls for tracing out of the binfmt load_binary hooks\ninto search_binary_handler() after it calls into the binfmt module.  This\nchange has no effect, since all the binfmt modules\u0027 load_binary functions\ndid the call at the end on success, and now search_binary_handler() does\nit immediately after return if successful.  We consolidate the repeated\ncode, and binfmt modules no longer need to import ptrace_notify().\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88ac2921a71f788ed693bcd44731dd6bc1994640",
      "tree": "db7039299713fec545061f884878563f8ae0caa6",
      "parents": [
        "267e2a9c71b8e088ac307f9549f71468e86e26c1"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:08 2008 -0700"
      },
      "message": "tracehook: add linux/tracehook.h\n\nThis patch series introduces the \"tracehook\" interface layer of inlines in\n\u003clinux/tracehook.h\u003e.  There are more details in the log entry for patch\n01/23 and in the header file comments inside that patch.  Most of these\nchanges move code around with little or no change, and they should not\nbreak anything or change any behavior.\n\nThis sets a new standard for uniform arch support to enable clean\narch-independent implementations of new debugging and tracing stuff,\ndenoted by CONFIG_HAVE_ARCH_TRACEHOOK.  Patch 20/23 adds that symbol to\narch/Kconfig, with comments listing everything an arch has to do before\nsetting \"select HAVE_ARCH_TRACEHOOK\".  These are elaborted a bit at:\n\n\thttp://sourceware.org/systemtap/wiki/utrace/arch/HowTo\n\nThe new inlines that arch code must define or call have detailed kerneldoc\ncomments in the generic header files that say what is required.\n\nNo arch is obligated to do any work, and no arch\u0027s build should be broken\nby these changes.  There are several steps that each arch should take so\nit can set HAVE_ARCH_TRACEHOOK.  Most of these are simple.  Providing this\nsupport will let new things people add for doing debugging and tracing of\nuser-level threads \"just work\" for your arch in the future.  For an arch\nthat does not provide HAVE_ARCH_TRACEHOOK, some new options for such\nfeatures will not be available for config.\n\nI have done some arch work and will submit this to the arch maintainers\nafter the generic tracehook series settles in.  For now, that work is\navailable in my GIT repositories, and in patch and mbox-of-patches form at\nhttp://people.redhat.com/roland/utrace/2.6-current/\n\nThis paves the way for my \"utrace\" work, to be submitted later.  But it is\nnot innately tied to that.  I hope that the tracehook series can go in\nsoon regardless of what eventually does or doesn\u0027t go on top of it.  For\nanyone implementing any kind of new tracing/debugging plan, or just\nunderstanding all the context of the existing ptrace implementation,\nhaving tracehook.h makes things much easier to find and understand.\n\nThis patch:\n\nThis adds the new kernel-internal header file \u003clinux/tracehook.h\u003e.  This\nis not yet used at all.  The comments in the header introduce what the\nfollowing series of patches is about.\n\nThe aim is to formalize and consolidate all the places that the core\nkernel code and the arch code now ties into the ptrace implementation.\n\nThese patches mostly don\u0027t cause any functional change.  They just move\nthe details of ptrace logic out of core code into tracehook.h inlines,\nwhere they are mostly compiled away to the same as before.  All that\nchanges is that everything is thoroughly documented and any future\nreworking of ptrace, or addition of something new, would not have to touch\ncore code all over, just change the tracehook.h inlines.\n\nThe new linux/ptrace.h inlines are used by the following patches in the\nnew tracehook_*() inlines.  Using these helpers for the ptrace event stops\nmakes it simple to change or disable the old ptrace implementation of\nthese stops conditionally later.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51cc50685a4275c6a02653670af9f108a64e01cf",
      "tree": "819d47bd2b0c8a9d1835d863853804b0a0242b97",
      "parents": [
        "d91958815d214ea365b98cbff6215383897edcb6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Jul 25 19:45:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:07 2008 -0700"
      },
      "message": "SL*B: drop kmem cache argument from constructor\n\nKmem cache passed to constructor is only needed for constructors that are\nthemselves multiplexeres.  Nobody uses this \"feature\", nor does anybody uses\npassed kmem cache in non-trivial way, so pass only pointer to object.\n\nNon-trivial places are:\n\tarch/powerpc/mm/init_64.c\n\tarch/powerpc/mm/hugetlbpage.c\n\nThis is flag day, yes.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jon Tollefson \u003ckniht@linux.vnet.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\n[akpm@linux-foundation.org: fix arch/powerpc/mm/hugetlbpage.c]\n[akpm@linux-foundation.org: fix mm/slab.c]\n[akpm@linux-foundation.org: fix ubifs]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19fd6231279be3c3bdd02ed99f9b0eb195978064",
      "tree": "ee09121054262d73c551b57114acd855b82a7a82",
      "parents": [
        "a60637c85893e7191faaafa6a72e197c24386727"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "mm: spinlock tree_lock\n\nmapping-\u003etree_lock has no read lockers.  convert the lock from an rwlock\nto a spinlock.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e286781d5f2e9c846e012a39653a166e9d31777d",
      "tree": "14958fe6d8f3e0459c96c68b3034ea2433ab85ac",
      "parents": [
        "47feff2c8eefe85099f87c43d3096855f0085ca0"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "mm: speculative page references\n\nIf we can be sure that elevating the page_count on a pagecache page will\npin it, we can speculatively run this operation, and subsequently check to\nsee if we hit the right page rather than relying on holding a lock or\notherwise pinning a reference to the page.\n\nThis can be done if get_page/put_page behaves consistently throughout the\nwhole tree (ie.  if we \"get\" the page after it has been used for something\nelse, we must be able to free it with a put_page).\n\nActually, there is a period where the count behaves differently: when the\npage is free or if it is a constituent page of a compound page.  We need\nan atomic_inc_not_zero operation to ensure we don\u0027t try to grab the page\nin either case.\n\nThis patch introduces the core locking protocol to the pagecache (ie.\nadds page_cache_get_speculative, and tweaks some update-side code to make\nit work).\n\nThanks to Hugh for pointing out an improvement to the algorithm setting\npage_count to zero when we have control of all references, in order to\nhold off speculative getters.\n\n[kamezawa.hiroyu@jp.fujitsu.com: fix migration_entry_wait()]\n[hugh@veritas.com: fix add_to_page_cache]\n[akpm@linux-foundation.org: repair a comment]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "47feff2c8eefe85099f87c43d3096855f0085ca0",
      "tree": "a3a6d005f202d1a37bb406c5623a9d09a447b0f0",
      "parents": [
        "30002ed2e41830ec03ec3e577ad83ac6b188f96e"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "radix-tree: add gang_lookup_slot, gang_lookup_slot_tag\n\nIntroduce gang_lookup_slot() and gang_lookup_slot_tag() functions, which\nare used by lockless pagecache.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8174c430e445a93016ef18f717fe570214fa38bf",
      "tree": "f1b4426eae7401425e9102c7b3e141be86f0930c",
      "parents": [
        "21cc199baa815d7b3f1ace4be20b9558cbddc00f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "x86: lockless get_user_pages_fast()\n\nImplement get_user_pages_fast without locking in the fastpath on x86.\n\nDo an optimistic lockless pagetable walk, without taking mmap_sem or any\npage table locks or even mmap_sem.  Page table existence is guaranteed by\nturning interrupts off (combined with the fact that we\u0027re always looking\nup the current mm, means we can do the lockless page table walk within the\nconstraints of the TLB shootdown design).  Basically we can do this\nlockless pagetable walk in a similar manner to the way the CPU\u0027s pagetable\nwalker does not have to take any locks to find present ptes.\n\nThis patch (combined with the subsequent ones to convert direct IO to use\nit) was found to give about 10% performance improvement on a 2 socket 8\ncore Intel Xeon system running an OLTP workload on DB2 v9.5\n\n \"To test the effects of the patch, an OLTP workload was run on an IBM\n  x3850 M2 server with 2 processors (quad-core Intel Xeon processors at\n  2.93 GHz) using IBM DB2 v9.5 running Linux 2.6.24rc7 kernel.  Comparing\n  runs with and without the patch resulted in an overall performance\n  benefit of ~9.8%.  Correspondingly, oprofiles showed that samples from\n  __up_read and __down_read routines that is seen during thread contention\n  for system resources was reduced from 2.8% down to .05%.  Monitoring the\n  /proc/vmstat output from the patched run showed that the counter for\n  fast_gup contained a very high number while the fast_gup_slow value was\n  zero.\"\n\n(fast_gup is the old name for get_user_pages_fast, fast_gup_slow is a\ncounter we had for the number of times the slowpath was invoked).\n\nThe main reason for the improvement is that DB2 has multiple threads each\nissuing direct-IO.  Direct-IO uses get_user_pages, and thus the threads\ncontend the mmap_sem cacheline, and can also contend on page table locks.\n\nI would anticipate larger performance gains on larger systems, however I\nthink DB2 uses an adaptive mix of threads and processes, so it could be\nthat thread contention remains pretty constant as machine size increases.\nIn which case, we stuck with \"only\" a 10% gain.\n\nThe downside of using get_user_pages_fast is that if there is not a pte\nwith the correct permissions for the access, we end up falling back to\nget_user_pages and so the get_user_pages_fast is a bit of extra work.\nHowever this should not be the common case in most performance critical\ncode.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: Kconfig fix]\n[akpm@linux-foundation.org: Makefile fix/cleanup]\n[akpm@linux-foundation.org: warning fix]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21cc199baa815d7b3f1ace4be20b9558cbddc00f",
      "tree": "eb4f3fa42a83613e2fe586b2555a811740952dce",
      "parents": [
        "a0a8f5364a5ad248aec6cb705e0092ff563edc2f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "mm: introduce get_user_pages_fast\n\nIntroduce a new get_user_pages_fast mm API, which is basically a\nget_user_pages with a less general API (but still tends to be suited to\nthe common case):\n\n- task and mm are always current and current-\u003emm\n- force is always 0\n- pages is always non-NULL\n- don\u0027t pass back vmas\n\nThis restricted API can be implemented in a much more scalable way on many\narchitectures when the ptes are present, by walking the page tables\nlocklessly (no mmap_sem or page table locks).  When the ptes are not\npopulated, get_user_pages_fast() could be slower.\n\nThis is implemented locklessly on x86, and used in some key direct IO call\nsites, in later patches, which provides nearly 10% performance improvement\non a threaded database workload.\n\nLots of other code could use this too, depending on use cases (eg.  grep\ndrivers/).  And it might inspire some new and clever ways to use it.\n\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a0a8f5364a5ad248aec6cb705e0092ff563edc2f",
      "tree": "fe942b13adc527f66103d529c2ee91da05086d1c",
      "parents": [
        "2682497245e7d22160ae63032c378745a7f2cfe5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "x86: implement pte_special\n\nImplement the pte_special bit for x86.  This is required to support\nlockless get_user_pages, because we need to know whether or not we can\nrefcount a particular page given only its pte (and no vma).\n\n[hugh@veritas.com: fix a BUG]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "080ccd4573607a930367c2128fc709814b2ade5d",
      "tree": "416cd540b0662822c90ed693ddae1ebb738a529c",
      "parents": [
        "20d8b67c06fa5e74f44e80b0a0fd68c8327f7c6a"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Fri Jul 25 19:45:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "include/linux/aio.h: removed duplicated include\n\nRemoved duplicated include \u003clinux/uio.h\u003e in include/linux/aio.h\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20d8b67c06fa5e74f44e80b0a0fd68c8327f7c6a",
      "tree": "7162455643e7ce45e253033bf648bf41d9796dd9",
      "parents": [
        "7babe8db99d305340cf4828ce1f5a1481d5622ef"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Fri Jul 25 19:45:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "relay: add buffer-only channels; useful for early logging\n\nAllows one to create and use a channel with no associated files.  Files\ncan be initialized later.  This is useful in scenarios such as logging in\nearly code, before VFS is up.  Therefore, such channels can be created and\nused as soon as kmem_cache_init() completed.\n\nThis is needed by kmemtrace to do tracing in early kernel code.\n\n[kosaki.motohiro@jp.fujitsu.com: build fix]\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7babe8db99d305340cf4828ce1f5a1481d5622ef",
      "tree": "fdac7a084646bb6d125ebc62b0b75806e45d1025",
      "parents": [
        "c2147a5092cfe13dbf3210e54e8a622015edeecc"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Fri Jul 25 19:45:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "Full conversion to early_initcall() interface, remove old interface\n\nA previous patch added the early_initcall(), to allow a cleaner hooking of\npre-SMP initcalls.  Now we remove the older interface, converting all\nexisting users to the new one.\n\n[akpm@linux-foundation.org: cleanups]\n[akpm@linux-foundation.org: build fix]\n[kosaki.motohiro@jp.fujitsu.com: warning fix]\n[kosaki.motohiro@jp.fujitsu.com: warning fix]\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c2147a5092cfe13dbf3210e54e8a622015edeecc",
      "tree": "e34e0daee3cc0b19914a27d6f7f284b1fc22aa93",
      "parents": [
        "89081d17f7bb81d89fa1aa9b70f821c5cf4d39e9"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Fri Jul 25 19:45:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "Better interface for hooking early initcalls\n\nAdded early initcall (pre-SMP) support, using an identical interface to\nthat of regular initcalls.  Functions called from do_pre_smp_initcalls()\ncould be converted to use this cleaner interface.\n\nThis is required by CPU hotplug, because early users have to register\nnotifiers before going SMP.  One such CPU hotplug user is the relay\ninterface with buffer-only channels, which needs to register such a\nnotifier, to be usable in early code.  This in turn is used by kmemtrace.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "89081d17f7bb81d89fa1aa9b70f821c5cf4d39e9",
      "tree": "1835fa64801fee048c8074ae4d63b0a7f4b14ee3",
      "parents": [
        "3ab83521378268044a448113c6aa9a9e245f4d2f"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Jul 25 19:45:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "kexec jump: save/restore device state\n\nThis patch implements devices state save/restore before after kexec.\n\nThis patch together with features in kexec_jump patch can be used for\nfollowing:\n\n- A simple hibernation implementation without ACPI support.  You can kexec a\n  hibernating kernel, save the memory image of original system and shutdown\n  the system.  When resuming, you restore the memory image of original system\n  via ordinary kexec load then jump back.\n\n- Kernel/system debug through making system snapshot.  You can make system\n  snapshot, jump back, do some thing and make another system snapshot.\n\n- Cooperative multi-kernel/system.  With kexec jump, you can switch between\n  several kernels/systems quickly without boot process except the first time.\n  This appears like swap a whole kernel/system out/in.\n\n- A general method to call program in physical mode (paging turning\n  off). This can be used to invoke BIOS code under Linux.\n\nThe following user-space tools can be used with kexec jump:\n\n- kexec-tools needs to be patched to support kexec jump. The patches\n  and the precompiled kexec can be download from the following URL:\n       source: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-src_git_kh10.tar.bz2\n       patches: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-patches_git_kh10.tar.bz2\n       binary: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec_git_kh10\n\n- makedumpfile with patches are used as memory image saving tool, it\n  can exclude free pages from original kernel memory image file. The\n  patches and the precompiled makedumpfile can be download from the\n  following URL:\n       source: http://khibernation.sourceforge.net/download/release_v10/makedumpfile/makedumpfile-src_cvs_kh10.tar.bz2\n       patches: http://khibernation.sourceforge.net/download/release_v10/makedumpfile/makedumpfile-patches_cvs_kh10.tar.bz2\n       binary: http://khibernation.sourceforge.net/download/release_v10/makedumpfile/makedumpfile_cvs_kh10\n\n- An initramfs image can be used as the root file system of kexeced\n  kernel. An initramfs image built with \"BuildRoot\" can be downloaded\n  from the following URL:\n       initramfs image: http://khibernation.sourceforge.net/download/release_v10/initramfs/rootfs_cvs_kh10.gz\n  All user space tools above are included in the initramfs image.\n\nUsage example of simple hibernation:\n\n1. Compile and install patched kernel with following options selected:\n\nCONFIG_X86_32\u003dy\nCONFIG_RELOCATABLE\u003dy\nCONFIG_KEXEC\u003dy\nCONFIG_CRASH_DUMP\u003dy\nCONFIG_PM\u003dy\nCONFIG_HIBERNATION\u003dy\nCONFIG_KEXEC_JUMP\u003dy\n\n2. Build an initramfs image contains kexec-tool and makedumpfile, or\n   download the pre-built initramfs image, called rootfs.gz in\n   following text.\n\n3. Prepare a partition to save memory image of original kernel, called\n   hibernating partition in following text.\n\n4. Boot kernel compiled in step 1 (kernel A).\n\n5. In the kernel A, load kernel compiled in step 1 (kernel B) with\n   /sbin/kexec. The shell command line can be as follow:\n\n   /sbin/kexec --load-preserve-context /boot/bzImage --mem-min\u003d0x100000\n     --mem-max\u003d0xffffff --initrd\u003drootfs.gz\n\n6. Boot the kernel B with following shell command line:\n\n   /sbin/kexec -e\n\n7. The kernel B will boot as normal kexec. In kernel B the memory\n   image of kernel A can be saved into hibernating partition as\n   follow:\n\n   jump_back_entry\u003d`cat /proc/cmdline | tr \u0027 \u0027 \u0027\\n\u0027 | grep kexec_jump_back_entry | cut -d \u0027\u003d\u0027`\n   echo $jump_back_entry \u003e kexec_jump_back_entry\n   cp /proc/vmcore dump.elf\n\n   Then you can shutdown the machine as normal.\n\n8. Boot kernel compiled in step 1 (kernel C). Use the rootfs.gz as\n   root file system.\n\n9. In kernel C, load the memory image of kernel A as follow:\n\n   /sbin/kexec -l --args-none --entry\u003d`cat kexec_jump_back_entry` dump.elf\n\n10. Jump back to the kernel A as follow:\n\n   /sbin/kexec -e\n\n   Then, kernel A is resumed.\n\nImplementation point:\n\nTo support jumping between two kernels, before jumping to (executing)\nthe new kernel and jumping back to the original kernel, the devices\nare put into quiescent state, and the state of devices and CPU is\nsaved. After jumping back from kexeced kernel and jumping to the new\nkernel, the state of devices and CPU are restored accordingly. The\ndevices/CPU state save/restore code of software suspend is called to\nimplement corresponding function.\n\nKnown issues:\n\n- Because the segment number supported by sys_kexec_load is limited,\n  hibernation image with many segments may not be load. This is\n  planned to be eliminated by adding a new flag to sys_kexec_load to\n  make a image can be loaded with multiple sys_kexec_load invoking.\n\nNow, only the i386 architecture is supported.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ab83521378268044a448113c6aa9a9e245f4d2f",
      "tree": "e9e8496577e4b2e994edf204e9a8ae7c026eec95",
      "parents": [
        "7fccf0326536c1b245b98740d489abb9aab69a12"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Jul 25 19:45:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "kexec jump\n\nThis patch provides an enhancement to kexec/kdump.  It implements the\nfollowing features:\n\n- Backup/restore memory used by the original kernel before/after\n  kexec.\n\n- Save/restore CPU state before/after kexec.\n\nThe features of this patch can be used as a general method to call program in\nphysical mode (paging turning off).  This can be used to call BIOS code under\nLinux.\n\nkexec-tools needs to be patched to support kexec jump. The patches and\nthe precompiled kexec can be download from the following URL:\n\n       source: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-src_git_kh10.tar.bz2\n       patches: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-patches_git_kh10.tar.bz2\n       binary: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec_git_kh10\n\nUsage example of calling some physical mode code and return:\n\n1. Compile and install patched kernel with following options selected:\n\nCONFIG_X86_32\u003dy\nCONFIG_KEXEC\u003dy\nCONFIG_PM\u003dy\nCONFIG_KEXEC_JUMP\u003dy\n\n2. Build patched kexec-tool or download the pre-built one.\n\n3. Build some physical mode executable named such as \"phy_mode\"\n\n4. Boot kernel compiled in step 1.\n\n5. Load physical mode executable with /sbin/kexec. The shell command\n   line can be as follow:\n\n   /sbin/kexec --load-preserve-context --args-none phy_mode\n\n6. Call physical mode executable with following shell command line:\n\n   /sbin/kexec -e\n\nImplementation point:\n\nTo support jumping without reserving memory.  One shadow backup page (source\npage) is allocated for each page used by kexeced code image (destination\npage).  When do kexec_load, the image of kexeced code is loaded into source\npages, and before executing, the destination pages and the source pages are\nswapped, so the contents of destination pages are backupped.  Before jumping\nto the kexeced code image and after jumping back to the original kernel, the\ndestination pages and the source pages are swapped too.\n\nC ABI (calling convention) is used as communication protocol between\nkernel and called code.\n\nA flag named KEXEC_PRESERVE_CONTEXT for sys_kexec_load is added to\nindicate that the loaded kernel image is used for jumping back.\n\nNow, only the i386 architecture is supported.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "17017d8d2c005734d7088d8281ce2daab8fcb097",
      "tree": "df689658df7d342143ad399bddf0df7257e8ec20",
      "parents": [
        "b77899985bdfd85a8e5a6e485033a9b4713d2471"
      ],
      "author": {
        "name": "Alex Dubov",
        "email": "oakad@yahoo.com",
        "time": "Fri Jul 25 19:45:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "memstick: add \"start\" and \"stop\" methods to memstick device\n\nIn some cases it may be desirable to ensure that associated driver is not\ngoing to access the media in some period of time.  \"start\" and \"stop\"\nmethods are provided therefore to allow it.\n\nSigned-off-by: Alex Dubov \u003coakad@yahoo.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b77899985bdfd85a8e5a6e485033a9b4713d2471",
      "tree": "5cf53074b73de6fc27d8d8b0ac78fc8d32c0b9df",
      "parents": [
        "0147600172b4a5d261165d1aa5ef818d84da1557"
      ],
      "author": {
        "name": "Alex Dubov",
        "email": "oakad@yahoo.com",
        "time": "Fri Jul 25 19:45:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "memstick: allow \"set_param\" method to return an error code\n\nSome controllers (Jmicron, for instance) can report temporal failure\ncondition during power-on.  It is desirable to account for this using a\nreturn value of \"set_param\" device method.  The return value can also be\nhandy to distinguish between supported and unsupported device parameters\nin run time.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Alex Dubov \u003coakad@yahoo.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "929dfb24fbcd60e2544b2de7bfb4a68da4dfc747",
      "tree": "5b67ea8f6c75ae199d2d7542645517152fe07e1c",
      "parents": [
        "3f165e4cf2af042af7d2440d688299c0d2a48b1f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 19:44:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "parport/share.c: proper externs\n\nThis patch adds proper externs for parport_default_timeslice and\nparport_default_spintime in include/linux/parport.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1956a96de488feb05e95c08c9d5e80f63a4be2b1",
      "tree": "fd361f464386607e3d753e062ae7956e94c022e3",
      "parents": [
        "8d8bb39b9eba32dd70e87fd5ad5c5dd4ba118e06"
      ],
      "author": {
        "name": "Alexis Bruemmer",
        "email": "alexisb@us.ibm.com",
        "time": "Fri Jul 25 19:44:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "x86 calgary: fix handling of devices that aren\u0027t behind the Calgary\n\nThe calgary code can give drivers addresses above 4GB which is very bad\nfor hardware that is only 32bit DMA addressable.\n\nWith this patch, the calgary code sets the global dma_ops to swiotlb or\nnommu properly, and the dma_ops of devices behind the Calgary/CalIOC2\nto calgary_dma_ops.  So the calgary code can handle devices safely that\naren\u0027t behind the Calgary/CalIOC2.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Alexis Bruemmer \u003calexisb@us.ibm.com\u003e\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d8bb39b9eba32dd70e87fd5ad5c5dd4ba118e06",
      "tree": "64090a84f4c4466f9f30ff46c993e0cede379052",
      "parents": [
        "c485b465a031b6f9b9a51300e0ee1f86efc6db87"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Jul 25 19:44:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "dma-mapping: add the device argument to dma_mapping_error()\n\nAdd per-device dma_mapping_ops support for CONFIG_X86_64 as POWER\narchitecture does:\n\nThis enables us to cleanly fix the Calgary IOMMU issue that some devices\nare not behind the IOMMU (http://lkml.org/lkml/2008/5/8/423).\n\nI think that per-device dma_mapping_ops support would be also helpful for\nKVM people to support PCI passthrough but Andi thinks that this makes it\ndifficult to support the PCI passthrough (see the above thread).  So I\nCC\u0027ed this to KVM camp.  Comments are appreciated.\n\nA pointer to dma_mapping_ops to struct dev_archdata is added.  If the\npointer is non NULL, DMA operations in asm/dma-mapping.h use it.  If it\u0027s\nNULL, the system-wide dma_ops pointer is used as before.\n\nIf it\u0027s useful for KVM people, I plan to implement a mechanism to register\na hook called when a new pci (or dma capable) device is created (it works\nwith hot plugging).  It enables IOMMUs to set up an appropriate\ndma_mapping_ops per device.\n\nThe major obstacle is that dma_mapping_error doesn\u0027t take a pointer to the\ndevice unlike other DMA operations.  So x86 can\u0027t have dma_mapping_ops per\ndevice.  Note all the POWER IOMMUs use the same dma_mapping_error function\nso this is not a problem for POWER but x86 IOMMUs use different\ndma_mapping_error functions.\n\nThe first patch adds the device argument to dma_mapping_error.  The patch\nis trivial but large since it touches lots of drivers and dma-mapping.h in\nall the architecture.\n\nThis patch:\n\ndma_mapping_error() doesn\u0027t take a pointer to the device unlike other DMA\noperations.  So we can\u0027t have dma_mapping_ops per device.\n\nNote that POWER already has dma_mapping_ops per device but all the POWER\nIOMMUs use the same dma_mapping_error function.  x86 IOMMUs use device\nargument.\n\n[akpm@linux-foundation.org: fix sge]\n[akpm@linux-foundation.org: fix svc_rdma]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix bnx2x]\n[akpm@linux-foundation.org: fix s2io]\n[akpm@linux-foundation.org: fix pasemi_mac]\n[akpm@linux-foundation.org: fix sdhci]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix sparc]\n[akpm@linux-foundation.org: fix ibmvscsi]\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "44ccac13c7f4728cf2992d49384671a176db74dd",
      "tree": "67869716627f8f8f6bc34405d8623fdf60bea9af",
      "parents": [
        "8a21346058ad946134b6ddfeb5de975c3cfcf5da"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 19:44:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:01 2008 -0700"
      },
      "message": "include/video/atmel_lcdc.h must #include \u003clinux/workqueue.h\u003e\n\nThis patch fixes the following compile error caused by commit\nd22579b837358cbef12ccca5adaf7e93ae09ab7a (\"atmel_lcdfb: FIFO underflow\nmanagement\"):\n\n  In file included from arch/avr32/boards/atstk1000/atstk1004.c:21:\n  include/video/atmel_lcdc.h:40: error: field \u0027task\u0027 has incomplete type\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16d69265b930f7e2fa9eea381715696f780718f4",
      "tree": "5b3bf02f5f4fe21da4e9b5e0f22f6518bd81b609",
      "parents": [
        "0c7ad106e779549792deb307242dece6f3499bb9"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Fri Jul 25 19:44:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:01 2008 -0700"
      },
      "message": "uninline arch_pick_mmap_layout()\n\nFix this, on avr32:\n\n  include/linux/utsname.h:35,\n                   from init/main.c:20:\n  include/linux/sched.h: In function \u0027arch_pick_mmap_layout\u0027:\n  include/linux/sched.h:2149: error: implicit declaration of function \u0027PAGE_ALIGN\u0027\n\nReported-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1ca9fda4b2f3413e4bc748b983f5585629ca0560",
      "tree": "377de3a94e8e42dbf33ff3e87041dcb3c7818429",
      "parents": [
        "071375bc76ee86e58592f4682030c81d410ddfd9"
      ],
      "author": {
        "name": "Chris McDermott",
        "email": "lcm@linux.vnet.ibm.com",
        "time": "Thu Jul 24 19:06:09 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 14:58:39 2008 +0200"
      },
      "message": "x86: fix IBM Summit based systems\u0027 phys_cpu_present_map on 32-bit kernels\n\nx86 kernels on IBM Summit based systems will only online 1 CPU because the\nphys_cpu_present_map is not set up correctly. Patch below applied to\n2.6.26-git10.\n\nSigned-off-by: Chris McDermott \u003clcm@linux.vnet.ibm.com\u003e\nTested-by: Tim Pepper \u003clnxninga@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "071375bc76ee86e58592f4682030c81d410ddfd9",
      "tree": "caa744ef6a873ffdd14befff35c58826f6c1f9a0",
      "parents": [
        "1f972768a1df1518f45adb6b8ffbf04fa1c99737"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 14:52:26 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 14:50:51 2008 +0200"
      },
      "message": "x86, RDC321x: remove gpio.h complications\n\nRemove the include/asm-x86/gpio.h specials, just use the generic\nversion.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "36ac26171afa8dbf29226199699fe955d4a0b6f6",
      "tree": "af89e8bcff79b088d2a182283312e4bac9f934c3",
      "parents": [
        "88bef5a4074e0568cf54df410f41065c06694d8a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 11:22:33 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 11:26:23 2008 +0200"
      },
      "message": "crashdump: fix undefined reference to `elfcorehdr_addr\u0027\n\nfix build bug introduced by 95b68dec0d5 \"calgary iommu: use the first\nkernels TCE tables in kdump\":\n\narch/x86/kernel/built-in.o: In function `calgary_iommu_init\u0027:\n(.init.text+0x8399): undefined reference to `elfcorehdr_addr\u0027\narch/x86/kernel/built-in.o: In function `calgary_iommu_init\u0027:\n(.init.text+0x856c): undefined reference to `elfcorehdr_addr\u0027\narch/x86/kernel/built-in.o: In function `detect_calgary\u0027:\n(.init.text+0x8c68): undefined reference to `elfcorehdr_addr\u0027\narch/x86/kernel/built-in.o: In function `detect_calgary\u0027:\n(.init.text+0x8d0c): undefined reference to `elfcorehdr_addr\u0027\n\nmake elfcorehdr_addr a generally available symbol.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ec34c702ca8b7d6f0aa54379c3b0d0ec10b8ff23",
      "tree": "02caab5a2804a4064dd346b7d3c5202d6883fa77",
      "parents": [
        "547b792cac0a038b9dbf958d3c120df3740b5572"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Jul 25 21:45:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 25 21:45:49 2008 -0700"
      },
      "message": "net: drop unused BUG_TRAP()\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "547b792cac0a038b9dbf958d3c120df3740b5572",
      "tree": "08554d083b0ca7d65739dc1ce12f9b12a9b8e1f8",
      "parents": [
        "53e5e96ec18da6f65e89f05674711e1c93d8df67"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Jul 25 21:43:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 25 21:43:18 2008 -0700"
      },
      "message": "net: convert BUG_TRAP to generic WARN_ON\n\nRemoves legacy reinvent-the-wheel type thing. The generic\nmachinery integrates much better to automated debugging aids\nsuch as kerneloops.org (and others), and is unambiguous due to\nbetter naming. Non-intuively BUG_TRAP() is actually equal to\nWARN_ON() rather than BUG_ON() though some might actually be\npromoted to BUG_ON() but I left that to future.\n\nI could make at least one BUILD_BUG_ON conversion.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1ff8419871ea757ae0298aa296bcff9b2ca48561",
      "tree": "ff2194bc75f06107e16220ce303ef546f9a4c769",
      "parents": [
        "8d25b36b77fe32c296ece83e94ca6ae4d17f3e25",
        "7d7e5a60c62e88cb8782760bb6c4d3bd1577a6c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 17:40:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 17:40:16 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  ipsec: ipcomp - Decompress into frags if necessary\n  ipsec: ipcomp - Merge IPComp implementations\n  pkt_sched: Fix locking in shutdown_scheduler_queue()\n"
    },
    {
      "commit": "7b35fa86e47f83db27056b202463d926ff0a2c8f",
      "tree": "b5f535a337e4465907a12500eb5e79e3e72bd524",
      "parents": [
        "29ca069cc6572cce62e42a27efdab01f50190616",
        "f1373da87be917e5b2356af44764620487376a07"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 17:33:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 17:33:34 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  sparc: Wire up new system calls.\n"
    },
    {
      "commit": "29ca069cc6572cce62e42a27efdab01f50190616",
      "tree": "b948f5eed1691fa0bca57aa116837c8eeef0b90a",
      "parents": [
        "b4615e69b6c6353878b734a8202b65efbc554df4",
        "3e4d0cab61c88a9ae3e61151a857960397e26403"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 17:29:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 17:29:03 2008 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:\n  [IA64] Wire up new system calls\n"
    },
    {
      "commit": "b4615e69b6c6353878b734a8202b65efbc554df4",
      "tree": "b1ea3503d4dd3c979f10af7e74bd7bde27764ce8",
      "parents": [
        "ff5d48a6d18d09bb750d1f89f6464f5fdb6fc85b"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Jul 25 13:19:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 17:28:49 2008 -0700"
      },
      "message": "sys_paccept definition missing __user annotation\n\nIntroduced by commit aaca0bdca573f3f51ea03139f9c7289541e7bca3 (\"flag\nparameters: paccept\"):\n\n  net/socket.c:1515:17: error: symbol \u0027sys_paccept\u0027 redeclared with different type (originally declared at include/linux/syscalls.h:413) - incompatible argument 4 (different address spaces)\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1373da87be917e5b2356af44764620487376a07",
      "tree": "64f3feeba42d3cda5806c061bfa89a9007ba9134",
      "parents": [
        "fb2e405fc1fc8b20d9c78eaa1c7fd5a297efde43"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 25 15:18:31 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 25 15:18:31 2008 -0700"
      },
      "message": "sparc: Wire up new system calls.\n\nThis wires up the recently added Wire up signalfd4, eventfd2,\nepoll_create1, dup3, pipe2, and inotify_init1 system calls.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff5d48a6d18d09bb750d1f89f6464f5fdb6fc85b",
      "tree": "243a2157912d6183c99d98dc74fe7a87a5cfbf6e",
      "parents": [
        "762b8291be6944bd891fbe2c8976a2b2e5bbc726",
        "a29ccf6f823a84d89e1c7aaaf221cf7282022024"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 12:02:08 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 12:02:08 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/embedded-2.6\n\n* git://git.infradead.org/embedded-2.6:\n  Make console charset translation optional\n"
    },
    {
      "commit": "762b8291be6944bd891fbe2c8976a2b2e5bbc726",
      "tree": "4ce2572c050d473bd8dcde8bfbaad0ab830b1b1c",
      "parents": [
        "c6af5e9f8a57467df2e55e428316a43480174521",
        "7dcf2a9fced59e58e4694cdcf15850c01fdba89b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 12:01:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 12:01:37 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/random-2.6\n\n* git://git.infradead.org/~dwmw2/random-2.6:\n  remove dummy asm/kvm.h files\n  firmware: create firmware binaries during \u0027make modules\u0027.\n"
    },
    {
      "commit": "c6af5e9f8a57467df2e55e428316a43480174521",
      "tree": "374f2a3372fb21a030384a50ad82149f7a62680b",
      "parents": [
        "9b81361631bbb1d85c99ddec677d42afe516737b"
      ],
      "author": {
        "name": "Johannes Weiner",
        "email": "hannes@saeurebad.de",
        "time": "Fri Jul 25 15:48:04 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 11:36:44 2008 -0700"
      },
      "message": "bootmem: Move node allocation macros back to !HAVE_ARCH_BOOTMEM_NODE\n\nThese got unintentionally moved, put them back as x86 provides its own\nversions.\n\nSigned-off-by: Johannes Weiner \u003channes@saeurebad.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7dcf2a9fced59e58e4694cdcf15850c01fdba89b",
      "tree": "635476803ae017229f4a3dfaf7288d770b0dc1bf",
      "parents": [
        "44463f7dd6c8039904333e4374e5c6e9ad83006f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jul 01 19:27:16 2008 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Jul 25 14:35:50 2008 -0400"
      },
      "message": "remove dummy asm/kvm.h files\n\nThis patch removes the dummy asm/kvm.h files on architectures not (yet)\nsupporting KVM and uses the same conditional headers installation as\nalready used for a.out.h .\n\nAlso removed are superfluous install rules in the s390 and x86 Kbuild\nfiles (they are already in Kbuild.asm).\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "5047887caf1806f31652210df27fb62a7c43f27d",
      "tree": "4098ead40c1aa7b904167f67cff87a247cfa0b6c",
      "parents": [
        "996abf053eec4d67136be8b911bbaaf989cfb99c",
        "973b7d83ebeb1e34b8bee69208916e5f0e2353c3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 11:08:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 11:08:17 2008 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (34 commits)\n  powerpc: Wireup new syscalls\n  Move update_mmu_cache() declaration from tlbflush.h to pgtable.h\n  powerpc/pseries: Remove kmalloc call in handling writes to lparcfg\n  powerpc/pseries: Update arch vector to indicate support for CMO\n  ibmvfc: Add support for collaborative memory overcommit\n  ibmvscsi: driver enablement for CMO\n  ibmveth: enable driver for CMO\n  ibmveth: Automatically enable larger rx buffer pools for larger mtu\n  powerpc/pseries: Verify CMO memory entitlement updates with virtual I/O\n  powerpc/pseries: vio bus support for CMO\n  powerpc/pseries: iommu enablement for CMO\n  powerpc/pseries: Add CMO paging statistics\n  powerpc/pseries: Add collaborative memory manager\n  powerpc/pseries: Utilities to set firmware page state\n  powerpc/pseries: Enable CMO feature during platform setup\n  powerpc/pseries: Split retrieval of processor entitlement data into a helper routine\n  powerpc/pseries: Add memory entitlement capabilities to /proc/ppc64/lparcfg\n  powerpc/pseries: Split processor entitlement retrieval and gathering to helper routines\n  powerpc/pseries: Remove extraneous error reporting for hcall failures in lparcfg\n  powerpc: Fix compile error with binutils 2.15\n  ...\n\nFixed up conflict in arch/powerpc/platforms/52xx/Kconfig manually.\n"
    }
  ],
  "next": "996abf053eec4d67136be8b911bbaaf989cfb99c"
}
