)]}'
{
  "log": [
    {
      "commit": "7bf7e370d5919112c223a269462cd0b546903829",
      "tree": "03ccc715239df14ae168277dbccc9d9cf4d8a2c8",
      "parents": [
        "68b1a1e786f29c900fa1c516a402e24f0ece622a",
        "d39dd11c3e6a7af5c20bfac40594db36cf270f42"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Mar 25 17:41:20 2011 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Mar 25 17:41:20 2011 +0200"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-linus-1\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6: (9356 commits)\n  [media] rc: update for bitop name changes\n  fs: simplify iget \u0026 friends\n  fs: pull inode-\u003ei_lock up out of writeback_single_inode\n  fs: rename inode_lock to inode_hash_lock\n  fs: move i_wb_list out from under inode_lock\n  fs: move i_sb_list out from under inode_lock\n  fs: remove inode_lock from iput_final and prune_icache\n  fs: Lock the inode LRU list separately\n  fs: factor inode disposal\n  fs: protect inode-\u003ei_state with inode-\u003ei_lock\n  lib, arch: add filter argument to show_mem and fix private implementations\n  SLUB: Write to per cpu data when allocating it\n  slub: Fix debugobjects with lockless fastpath\n  autofs4: Do not potentially dereference NULL pointer returned by fget() in autofs_dev_ioctl_setpipefd()\n  autofs4 - remove autofs4_lock\n  autofs4 - fix d_manage() return on rcu-walk\n  autofs4 - fix autofs4_expire_indirect() traversal\n  autofs4 - fix dentry leak in autofs4_expire_direct()\n  autofs4 - reinstate last used update on access\n  vfs - check non-mountpoint dentry might block in __follow_mount_rcu()\n  ...\n\nNOTE!\n\nThis merge commit was created to fix compilation error. The block\ntree was merged upstream and removed the \u0027elv_queue_empty()\u0027\nfunction which the new \u0027mtdswap\u0027 driver is using. So a simple\nmerge of the mtd tree with upstream does not compile. And the\nmtd tree has already be published, so re-basing it is not an option.\n\nTo fix this unfortunate situation, I had to merge upstream into the\nmtd-2.6.git tree without committing, put the fixup patch on top of\nthis, and then commit this. The result is that we do not have commits\nwhich do not compile.\n\nIn other words, this merge commit \"merges\" 3 things: the MTD tree, the\nupstream tree, and the fixup patch.\n"
    },
    {
      "commit": "0664996b7c2fdb1b7f90954469cc242274abd7db",
      "tree": "21bcf25afb94791f87fc5aa8c7e79ac1a8845ad8",
      "parents": [
        "3f5527fe7e0fb50556b97b8addbe3832985f793e"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Mar 23 16:41:59 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 23 19:46:14 2011 -0700"
      },
      "message": "bitops: introduce CONFIG_GENERIC_FIND_BIT_LE\n\nThis introduces CONFIG_GENERIC_FIND_BIT_LE to tell whether to use generic\nimplementation of find_*_bit_le() in lib/find_next_bit.c or not.\n\nFor now we select CONFIG_GENERIC_FIND_BIT_LE for all architectures which\nenable CONFIG_GENERIC_FIND_NEXT_BIT.\n\nBut m68knommu wants to define own faster find_next_zero_bit_le() and\ncontinues using generic find_next_{,zero_}bit().\n(CONFIG_GENERIC_FIND_NEXT_BIT and !CONFIG_GENERIC_FIND_BIT_LE)\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "33ee3b2e2eb9b4b6c64dcf9ed66e2ac3124e748c",
      "tree": "25d70c021189efa0bcbdf4e84b3ca97a6c147246",
      "parents": [
        "8a5700cd6754a3c88d2ea2f1d7a56f671987fc25"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Mar 22 16:34:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 22 17:44:14 2011 -0700"
      },
      "message": "kstrto*: converting strings to integers done (hopefully) right\n\n1. simple_strto*() do not contain overflow checks and crufty,\n   libc way to indicate failure.\n2. strict_strto*() also do not have overflow checks but the name and\n   comments pretend they do.\n3. Both families have only \"long long\" and \"long\" variants,\n   but users want strtou8()\n4. Both \"simple\" and \"strict\" prefixes are wrong:\n   Simple doesn\u0027t exactly say what\u0027s so simple, strict should not exist\n   because conversion should be strict by default.\n\nThe solution is to use \"k\" prefix and add convertors for more types.\nEnter\n\tkstrtoull()\n\tkstrtoll()\n\tkstrtoul()\n\tkstrtol()\n\tkstrtouint()\n\tkstrtoint()\n\n\tkstrtou64()\n\tkstrtos64()\n\tkstrtou32()\n\tkstrtos32()\n\tkstrtou16()\n\tkstrtos16()\n\tkstrtou8()\n\tkstrtos8()\n\nInclude runtime testsuite (somewhat incomplete) as well.\n\nstrict_strto*() become deprecated, stubbed to kstrto*() and\neventually will be removed altogether.\n\nUse kstrto*() in code today!\n\nNote: on some archs _kstrtoul() and _kstrtol() are left in tree, even if\n      they\u0027ll be unused at runtime. This is temporarily solution,\n      because I don\u0027t want to hardcode list of archs where these\n      functions aren\u0027t needed. Current solution with sizeof() and\n      __alignof__ at least always works.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "f74b9444192c60603020c61d7915b72893137edc",
      "tree": "8b1d16d373234038c2b045c9ceb3c33b93059e8a",
      "parents": [
        "7a6362800cb7d1d618a697a650c7aaed3eb39320",
        "4ba8216cd90560bc402f52076f64d8546e8aefcb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 17:21:00 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 17:21:00 2011 -0700"
      },
      "message": "Merge branch \u0027config\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027config\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  BKL: That\u0027s all, folks\n  fs/locks.c: Remove stale FIXME left over from BKL conversion\n  ipx: remove the BKL\n  appletalk: remove the BKL\n  x25: remove the BKL\n  ufs: remove the BKL\n  hpfs: remove the BKL\n  drivers: remove extraneous includes of smp_lock.h\n  tracing: don\u0027t trace the BKL\n  adfs: remove the big kernel lock\n"
    },
    {
      "commit": "437aa565e2656776a7104aaacd792fe789ea8b2d",
      "tree": "a48688f36673af7bdb29fd24de216e170f4ef22b",
      "parents": [
        "2c1c5f199482356c00f70b6f2f368c3455d1230c"
      ],
      "author": {
        "name": "Ivan Djelic",
        "email": "ivan.djelic@parrot.com",
        "time": "Fri Mar 11 11:05:32 2011 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Mar 11 14:25:50 2011 +0000"
      },
      "message": "lib: add shared BCH ECC library\n\nThis is a new software BCH encoding/decoding library, similar to the shared\nReed-Solomon library.\n\nBinary BCH (Bose-Chaudhuri-Hocquenghem) codes are widely used to correct\nerrors in NAND flash devices requiring more than 1-bit ecc correction; they\nare generally better suited for NAND flash than RS codes because NAND bit\nerrors do not occur in bursts. Latest SLC NAND devices typically require at\nleast 4-bit ecc protection per 512 bytes block.\n\nThis library provides software encoding/decoding, but may also be used with\nASIC/SoC hardware BCH engines to perform error correction. It is being\ncurrently used for this purpose on an OMAP3630 board (4bit/8bit HW BCH). It\nhas also been used to decode raw dumps of NAND devices with on-die BCH ecc\nengines (e.g. Micron 4bit ecc SLC devices).\n\nLatest NAND devices (including SLC) can exhibit high error rates (typically\na dozen or more bitflips per hour during stress tests); in order to\nminimize the performance impact of error correction, this library\nimplements recently developed algorithms for fast polynomial root finding\n(see bch.c header for details) instead of the traditional exhaustive Chien\nroot search; a few performance figures are provided below:\n\nPlatform: arm926ejs @ 468 MHz, 32 KiB icache, 16 KiB dcache\nBCH ecc : 4-bit per 512 bytes\n\nEncoding average throughput: 250 Mbits/s\n\nError correction time (compared with Chien search):\n\n        average   worst      average (Chien)  worst (Chien)\n----------------------------------------------------------\n1 bit    8.5 µs   11 µs         200 µs           383 µs\n2 bit    9.7 µs   12.5 µs       477 µs           728 µs\n3 bit   18.1 µs   20.6 µs       758 µs          1010 µs\n4 bit   19.5 µs   23 µs        1028 µs          1280 µs\n\nIn the above figures, \"worst\" is meant in terms of error pattern, not in\nterms of cache miss / page faults effects (not taken into account here).\n\nThe library has been extensively tested on the following platforms: x86,\nx86_64, arm926ejs, omap3630, qemu-ppc64, qemu-mips.\n\nSigned-off-by: Ivan Djelic \u003civan.djelic@parrot.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "4ba8216cd90560bc402f52076f64d8546e8aefcb",
      "tree": "f64c272085c833b36755b5552a726f21eed3d142",
      "parents": [
        "ae7eb8979ccfa5e9e888101b9c940f20bd0f4115"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Jan 25 22:52:22 2011 +0100"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Mar 05 10:56:00 2011 +0100"
      },
      "message": "BKL: That\u0027s all, folks\n\nThis removes the implementation of the big kernel lock,\nat last. A lot of people have worked on this in the\npast, I so the credit for this patch should be with\neveryone who participated in the hunt.\n\nThe names on the Cc list are the people that were the\nmost active in this, according to the recorded git\nhistory, in alphabetical order.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Alan Cox \u003calan@linux.intel.com\u003e\nCc: Alessio Igor Bogani \u003cabogani@texware.it\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Andrew Hendry \u003candrew.hendry@gmail.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jan Blunck \u003cjblunck@infradead.org\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nCc: Jonathan Corbet \u003ccorbet@lwn.net\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c39649c331c70952700f99832b03f87e9d7f5b4b",
      "tree": "19ba9cea5102595e42bcd043aa53eb666ea834fa",
      "parents": [
        "c2df88cbb43c25db27fbbf94e92318bdad018f3e"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Wed Jan 19 11:03:25 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 24 14:51:56 2011 -0800"
      },
      "message": "lib: cpu_rmap: CPU affinity reverse-mapping\n\nWhen initiating I/O on a multiqueue and multi-IRQ device, we may want\nto select a queue for which the response will be handled on the same\nor a nearby CPU.  This requires a reverse-map of IRQ affinity.  Add\nlibrary functions to support a generic reverse-mapping from CPUs to\nobjects with affinity and the specific case where the objects are\nIRQs.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ebe12439ba7fc62e1d6ecb569b7287771716ca1",
      "tree": "65945a63ad1474489d80c8ca1fb1c1c8091fb7a2",
      "parents": [
        "24fa0402a9b6a537e87e38341e78b7da86486846"
      ],
      "author": {
        "name": "Lasse Collin",
        "email": "lasse.collin@tukaani.org",
        "time": "Wed Jan 12 17:01:23 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:25 2011 -0800"
      },
      "message": "decompressors: add boot-time XZ support\n\nThis implements the API defined in \u003clinux/decompress/generic.h\u003e which is\nused for kernel, initramfs, and initrd decompression.  This patch together\nwith the first patch is enough for XZ-compressed initramfs and initrd;\nXZ-compressed kernel will need arch-specific changes.\n\nThe buffering requirements described in decompress_unxz.c are stricter\nthan with gzip, so the relevant changes should be done to the\narch-specific code when adding support for XZ-compressed kernel.\nSimilarly, the heap size in arch-specific pre-boot code may need to be\nincreased (30 KiB is enough).\n\nThe XZ decompressor needs memmove(), memeq() (memcmp() \u003d\u003d 0), and\nmemzero() (memset(ptr, 0, size)), which aren\u0027t available in all\narch-specific pre-boot environments.  I\u0027m including simple versions in\ndecompress_unxz.c, but a cleaner solution would naturally be nicer.\n\nSigned-off-by: Lasse Collin \u003classe.collin@tukaani.org\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Alain Knaff \u003calain@knaff.lu\u003e\nCc: Albin Tonnerre \u003calbin.tonnerre@free-electrons.com\u003e\nCc: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "24fa0402a9b6a537e87e38341e78b7da86486846",
      "tree": "06adb32802cf8a3491dff1f4e5cad464c676040a",
      "parents": [
        "fb7fa589fd3ecc212fabd7867a4ecc3b175260c1"
      ],
      "author": {
        "name": "Lasse Collin",
        "email": "lasse.collin@tukaani.org",
        "time": "Wed Jan 12 17:01:22 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:24 2011 -0800"
      },
      "message": "decompressors: add XZ decompressor module\n\nIn userspace, the .lzma format has become mostly a legacy file format that\ngot superseded by the .xz format.  Similarly, LZMA Utils was superseded by\nXZ Utils.\n\nThese patches add support for XZ decompression into the kernel.  Most of\nthe code is as is from XZ Embedded \u003chttp://tukaani.org/xz/embedded.html\u003e.\nIt was written for the Linux kernel but is usable in other projects too.\n\nAdvantages of XZ over the current LZMA code in the kernel:\n  - Nice API that can be used by other kernel modules; it\u0027s\n    not limited to kernel, initramfs, and initrd decompression.\n  - Integrity check support (CRC32)\n  - BCJ filters improve compression of executable code on\n    certain architectures. These together with LZMA2 can\n    produce a few percent smaller kernel or Squashfs images\n    than plain LZMA without making the decompression slower.\n\nThis patch: Add the main decompression code (xz_dec), testing module\n(xz_dec_test), wrapper script (xz_wrap.sh) for the xz command line tool,\nand documentation.  The xz_dec module is enough to have a usable XZ\ndecompressor e.g.  for Squashfs.\n\nSigned-off-by: Lasse Collin \u003classe.collin@tukaani.org\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Alain Knaff \u003calain@knaff.lu\u003e\nCc: Albin Tonnerre \u003calbin.tonnerre@free-electrons.com\u003e\nCc: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "78c377d1b5e7ef15c8c307c2aa2511602a0829c3",
      "tree": "306f17444a4c5e190ff3b3513204910a386998e8",
      "parents": [
        "734825796446930c57f69677f2e6cf1683d012f2"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed Jan 12 16:59:55 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:11 2011 -0800"
      },
      "message": "flex_array: export symbols to modules\n\nAlex said:\n\n  I want to use flex_array to store a sparse array of ATM cell\n  re-assembly buffers for my ATM over Ethernet driver.  Using the per-vcc\n  user_back structure causes problems when stacked with things like\n  br2684.\n\nAdd EXPORT_SYMBOL() for all publically accessible flex array functions\nand move to obj-y so that modules may use this library.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nReported-by: Alex Bennee \u003ckernel-hacker@bennee.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "abb359450f20c32ae03039d8736f12b1d561caf5",
      "tree": "6e8723885feb66a138f19f0ff31615dc13a8d859",
      "parents": [
        "cb600d2f83c854ec3d6660063e4466431999489b",
        "4e3dbdb1392a83bd21a6ff8f6bc785495058d37c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 06 12:30:19 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 06 12:30:19 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1436 commits)\n  cassini: Use local-mac-address prom property for Cassini MAC address\n  net: remove the duplicate #ifdef __KERNEL__\n  net: bridge: check the length of skb after nf_bridge_maybe_copy_header()\n  netconsole: clarify stopping message\n  netconsole: don\u0027t announce stopping if nothing happened\n  cnic: Fix the type field in SPQ messages\n  netfilter: fix export secctx error handling\n  netfilter: fix the race when initializing nf_ct_expect_hash_rnd\n  ipv4: IP defragmentation must be ECN aware\n  net: r6040: Return proper error for r6040_init_one\n  dcb: use after free in dcb_flushapp()\n  dcb: unlock on error in dcbnl_ieee_get()\n  net: ixp4xx_eth: Return proper error for eth_init_one\n  include/linux/if_ether.h: Add #define ETH_P_LINK_CTL for HPNA and wlan local tunnel\n  net: add POLLPRI to sock_def_readable()\n  af_unix: Avoid socket-\u003esk NULL OOPS in stream connect security hooks.\n  net_sched: pfifo_head_drop problem\n  mac80211: remove stray extern\n  mac80211: implement off-channel TX using hw r-o-c offload\n  mac80211: implement hardware offload for remain-on-channel\n  ...\n"
    },
    {
      "commit": "1f5a24794a54588ea3a9efd521be31d826e0b9d7",
      "tree": "58dd33af6093cd3a0fed59a12ed41d6c7d8083ba",
      "parents": [
        "87de5ac782761a3ebf806e434e8c9cc205a87274"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Dec 09 12:02:18 2010 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Dec 10 11:52:17 2010 -0800"
      },
      "message": "timers: Rename timerlist infrastructure to timerqueue\n\nThomas pointed out a namespace collision between the new timerlist\ninfrastructure I introduced and the existing timer_list.c\n\nSo to avoid confusion, I\u0027ve renamed the timerlist infrastructure\nto timerqueue.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "87de5ac782761a3ebf806e434e8c9cc205a87274",
      "tree": "8186969d00da5d0daea37fcb92538bbc72c8f086",
      "parents": [
        "5e4f083f78d03e9f8d2e327daccde16976f9bb00"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Sep 20 17:42:46 2010 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Dec 02 16:41:39 2010 -0800"
      },
      "message": "timers: Introduce timerlist infrastructure.\n\nThe timerlist infrastructure is a thin layer over the rbtree\ncode that implements a simple list of timers sorted by an\nexpires value, and a getnext function that provides a pointer\nto the earliest timer.\n\nThis infrastructure allows drivers and other kernel infrastructure\nto easily implement timers without duplicating code.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nLKML Reference: \u003c1290136329-18291-2-git-send-email-john.stultz@linaro.org\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\n"
    },
    {
      "commit": "c5485a7e7569ab32eea240c850198519e2a765ef",
      "tree": "928a8556deaec0811d1b83102b33365aab28a270",
      "parents": [
        "50a9432daeece6fc1309bef1dc0a7b8fde8204cb"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Tue Nov 16 10:58:37 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 18 14:21:52 2010 -0500"
      },
      "message": "lib: Add generic exponentially weighted moving average (EWMA) function\n\nThis adds generic functions for calculating Exponentially Weighted Moving\nAverages (EWMA). This implementation makes use of a structure which keeps the\nEWMA parameters and a scaled up internal representation to reduce rounding\nerrors.\n\nThe original idea for this implementation came from the rt2x00 driver\n(rt2x00link.c). I would like to use it in several places in the mac80211 and\nath5k code and I hope it can be useful in many other places in the kernel code.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2144381da478cc4aa3a29ee29b0c5e6ddaaced14",
      "tree": "380a29fec86b537ed602d12f4050654b1c66c27c",
      "parents": [
        "45d7f32c7a43cbb9592886d38190e379e2eb2226",
        "e5d84970a554d5c0072043a7b9f0f5b88b5fdfe1"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Aug 09 10:36:44 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Aug 09 10:36:44 2010 +0100"
      },
      "message": "Merge branch \u0027async\u0027 of macbook:git/btrfs-unstable\n\nConflicts:\n\tdrivers/md/Makefile\n\tlib/raid6/unroll.pl\n"
    },
    {
      "commit": "95f72d1ed41a66f1c1c29c24d479de81a0bea36f",
      "tree": "bd92b3804ff0bea083d69af0ede52f99ab34c0af",
      "parents": [
        "1c5474a65bf15a4cb162dfff86d6d0b5a08a740c"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Jul 12 14:36:09 2010 +1000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 14 17:14:00 2010 +1000"
      },
      "message": "lmb: rename to memblock\n\nvia following scripts\n\n      FILES\u003d$(find * -type f | grep -vE \u0027oprofile|[^K]config\u0027)\n\n      sed -i \\\n        -e \u0027s/lmb/memblock/g\u0027 \\\n        -e \u0027s/LMB/MEMBLOCK/g\u0027 \\\n        $FILES\n\n      for N in $(find . -name lmb.[ch]); do\n        M\u003d$(echo $N | sed \u0027s/lmb/memblock/g\u0027)\n        mv $N $M\n      done\n\nand remove some wrong change like lmbench and dlmb etc.\n\nalso move memblock.c from lib/ to mm/\n\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "9a90e09854a3c7cc603ab8fc9163f77bb1f66cfa",
      "tree": "c8c5f767dd2351c9db440f003cc14401583bafd3",
      "parents": [
        "d372e7fe4698bde3a00b718f7901a0025dda47ef",
        "d3b383338f105f50724c10a7d81b04a3930e886b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 28 14:42:18 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 28 14:42:18 2010 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (27 commits)\n  ACPI: Don\u0027t let acpi_pad needlessly mark TSC unstable\n  drivers/acpi/sleep.h: Checkpatch cleanup\n  ACPI: Minor cleanup eliminating redundant PMTIMER_TICKS to NS conversion\n  ACPI: delete unused c-state promotion/demotion data strucutures\n  ACPI: video: fix acpi_backlight\u003dvideo\n  ACPI: EC: Use kmemdup\n  drivers/acpi: use kasprintf\n  ACPI, APEI, EINJ injection parameters support\n  Add x64 support to debugfs\n  ACPI, APEI, Use ERST for persistent storage of MCE\n  ACPI, APEI, Error Record Serialization Table (ERST) support\n  ACPI, APEI, Generic Hardware Error Source memory error support\n  ACPI, APEI, UEFI Common Platform Error Record (CPER) header\n  Unified UUID/GUID definition\n  ACPI Hardware Error Device (PNP0C33) support\n  ACPI, APEI, PCIE AER, use general HEST table parsing in AER firmware_first setup\n  ACPI, APEI, Document for APEI\n  ACPI, APEI, EINJ support\n  ACPI, APEI, HEST table parsing\n  ACPI, APEI, APEI supporting infrastructure\n  ...\n"
    },
    {
      "commit": "c9d221f86e43d9fb16260fe18a8cd6767f36c8a5",
      "tree": "87e56764a538eb0fa94bd05e211e1ad89cf5f043",
      "parents": [
        "55af6bb509d3ef2696faddd4a734bf024794b337"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed May 26 14:43:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 27 09:12:48 2010 -0700"
      },
      "message": "fault-injection: add CPU notifier error injection module\n\nI used this module to test the series of modification to the cpu notifiers\ncode.\n\nExample1: inject CPU offline error (-1 \u003d\u003d -EPERM)\n\n\t# modprobe cpu-notifier-error-inject cpu_down_prepare_error\u003d-1\n\t# echo 0 \u003e /sys/devices/system/cpu/cpu1/online\n\tbash: echo: write error: Operation not permitted\n\nExample2: inject CPU online error (-2 \u003d\u003d -ENOENT)\n\n\t# modprobe cpu-notifier-error-inject cpu_up_prepare_error\u003d-2\n\t# echo 1 \u003e /sys/devices/system/cpu/cpu1/online\n\tbash: echo: write error: No such file or directory\n\n[akpm@linux-foundation.org: fix Kconfig help text]\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@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": "fab1c23242528771a955c475ef23d99156a71a7f",
      "tree": "2d882ead41cd984628cbfc18c9a2a0a663539602",
      "parents": [
        "801eab8118f61255d8e2be35939c572042618742"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Tue May 18 14:35:18 2010 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed May 19 22:40:47 2010 -0400"
      },
      "message": "Unified UUID/GUID definition\n\nThere are many different UUID/GUID definitions in kernel, such as that\nin EFI, many file systems, some drivers, etc. Every kernel components\nneed UUID/GUID has its own definition. This patch provides a unified\ndefinition for UUID/GUID.\n\nUUID is defined via typedef. This makes that UUID appears more like a\npreliminary type, and makes the data type explicit (comparing with\nimplicit \"u8 uuid[16]\").\n\nThe binary representation of UUID/GUID can be little-endian (used by\nEFI, etc) or big-endian (defined by RFC4122), so both is defined.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "cb41838bbc4403f7270a94b93a9a0d9fc9c2e7ea",
      "tree": "0f359975ccad4ac72e86b8edf1924c076e74bd89",
      "parents": [
        "98f01720cbe3e2eb719682777049b6514e9db556",
        "c59bd5688299cddb71183e156e7a3c1409b90df2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 18 09:17:01 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 18 09:17:01 2010 -0700"
      },
      "message": "Merge branch \u0027core-hweight-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-hweight-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, hweight: Use a 32-bit popcnt for __arch_hweight32()\n  arch, hweight: Fix compilation errors\n  x86: Add optimized popcnt variants\n  bitops: Optimize hweight() by making use of compile-time evaluation\n"
    },
    {
      "commit": "d9c5841e22231e4e49fd0a1004164e6fce59b7a6",
      "tree": "e1f589c46b3ff79bbe7b1b2469f6362f94576da6",
      "parents": [
        "b701a47ba48b698976fb2fe05fb285b0edc1d26a",
        "5967ed87ade85a421ef814296c3c7f182b08c225"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Apr 29 16:53:17 2010 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Apr 29 16:53:17 2010 -0700"
      },
      "message": "Merge branch \u0027x86/asm\u0027 into x86/atomic\n\nMerge reason:\n\tConflict between LOCK_PREFIX_HERE and relative alternatives\n\tpointers\n\nResolved Conflicts:\n\tarch/x86/include/asm/alternative.h\n\tarch/x86/kernel/alternative.c\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "d61931d89be506372d01a90d1755f6d0a9fafe2d",
      "tree": "652c34238edcb6c558163abc3cd9d6ce7c5f91a5",
      "parents": [
        "1527bc8b928dd1399c3d3467dd47d9ede210978a"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Fri Mar 05 17:34:46 2010 +0100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Apr 06 15:52:11 2010 -0700"
      },
      "message": "x86: Add optimized popcnt variants\n\nAdd support for the hardware version of the Hamming weight function,\npopcnt, present in CPUs which advertize it under CPUID, Function\n0x0000_0001_ECX[23]. On CPUs which don\u0027t support it, we fallback to the\ndefault lib/hweight.c sw versions.\n\nA synthetic benchmark comparing popcnt with __sw_hweight64 showed almost\na 3x speedup on a F10h machine.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\nLKML-Reference: \u003c20100318112015.GC11152@aftab\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "2cda2728aa1c8c006418a24f867b25e5eb7a32e2",
      "tree": "c23ec7c38d74237646c5453d96bfbbea4cadfee7",
      "parents": [
        "f11c9c5c259cb2c3d698548dc3936f773ab1f5b9"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Mar 15 12:46:51 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Mar 15 12:47:59 2010 +0100"
      },
      "message": "block: Fix overrun in lcm() and move it to lib\n\nlcm() was defined to take integer-sized arguments.  The supplied\narguments are multiplied, however, causing us to overflow given\nsufficiently large input.  That in turn led to incorrect optimal I/O\nsize reporting in some cases (RAID over RAID).\n\nSwitch lcm() over to unsigned long similar to gcd() and move the\nfunction from blk-settings.c to lib.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b8fa05719ba4349be80ce929237249b57886a203",
      "tree": "eb2a58ce09dc699e29e15b812f06196587aa64a3",
      "parents": [
        "4da0b66c6e9ea7ba78a19f9f186779826d89f8b0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 07 09:54:44 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 07 09:54:44 2010 -0800"
      },
      "message": "Revert \"lib: build list_sort() only if needed\"\n\nThis reverts commit a069c266ae5fdfbf5b4aecf2c672413aa33b2504.\n\nIt turns ou that not only was it missing a case (XFS) that needed it,\nbut perhaps more importantly, people sometimes want to enable new\nmodules that they hadn\u0027t had enabled before, and if such a module uses\nlist_sort(), it can\u0027t easily be inserted any more.\n\nSo rather than add a \"select LIST_SORT\" to the XFS case, just leave it\ncompiled in.  It\u0027s not all _that_ big, after all, and the inconvenience\nisn\u0027t worth it.\n\nRequested-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Don Mullis \u003cdon.mullis@gmail.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "66b89159c25a47d2177743526c61b5ada7acc39e",
      "tree": "b092b859ca01d7544a666c95f940144b0ef3b35b",
      "parents": [
        "87c7ae06cc50bcbcdcc60d64a959ca0b9b71f892",
        "c2f843f03d658e9ab2a1a455f2c1851fd6a869af"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 13:18:03 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 13:18:03 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/joern/logfs\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/joern/logfs:\n  [LogFS] Change magic number\n  [LogFS] Remove h_version field\n  [LogFS] Check feature flags\n  [LogFS] Only write journal if dirty\n  [LogFS] Fix bdev erases\n  [LogFS] Silence gcc\n  [LogFS] Prevent 64bit divisions in hash_index\n  [LogFS] Plug memory leak on error paths\n  [LogFS] Add MAINTAINERS entry\n  [LogFS] add new flash file system\n\nFixed up trivial conflict in lib/Kconfig, and a semantic conflict in\nfs/logfs/inode.c introduced by write_inode() being changed to use\nwriteback_control\u0027 by commit a9185b41a4f84971b930c519f0c63bd450c4810d\n(\"pass writeback_control to -\u003ewrite_inode\")\n"
    },
    {
      "commit": "a069c266ae5fdfbf5b4aecf2c672413aa33b2504",
      "tree": "2f9731d8475fc5b2d942cac004904db8e49d5428",
      "parents": [
        "02b12b7a28faa2e9ed5a361cd08ea576ab1f1509"
      ],
      "author": {
        "name": "Don Mullis",
        "email": "don.mullis@gmail.com",
        "time": "Fri Mar 05 13:43:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:35 2010 -0800"
      },
      "message": "lib: build list_sort() only if needed\n\nBuild list_sort() only for configs that need it -- those that don\u0027t save\n~581 bytes (i386).\n\nSigned-off-by: Don Mullis \u003cdon.mullis@gmail.com\u003e\nCc: Dave Airlie \u003cairlied@redhat.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "86a8938078a8bb518c5376de493e348c7490d506",
      "tree": "f6f3a0fbb451bcbf25243d220b72b49beb778f76",
      "parents": [
        "9c76b38476b18c45f97098a10b0176b321eba3ea"
      ],
      "author": {
        "name": "Luca Barbieri",
        "email": "luca@luca-barbieri.com",
        "time": "Wed Feb 24 10:54:24 2010 +0100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Feb 25 20:47:12 2010 -0800"
      },
      "message": "lib: Add self-test for atomic64_t\n\nThis patch adds self-test on boot code for atomic64_t.\n\nThis has been used to test the later changes in this patchset.\n\nSigned-off-by: Luca Barbieri \u003cluca@luca-barbieri.com\u003e\nLKML-Reference: \u003c1267005265-27958-4-git-send-email-luca@luca-barbieri.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "2c761270d5520dd84ab0b4e47c24d99ff8503c38",
      "tree": "c23a51fdcc96641661b632d3b3c2c46ad7e53a91",
      "parents": [
        "dbf004d7883b3adb058c0c1a5635bc4ec27651c0"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 12 17:39:16 2010 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:02:00 2010 -0800"
      },
      "message": "lib: Introduce generic list_sort function\n\nThere are two copies of list_sort() in the tree already, one in the DRM\ncode, another in ubifs.  Now XFS needs this as well.  Create a generic\nlist_sort() function from the ubifs version and convert existing users\nto it so we don\u0027t end up with yet another copy in the tree.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nAcked-by: Dave Airlie \u003cairlied@redhat.com\u003e\nAcked-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cacb246f8db2b9eba89d44a0f0dd4f6ed93bc113",
      "tree": "8fff3df983d02c362ba90b334b77a7a93315455e",
      "parents": [
        "13510997d600a076e064f10587a8f6d20f8fff41"
      ],
      "author": {
        "name": "Albin Tonnerre",
        "email": "albin.tonnerre@free-electrons.com",
        "time": "Fri Jan 08 14:42:46 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:05 2010 -0800"
      },
      "message": "Add LZO compression support for initramfs and old-style initrd\n\nSigned-off-by: Albin Tonnerre \u003calbin.tonnerre@free-electrons.com\u003e\nTested-by: Wu Zhangjin \u003cwuzhangjin@gmail.com\u003e\nAcked-by: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nAcked-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5db53f3e80dee2d9dff5e534f9e9fe1db17c9936",
      "tree": "066f2873eeb7eb86466f6389e45892d957db3de2",
      "parents": [
        "66b00a7c93ec782d118d2c03bd599cfd041e80a1"
      ],
      "author": {
        "name": "Joern Engel",
        "email": "joern@logfs.org",
        "time": "Fri Nov 20 20:13:39 2009 +0100"
      },
      "committer": {
        "name": "Joern Engel",
        "email": "joern@logfs.org",
        "time": "Fri Nov 20 20:13:39 2009 +0100"
      },
      "message": "[LogFS] add new flash file system\n\nThis is a new flash file system. See\nDocumentation/filesystems/logfs.txt\n\nSigned-off-by: Joern Engel \u003cjoern@logfs.org\u003e\n"
    },
    {
      "commit": "f5e70d0fe3ea990cfb3fc8d7f76a719adcb1e0b5",
      "tree": "1794eb51814228ff76f672a541100ad62dd791c9",
      "parents": [
        "17d857be649a21ca90008c6dc425d849fa83db5c"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@tylersburg.infradead.org",
        "time": "Mon Jul 13 11:35:12 2009 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Oct 29 14:38:47 2009 +0000"
      },
      "message": "md: Factor out RAID6 algorithms into lib/\n\nWe\u0027ll want to use these in btrfs too.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "b411b3637fa71fce9cf2acf0639009500f5892fe",
      "tree": "6b88e5202e0f137fef50e95b0441bcafdbf91990",
      "parents": [
        "1a35e0f6443f4266dad4c569c55c57a9032596fa"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Sep 25 16:07:19 2009 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 01 21:17:49 2009 +0200"
      },
      "message": "The DRBD driver\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "534acc057b5a08ec33fa57cdd2f5a09ef124e7f2",
      "tree": "186e6ff90a7a696a2d15f183871250c9d83f476d",
      "parents": [
        "a9e58f25734e153b8c6516d904e2398fb8b0b23d"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave@linux.vnet.ibm.com",
        "time": "Wed Jul 29 15:04:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 29 19:10:36 2009 -0700"
      },
      "message": "lib: flexible array implementation\n\nOnce a structure goes over PAGE_SIZE*2, we see occasional allocation\nfailures.  Some people have chosen to switch over to things like vmalloc()\nthat will let them keep array-like access to such a large structures.\nBut, vmalloc() has plenty of downsides.\n\nHere\u0027s an alternative.  I think it\u0027s what Andrew was suggesting here:\n\n\thttp://lkml.org/lkml/2009/7/2/518\n\nI call it a flexible array.  It does all of its work in PAGE_SIZE bits, so\nnever does an order\u003e0 allocation.  The base level has\nPAGE_SIZE-2*sizeof(int) bytes of storage for pointers to the second level.\n So, with a 32-bit arch, you get about 4MB (4183112 bytes) of total\nstorage when the objects pack nicely into a page.  It is half that on\n64-bit because the pointers are twice the size.  There\u0027s a table detailing\nthis in the code.\n\nThere are kerneldocs for the functions, but here\u0027s an\noverview:\n\nflex_array_alloc() - dynamically allocate a base structure\nflex_array_free() - free the array and all of the\n\t\t    second-level pages\nflex_array_free_parts() - free the second-level pages, but\n\t\t\t  not the base (for static bases)\nflex_array_put() - copy into the array at the given index\nflex_array_get() - copy out of the array at the given index\nflex_array_prealloc() - preallocate the second-level pages\n\t\t\tbetween the given indexes to\n\t\t\tguarantee no allocs will occur at\n\t\t\tput() time.\n\nWe could also potentially just pass the \"element_size\" into each of the\nAPI functions instead of storing it internally.  That would get us one\nmore base pointer on 32-bit.\n\nI\u0027ve been testing this by running it in userspace.  The header and patch\nthat I\u0027ve been using are here, as well as the little script I\u0027m using to\ngenerate the size table which goes in the kerneldocs.\n\n\thttp://sr71.net/~dave/linux/flexarray/\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@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": "d2829224619866daf336141b71550e223a198838",
      "tree": "59e12165ac9dea56a04f3b46ec098f4292f67481",
      "parents": [
        "eae9d2ba0cfc27a2ad9765f23efb98fb80d80234"
      ],
      "author": {
        "name": "Florian Fainelli",
        "email": "florian@openwrt.org",
        "time": "Wed Jun 17 16:28:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 18 13:04:05 2009 -0700"
      },
      "message": "lib: add lib/gcd.c\n\nThis patch adds lib/gcd.c which contains a greatest common divider\nimplementation taken from sound/core/pcm_timer.c\n\nSeveral usages of this new library function will be sent to subsystem\nmaintainers.\n\n[akpm@linux-foundation.org: use swap() (pointed out by Joe)]\n[akpm@linux-foundation.org: just add gcd.o to obj-y, remove Kconfig changes]\nSigned-off-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Simon Horman \u003chorms@verge.net.au\u003e\nCc: Julius Volz \u003cjuliusv@google.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "09d4e0edd4614e787393acc582ac701c6ec3565b",
      "tree": "77f3b85e0f59a168ac78639e510ebcbd3791b3d2",
      "parents": [
        "4c75f84f2c781beb230031234ed961d28771a764"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 12 21:10:05 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Jun 15 13:27:38 2009 +1000"
      },
      "message": "lib: Provide generic atomic64_t implementation\n\nMany processor architectures have no 64-bit atomic instructions, but\nwe need atomic64_t in order to support the perf_counter subsystem.\n\nThis adds an implementation of 64-bit atomic operations using hashed\nspinlocks to provide atomicity.  For each atomic operation, the address\nof the atomic64_t variable is hashed to an index into an array of 16\nspinlocks.  That spinlock is taken (with interrupts disabled) around the\noperation, which can then be coded non-atomically within the lock.\n\nOn UP, all the spinlock manipulation goes away and we simply disable\ninterrupts around each operation.  In fact gcc eliminates the whole\natomic64_lock variable as well.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "5b02ee3d219f9e01b6e9146e25613822cfc2e5ce",
      "tree": "7ce9126738c3cf4b37d67170d0e4b34818c057a9",
      "parents": [
        "26a28fa4fea5b8c65713aa50c124f76a88c7924d",
        "8ebf975608aaebd7feb33d77f07ba21a6380e086"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Jun 12 09:53:47 2009 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Jun 12 11:32:58 2009 +0200"
      },
      "message": "asm-generic: merge branch \u0027master\u0027 of torvalds/linux-2.6\n\nFixes a merge conflict against the x86 tree caused by a fix to\natomic.h which I renamed to atomic_long.h.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "26a28fa4fea5b8c65713aa50c124f76a88c7924d",
      "tree": "95d5989e0cdcb4f565d7546b4c0fd76e30cfd249",
      "parents": [
        "eed417ddd52146f446595b5a7d8f21b1814b95b7"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed May 13 22:56:38 2009 +0000"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@klappe2.(none)",
        "time": "Thu Jun 11 21:02:51 2009 +0200"
      },
      "message": "add generic lib/checksum.c\n\nAdd a generic (unoptimized) implementation of checksum.c in pure C\nfor use by all architectures that cannot be bother with implementing\ntheir own version.\n\nBased on microblaze code by Michal Simek \u003cmonstr@monstr.eu\u003e\n\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nSigned-off-by: Remis Lima Baima \u003cremis.developer@googlemail.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "8759ef32d992fc6c0bcbe40fca7aa302190918a5",
      "tree": "316df64d3456597bf7f8ef7508654c82faf6a5fe",
      "parents": [
        "9f322ad064f9210e7d472dfe77e702274d5c9dba"
      ],
      "author": {
        "name": "Oskar Schirmer",
        "email": "os@emlix.com",
        "time": "Thu Jun 11 14:51:15 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 08:51:08 2009 -0700"
      },
      "message": "lib: isolate rational fractions helper function\n\nProvide a helper function to determine optimum numerator\ndenominator value pairs taking into account restricted\nregister size. Useful especially with PLL and other clock\nconfigurations.\n\nSigned-off-by: Oskar Schirmer \u003cos@emlix.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5422a5111811401f7756345e4c237ff06cf6d1e",
      "tree": "4744be4aba038150cd36f8ddcd2cf1e9ae9d8ab5",
      "parents": [
        "91ac033d8377552d3654501a105ab55bf546940e"
      ],
      "author": {
        "name": "Fred Isaman",
        "email": "iisaman@citi.umich.edu",
        "time": "Thu Apr 23 16:40:32 2009 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 13:28:31 2009 -0700"
      },
      "message": "lib: find_last_bit.o needed by a module only, move it from lib to obj\n\nCurrently, although find_last_bit is EXPORTed, it is statically linked\nwith the kernel and is referenced only under CONFIG_SMP.\n\nWhen CONFIG_SMP is undefined and find_last_bit is referenced only by\nmodules, linking fails with:\n\n  ERROR: \"find_last_bit\" [fs/nfs/nfs.ko] undefined!\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Fred Isaman \u003ciisaman@citi.umich.edu\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b0d44c0dbbd52effb731b1c0af9afd56215c48de",
      "tree": "3237c0087d91a5390aed05689b9f610ba16fa116",
      "parents": [
        "9537a48ed4b9e4b738943d6da0a0fd4278adf905",
        "7c730ccdc1188b97f5c8cb690906242c7ed75c22"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 28 23:05:50 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 28 23:05:50 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into core/iommu\n\nConflicts:\n\tarch/x86/Kconfig\n"
    },
    {
      "commit": "6e15cf04860074ad032e88c306bea656bbdd0f22",
      "tree": "c346383bb7563e8d66b2f4a502f875b259c34870",
      "parents": [
        "be0ea69674ed95e1e98cb3687a241badc756d228",
        "60db56422043aaa455ac7f858ce23c273220f9d9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 21:39:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 27 17:28:43 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into percpu-cpumask-x86-for-linus-2\n\nConflicts:\n\tarch/parisc/kernel/irq.c\n\tarch/x86/include/asm/fixmap_64.h\n\tarch/x86/include/asm/setup.h\n\tkernel/irq/handle.c\n\nSemantic merge:\n        arch/x86/include/asm/fixmap.h\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "831576fe40f4175e0767623cffa4aeb28157943a",
      "tree": "de54e628e5849d6cf201df4446d760d17f752326",
      "parents": [
        "21cdbc1378e8aa96e1ed4a606dce1a8e7daf7fdf",
        "66fef08f7d5267b2312c4b48a6d2957d2d414105"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:05:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:05:01 2009 -0700"
      },
      "message": "Merge branch \u0027sched-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (46 commits)\n  sched: Add comments to find_busiest_group() function\n  sched: Refactor the power savings balance code\n  sched: Optimize the !power_savings_balance during fbg()\n  sched: Create a helper function to calculate imbalance\n  sched: Create helper to calculate small_imbalance in fbg()\n  sched: Create a helper function to calculate sched_domain stats for fbg()\n  sched: Define structure to store the sched_domain statistics for fbg()\n  sched: Create a helper function to calculate sched_group stats for fbg()\n  sched: Define structure to store the sched_group statistics for fbg()\n  sched: Fix indentations in find_busiest_group() using gotos\n  sched: Simple helper functions for find_busiest_group()\n  sched: remove unused fields from struct rq\n  sched: jiffies not printed per CPU\n  sched: small optimisation of can_migrate_task()\n  sched: fix typos in documentation\n  sched: add avg_overlap decay\n  x86, sched_clock(): mark variables read-mostly\n  sched: optimize ttwu vs group scheduling\n  sched: TIF_NEED_RESCHED -\u003e need_reshed() cleanup\n  sched: don\u0027t rebalance if attached on NULL domain\n  ...\n"
    },
    {
      "commit": "0c93ea4064a209cdc36de8a9a3003d43d08f46f7",
      "tree": "ff19952407c523a1349ef56c05993416dd28437e",
      "parents": [
        "bc2fd381d8f9dbeb181f82286cdca1567e3d0def",
        "e6e66b02e11563abdb7f69dcb7a2efbd8d577e77"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 11:17:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 11:17:04 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (61 commits)\n  Dynamic debug: fix pr_fmt() build error\n  Dynamic debug: allow simple quoting of words\n  dynamic debug: update docs\n  dynamic debug: combine dprintk and dynamic printk\n  sysfs: fix some bin_vm_ops errors\n  kobject: don\u0027t block for each kobject_uevent\n  sysfs: only allow one scheduled removal callback per kobj\n  Driver core: Fix device_move() vs. dpm list ordering, v2\n  Driver core: some cleanup on drivers/base/sys.c\n  Driver core: implement uevent suppress in kobject\n  vcs: hook sysfs devices into object lifetime instead of \"binding\"\n  driver core: fix passing platform_data\n  driver core: move platform_data into platform_device\n  sysfs: don\u0027t block indefinitely for unmapped files.\n  driver core: move knode_bus into private structure\n  driver core: move knode_driver into private structure\n  driver core: move klist_children into private structure\n  driver core: create a private portion of struct device\n  driver core: remove polling for driver_probe_done(v5)\n  sysfs: reference sysfs_dirent from sysfs inodes\n  ...\n\nFixed conflicts in drivers/sh/maple/maple.c manually\n"
    },
    {
      "commit": "e9d376f0fa66bd630fe27403669c6ae6c22a868f",
      "tree": "6eadef32eb421647ae98d88341b9aceb259aaf22",
      "parents": [
        "095160aee954688a9bad225952c4bee546541e19"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Feb 05 11:51:38 2009 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "dynamic debug: combine dprintk and dynamic printk\n\nThis patch combines Greg Bank\u0027s dprintk() work with the existing dynamic\nprintk patchset, we are now calling it \u0027dynamic debug\u0027.\n\nThe new feature of this patchset is a richer /debugfs control file interface,\n(an example output from my system is at the bottom), which allows fined grained\ncontrol over the the debug output. The output can be controlled by function,\nfile, module, format string, and line number.\n\nfor example, enabled all debug messages in module \u0027nf_conntrack\u0027:\n\necho -n \u0027module nf_conntrack +p\u0027 \u003e /mnt/debugfs/dynamic_debug/control\n\nto disable them:\n\necho -n \u0027module nf_conntrack -p\u0027 \u003e /mnt/debugfs/dynamic_debug/control\n\nA further explanation can be found in the documentation patch.\n\nSigned-off-by: Greg Banks \u003cgnb@sgi.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f2f45e5f3c921c73c913e9a9c00f21ec01c86b4d",
      "tree": "36a481a95e8e412e1453fb4b4843333725400ab3",
      "parents": [
        "5ee00bd4691e7364bb7b62e2068d473cd5cb9320"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Jan 09 12:19:52 2009 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Thu Mar 05 15:11:12 2009 +0100"
      },
      "message": "dma-debug: add header file and core data structures\n\nImpact: add groundwork for DMA-API debugging\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "e9cc8bddaea3944fabfebb968bc88d603239beed",
      "tree": "9d311256882e48bd133f31db564a307c2a271453",
      "parents": [
        "8c882f64130071eaebdc0861bee34a73e436f004"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Wed Mar 04 14:53:30 2009 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Mar 04 14:53:30 2009 +0800"
      },
      "message": "netlink: Move netlink attribute parsing support to lib\n\nNetlink attribute parsing may be used even if CONFIG_NET is not set.\nMove it from net/netlink to lib and control its inclusion based on the new\nconfig symbol CONFIG_NLATTR, which is selected by CONFIG_NET.\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "ceacc2c1c85ac498ca4cf297bdfe5b4aaa9fd0e0",
      "tree": "4bac6a3e5544d90da1ee9437845120204d4bb382",
      "parents": [
        "398a153b16b09a68739928d4502455db9725ac86"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Jan 16 14:46:40 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 15:01:31 2009 +0100"
      },
      "message": "sched: make plist a library facility\n\nIngo Molnar wrote:\n\n\u003e here\u0027s a new build failure with tip/sched/rt:\n\u003e\n\u003e   LD      .tmp_vmlinux1\n\u003e kernel/built-in.o: In function `set_curr_task_rt\u0027:\n\u003e sched.c:(.text+0x3675): undefined reference to `plist_del\u0027\n\u003e kernel/built-in.o: In function `pick_next_task_rt\u0027:\n\u003e sched.c:(.text+0x37ce): undefined reference to `plist_del\u0027\n\u003e kernel/built-in.o: In function `enqueue_pushable_task\u0027:\n\u003e sched.c:(.text+0x381c): undefined reference to `plist_del\u0027\n\nEliminate the plist library kconfig and make it available\nunconditionally.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "889c92d21db40be0b7d22a59395060237895bb85",
      "tree": "db76e1e002e450cccc1b7a8119ad629eccc24da8",
      "parents": [
        "6c11b12ac6f101732d43b5682f5b3ae4dda4205f"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Jan 08 15:14:17 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Jan 08 15:14:17 2009 -0800"
      },
      "message": "bzip2/lzma: centralize format detection\n\nCentralize the compression format detection to a common routine in the\nlib directory, and use it for both initramfs and initrd.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "c8531ab343dec88ed8005e403b1b304c710b7494",
      "tree": "40bef451a13ca4b3d54645e69d03c14631364e89",
      "parents": [
        "2e9f3bddcbc711bb14d86c6f068a779bf3710247"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Jan 05 13:48:31 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Jan 05 13:48:31 2009 -0800"
      },
      "message": "bzip2/lzma: proper Kconfig dependencies for the ramdisk options\n\nImpact: Partial resolution of build failure\n\nMake all the compression algorithms properly configurable, and make\nsure the ramdisk options pull in the proper compression algorithms, as\nthey should.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "30d65dbfe3add7f010a075991dc0bfeaebb7d9e1",
      "tree": "c60ce6748eea43d1e74d96ef03990b1e23f33b1d",
      "parents": [
        "bc22c17e12c130dc929218a95aa347e0f3fd05dc"
      ],
      "author": {
        "name": "Alain Knaff",
        "email": "alain@knaff.lu",
        "time": "Sun Jan 04 22:46:17 2009 +0100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sun Jan 04 15:53:35 2009 -0800"
      },
      "message": "bzip2/lzma: config and initramfs support for bzip2/lzma decompression\n\nImpact: New code for initramfs decompression, new features\n\nThis is the second part of the bzip2/lzma patch\n\nThe bzip patch is based on an idea by Christian Ludwig, includes support for\ncompressing the kernel with bzip2 or lzma rather than gzip. Both\ncompressors give smaller sizes than gzip.  Lzma\u0027s decompresses faster\nthan bzip2.\n\nIt also supports ramdisks and initramfs\u0027 compressed using these two\ncompressors.\n\nThe functionality has been successfully used for a couple of years by\nthe udpcast project\n\nThis version applies to \"tip\" kernel 2.6.28\n\nThis part contains:\n- support for new compressions (bzip2 and lzma) in initramfs and\nold-style ramdisk\n- config dialog for kernel compression (but new kernel compressions\nnot yet supported)\n\nSigned-off-by: Alain Knaff \u003calain@knaff.lu\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "ab53d472e785e51fdfc08fc1d66252c1153e6c0f",
      "tree": "19abab13d2e4e8fe00f960c0ac475e14bfb1a44e",
      "parents": [
        "0db5d3d2f58804edb394e8008c7d9744110338a2"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:19 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:19 2009 +1030"
      },
      "message": "bitmap: find_last_bit()\n\nImpact: New API\n\nAs the name suggests.  For the moment everyone uses the generic one.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "d84f4f992cbd76e8f39c488cf0c5d123843923b1",
      "tree": "fc4a0349c42995715b93d0f7a3c78e9ea9b3f36e",
      "parents": [
        "745ca2475a6ac596e3d8d37c2759c0fbe2586227"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:39:23 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:39:23 2008 +1100"
      },
      "message": "CRED: Inaugurate COW credentials\n\nInaugurate copy-on-write credentials management.  This uses RCU to manage the\ncredentials pointer in the task_struct with respect to accesses by other tasks.\nA process may only modify its own credentials, and so does not need locking to\naccess or modify its own credentials.\n\nA mutex (cred_replace_mutex) is added to the task_struct to control the effect\nof PTRACE_ATTACHED on credential calculations, particularly with respect to\nexecve().\n\nWith this patch, the contents of an active credentials struct may not be\nchanged directly; rather a new set of credentials must be prepared, modified\nand committed using something like the following sequence of events:\n\n\tstruct cred *new \u003d prepare_creds();\n\tint ret \u003d blah(new);\n\tif (ret \u003c 0) {\n\t\tabort_creds(new);\n\t\treturn ret;\n\t}\n\treturn commit_creds(new);\n\nThere are some exceptions to this rule: the keyrings pointed to by the active\ncredentials may be instantiated - keyrings violate the COW rule as managing\nCOW keyrings is tricky, given that it is possible for a task to directly alter\nthe keys in a keyring in use by another task.\n\nTo help enforce this, various pointers to sets of credentials, such as those in\nthe task_struct, are declared const.  The purpose of this is compile-time\ndiscouragement of altering credentials through those pointers.  Once a set of\ncredentials has been made public through one of these pointers, it may not be\nmodified, except under special circumstances:\n\n  (1) Its reference count may incremented and decremented.\n\n  (2) The keyrings to which it points may be modified, but not replaced.\n\nThe only safe way to modify anything else is to create a replacement and commit\nusing the functions described in Documentation/credentials.txt (which will be\nadded by a later patch).\n\nThis patch and the preceding patches have been tested with the LTP SELinux\ntestsuite.\n\nThis patch makes several logical sets of alteration:\n\n (1) execve().\n\n     This now prepares and commits credentials in various places in the\n     security code rather than altering the current creds directly.\n\n (2) Temporary credential overrides.\n\n     do_coredump() and sys_faccessat() now prepare their own credentials and\n     temporarily override the ones currently on the acting thread, whilst\n     preventing interference from other threads by holding cred_replace_mutex\n     on the thread being dumped.\n\n     This will be replaced in a future patch by something that hands down the\n     credentials directly to the functions being called, rather than altering\n     the task\u0027s objective credentials.\n\n (3) LSM interface.\n\n     A number of functions have been changed, added or removed:\n\n     (*) security_capset_check(), -\u003ecapset_check()\n     (*) security_capset_set(), -\u003ecapset_set()\n\n     \t Removed in favour of security_capset().\n\n     (*) security_capset(), -\u003ecapset()\n\n     \t New.  This is passed a pointer to the new creds, a pointer to the old\n     \t creds and the proposed capability sets.  It should fill in the new\n     \t creds or return an error.  All pointers, barring the pointer to the\n     \t new creds, are now const.\n\n     (*) security_bprm_apply_creds(), -\u003ebprm_apply_creds()\n\n     \t Changed; now returns a value, which will cause the process to be\n     \t killed if it\u0027s an error.\n\n     (*) security_task_alloc(), -\u003etask_alloc_security()\n\n     \t Removed in favour of security_prepare_creds().\n\n     (*) security_cred_free(), -\u003ecred_free()\n\n     \t New.  Free security data attached to cred-\u003esecurity.\n\n     (*) security_prepare_creds(), -\u003ecred_prepare()\n\n     \t New. Duplicate any security data attached to cred-\u003esecurity.\n\n     (*) security_commit_creds(), -\u003ecred_commit()\n\n     \t New. Apply any security effects for the upcoming installation of new\n     \t security by commit_creds().\n\n     (*) security_task_post_setuid(), -\u003etask_post_setuid()\n\n     \t Removed in favour of security_task_fix_setuid().\n\n     (*) security_task_fix_setuid(), -\u003etask_fix_setuid()\n\n     \t Fix up the proposed new credentials for setuid().  This is used by\n     \t cap_set_fix_setuid() to implicitly adjust capabilities in line with\n     \t setuid() changes.  Changes are made to the new credentials, rather\n     \t than the task itself as in security_task_post_setuid().\n\n     (*) security_task_reparent_to_init(), -\u003etask_reparent_to_init()\n\n     \t Removed.  Instead the task being reparented to init is referred\n     \t directly to init\u0027s credentials.\n\n\t NOTE!  This results in the loss of some state: SELinux\u0027s osid no\n\t longer records the sid of the thread that forked it.\n\n     (*) security_key_alloc(), -\u003ekey_alloc()\n     (*) security_key_permission(), -\u003ekey_permission()\n\n     \t Changed.  These now take cred pointers rather than task pointers to\n     \t refer to the security context.\n\n (4) sys_capset().\n\n     This has been simplified and uses less locking.  The LSM functions it\n     calls have been merged.\n\n (5) reparent_to_kthreadd().\n\n     This gives the current thread the same credentials as init by simply using\n     commit_thread() to point that way.\n\n (6) __sigqueue_alloc() and switch_uid()\n\n     __sigqueue_alloc() can\u0027t stop the target task from changing its creds\n     beneath it, so this function gets a reference to the currently applicable\n     user_struct which it then passes into the sigqueue struct it returns if\n     successful.\n\n     switch_uid() is now called from commit_creds(), and possibly should be\n     folded into that.  commit_creds() should take care of protecting\n     __sigqueue_alloc().\n\n (7) [sg]et[ug]id() and co and [sg]et_current_groups.\n\n     The set functions now all use prepare_creds(), commit_creds() and\n     abort_creds() to build and check a new set of credentials before applying\n     it.\n\n     security_task_set[ug]id() is called inside the prepared section.  This\n     guarantees that nothing else will affect the creds until we\u0027ve finished.\n\n     The calling of set_dumpable() has been moved into commit_creds().\n\n     Much of the functionality of set_user() has been moved into\n     commit_creds().\n\n     The get functions all simply access the data directly.\n\n (8) security_task_prctl() and cap_task_prctl().\n\n     security_task_prctl() has been modified to return -ENOSYS if it doesn\u0027t\n     want to handle a function, or otherwise return the return value directly\n     rather than through an argument.\n\n     Additionally, cap_task_prctl() now prepares a new set of credentials, even\n     if it doesn\u0027t end up using it.\n\n (9) Keyrings.\n\n     A number of changes have been made to the keyrings code:\n\n     (a) switch_uid_keyring(), copy_keys(), exit_keys() and suid_keys() have\n     \t all been dropped and built in to the credentials functions directly.\n     \t They may want separating out again later.\n\n     (b) key_alloc() and search_process_keyrings() now take a cred pointer\n     \t rather than a task pointer to specify the security context.\n\n     (c) copy_creds() gives a new thread within the same thread group a new\n     \t thread keyring if its parent had one, otherwise it discards the thread\n     \t keyring.\n\n     (d) The authorisation key now points directly to the credentials to extend\n     \t the search into rather pointing to the task that carries them.\n\n     (e) Installing thread, process or session keyrings causes a new set of\n     \t credentials to be created, even though it\u0027s not strictly necessary for\n     \t process or session keyrings (they\u0027re shared).\n\n(10) Usermode helper.\n\n     The usermode helper code now carries a cred struct pointer in its\n     subprocess_info struct instead of a new session keyring pointer.  This set\n     of credentials is derived from init_cred and installed on the new process\n     after it has been cloned.\n\n     call_usermodehelper_setup() allocates the new credentials and\n     call_usermodehelper_freeinfo() discards them if they haven\u0027t been used.  A\n     special cred function (prepare_usermodeinfo_creds()) is provided\n     specifically for call_usermodehelper_setup() to call.\n\n     call_usermodehelper_setkeys() adjusts the credentials to sport the\n     supplied keyring as the new session keyring.\n\n(11) SELinux.\n\n     SELinux has a number of changes, in addition to those to support the LSM\n     interface changes mentioned above:\n\n     (a) selinux_setprocattr() no longer does its check for whether the\n     \t current ptracer can access processes with the new SID inside the lock\n     \t that covers getting the ptracer\u0027s SID.  Whilst this lock ensures that\n     \t the check is done with the ptracer pinned, the result is only valid\n     \t until the lock is released, so there\u0027s no point doing it inside the\n     \t lock.\n\n(12) is_single_threaded().\n\n     This function has been extracted from selinux_setprocattr() and put into\n     a file of its own in the lib/ directory as join_session_keyring() now\n     wants to use it too.\n\n     The code in SELinux just checked to see whether a task shared mm_structs\n     with other tasks (CLONE_VM), but that isn\u0027t good enough.  We really want\n     to know if they\u0027re part of the same thread group (CLONE_THREAD).\n\n(13) nfsd.\n\n     The NFS server daemon now has to use the COW credentials to set the\n     credentials it is going to use.  It really needs to pass the credentials\n     down to the functions it calls, but it can\u0027t do that until other patches\n     in this series have been applied.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "606576ce816603d9fe1fb453a88bc6eea16ca709",
      "tree": "7c6844ff4d75f249df49e9e5fe97062d301c3a1f",
      "parents": [
        "c2db8054c1eaf99983d8deee347876b01c26c2cf"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 06 19:06:12 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 20 18:27:03 2008 +0200"
      },
      "message": "ftrace: rename FTRACE to FUNCTION_TRACER\n\nDue to confusion between the ftrace infrastructure and the gcc profiling\ntracer \"ftrace\", this patch renames the config options from FTRACE to\nFUNCTION_TRACER.  The other two names that are offspring from FTRACE\nDYNAMIC_FTRACE and FTRACE_MCOUNT_RECORD will stay the same.\n\nThis patch was generated mostly by script, and partially by hand.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "346e15beb5343c2eb8216d820f2ed8f150822b08",
      "tree": "6433cf2980bbfbed4a9482c5edb156fc8371e071",
      "parents": [
        "33376c1c043c05077b4ac79c33804266f6c45e49"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Tue Aug 12 16:46:19 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Oct 16 09:24:47 2008 -0700"
      },
      "message": "driver core: basic infrastructure for per-module dynamic debug messages\n\nBase infrastructure to enable per-module debug messages.\n\nI\u0027ve introduced CONFIG_DYNAMIC_PRINTK_DEBUG, which when enabled centralizes\ncontrol of debugging statements on a per-module basis in one /proc file,\ncurrently, \u003cdebugfs\u003e/dynamic_printk/modules. When, CONFIG_DYNAMIC_PRINTK_DEBUG,\nis not set, debugging statements can still be enabled as before, often by\ndefining \u0027DEBUG\u0027 for the proper compilation unit. Thus, this patch set has no\naffect when CONFIG_DYNAMIC_PRINTK_DEBUG is not set.\n\nThe infrastructure currently ties into all pr_debug() and dev_dbg() calls. That\nis, if CONFIG_DYNAMIC_PRINTK_DEBUG is set, all pr_debug() and dev_dbg() calls\ncan be dynamically enabled/disabled on a per-module basis.\n\nFuture plans include extending this functionality to subsystems, that define \ntheir own debug levels and flags.\n\nUsage:\n\nDynamic debugging is controlled by the debugfs file, \n\u003cdebugfs\u003e/dynamic_printk/modules. This file contains a list of the modules that\ncan be enabled. The format of the file is as follows:\n\n\t\u003cmodule_name\u003e \u003cenabled\u003d0/1\u003e\n\t\t.\n\t\t.\n\t\t.\n\n\t\u003cmodule_name\u003e : Name of the module in which the debug call resides\n\t\u003cenabled\u003d0/1\u003e : whether the messages are enabled or not\n\nFor example:\n\n\tsnd_hda_intel enabled\u003d0\n\tfixup enabled\u003d1\n\tdriver enabled\u003d0\n\nEnable a module:\n\n\t$echo \"set enabled\u003d1 \u003cmodule_name\u003e\" \u003e dynamic_printk/modules\n\nDisable a module:\n\n\t$echo \"set enabled\u003d0 \u003cmodule_name\u003e\" \u003e dynamic_printk/modules\n\nEnable all modules:\n\n\t$echo \"set enabled\u003d1 all\" \u003e dynamic_printk/modules\n\nDisable all modules:\n\n\t$echo \"set enabled\u003d0 all\" \u003e dynamic_printk/modules\n\nFinally, passing \"dynamic_printk\" at the command line enables\ndebugging for all modules. This mode can be turned off via the above\ndisable command.\n\n[gkh: minor cleanups and tweaks to make the build work quietly]\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "3c9f3681d0b4af09c1cbf04f92fdfb72bd81ad7b",
      "tree": "64afe14ce916e5202d1c92b776883d2039b092eb",
      "parents": [
        "114f1ea408944f9515e45aa7452238fb15a1fa00"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Aug 31 10:13:54 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Oct 03 11:46:14 2008 -0500"
      },
      "message": "[SCSI] lib: add generic helper to print sizes rounded to the correct SI range\n\nThis patch adds the ability to print sizes in either units of 10^3 (SI)\nor 2^10 (Binary) units.  It rounds up to three significant figures and\ncan be used for either memory or storage capacities.\n\nOh, and I\u0027m fully aware that 64 bits is only 16EiB ... the Zetta and\nYotta units are added for future proofing against the day we have 128\nbit computers ...\n\n[fujita.tomonori@lab.ntt.co.jp: fix missed unsigned long long cast]\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "454c63b02e530f10b4345343f63596dd705888d0",
      "tree": "de7a2aa6e7cd0ce9ab5da615b393c1074e7fe88e",
      "parents": [
        "2c97b7fc0d8c8661981beb9517da342ced3b3bc7"
      ],
      "author": {
        "name": "Johannes Weiner",
        "email": "hannes@saeurebad.de",
        "time": "Fri Jul 25 19:46:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:10 2008 -0700"
      },
      "message": "lib: generic show_mem()\n\nThis implements a platform-independent version of show_mem().\n\nSigned-off-by: Johannes Weiner \u003channes@saeurebad.de\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Bryan Wu \u003ccooloney@kernel.org\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\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": "d3de851a445123f24ad8ece18662014b5e8a8b4e",
      "tree": "44ef8b43208ba8a071fcd4d4b22e76c55881836d",
      "parents": [
        "53e84b672c1a8190af2b376c35c7a39cf1214f59"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Wed Jul 23 21:30:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:33 2008 -0700"
      },
      "message": "rtc: BCD codeshrink\n\nThis updates \u003clinux/bcd.h\u003e to define the key routines as constant\nfunctions, which the macros will then call.  Newer code can now call\nbcd2bin() instead of SCREAMING BCD2BIN() TO THE FOUR WINDS.\n\nThis lets each driver shrink their codespace by using N function calls to\na single (global) copy of those routines, instead of N inlined copies of\nthese functions per driver.\n\nThese routines aren\u0027t used in speed-critical code.  Almost all callers are\nin the RTC framework.  Typical per-driver savings is near 300 bytes.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2464a609ded094204a3aed24823745ec58e3c879",
      "tree": "54080daf81746787dbd11160752e04b9652b8728",
      "parents": [
        "c349e0a01c3e0f70913db6a5bb61ab204e0602de"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:40:48 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:40:48 2008 +0200"
      },
      "message": "ftrace: do not trace library functions\n\nmake function tracing more robust: do not trace library functions.\n\nWe\u0027ve already got a sizable list of exceptions:\n\n ifdef CONFIG_FTRACE\n # Do not profile string.o, since it may be used in early boot or vdso\n CFLAGS_REMOVE_string.o \u003d -pg\n # Also do not profile any debug utilities\n CFLAGS_REMOVE_spinlock_debug.o \u003d -pg\n CFLAGS_REMOVE_list_debug.o \u003d -pg\n CFLAGS_REMOVE_debugobjects.o \u003d -pg\n CFLAGS_REMOVE_find_next_bit.o \u003d -pg\n CFLAGS_REMOVE_cpumask.o \u003d -pg\n CFLAGS_REMOVE_bitmap.o \u003d -pg\n endif\n\n... and the pattern has been that random library functionality showed\nup in ftrace\u0027s critical path (outside of its recursion check), causing\nhard to debug lockups.\n\nSo be a bit defensive about it and exclude all lib/*.o functions by\ndefault. It\u0027s not that they are overly interesting for tracing purposes\nanyway. Specific ones can still be traced, in an opt-in manner.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9fa111372a54f695f65e0de2f2a2108fe6cf3584",
      "tree": "b8babd78dcbd07346a8964f2f905235381121131",
      "parents": [
        "8e9509c827a28e2f365c203c04224f9e9dd1b63a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:38:17 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:38:17 2008 +0200"
      },
      "message": "ftrace: fix lockup with MAXSMP\n\nMAXSMP brings in lots of use of various bitops in smp_processor_id()\nand friends - causing ftrace to lock up during bootup:\n\n  calling  anon_inode_init+0x0/0x130\n  initcall anon_inode_init+0x0/0x130 returned 0 after 0 msecs\n  calling  acpi_event_init+0x0/0x57\n  [ hard hang ]\n\nSo exclude the bitops facilities from tracing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "89a93f2f4834f8c126e8d9dd6b368d0b9e21ec3d",
      "tree": "e731456fec0cab1225ad3e806dc8d3efefa0a78b",
      "parents": [
        "260eddf4391f162a69d1d163729249635fa7a78f",
        "fe9233fb6914a0eb20166c967e3020f7f0fba2c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 18:58:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 18:58:04 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (102 commits)\n  [SCSI] scsi_dh: fix kconfig related build errors\n  [SCSI] sym53c8xx: Fix bogus sym_que_entry re-implementation of container_of\n  [SCSI] scsi_cmnd.h: remove double inclusion of linux/blkdev.h\n  [SCSI] make struct scsi_{host,target}_type static\n  [SCSI] fix locking in host use of blk_plug_device()\n  [SCSI] zfcp: Cleanup external header file\n  [SCSI] zfcp: Cleanup code in zfcp_erp.c\n  [SCSI] zfcp: zfcp_fsf cleanup.\n  [SCSI] zfcp: consolidate sysfs things into one file.\n  [SCSI] zfcp: Cleanup of code in zfcp_aux.c\n  [SCSI] zfcp: Cleanup of code in zfcp_scsi.c\n  [SCSI] zfcp: Move status accessors from zfcp to SCSI include file.\n  [SCSI] zfcp: Small QDIO cleanups\n  [SCSI] zfcp: Adapter reopen for large number of unsolicited status\n  [SCSI] zfcp: Fix error checking for ELS ADISC requests\n  [SCSI] zfcp: wait until adapter is finished with ERP during auto-port\n  [SCSI] ibmvfc: IBM Power Virtual Fibre Channel Adapter Client Driver\n  [SCSI] sg: Add target reset support\n  [SCSI] lib: Add support for the T10 (SCSI) Data Integrity Field CRC\n  [SCSI] sd: Move scsi_disk() accessor function to sd.h\n  ...\n"
    },
    {
      "commit": "f11f594edba7f689af9792a5673ed59d660ad371",
      "tree": "4fae88f3893ce57f2f85280d16330fc61a943d44",
      "parents": [
        "5b635da11e3a6387172abd651d26d8ef54b1fbc7"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Wed Jun 25 11:22:42 2008 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 12 08:22:32 2008 -0500"
      },
      "message": "[SCSI] lib: Add support for the T10 (SCSI) Data Integrity Field CRC\n\nThe SCSI Block Protocol uses this 16-bit CRC to verify the integrity\nof each data sector.  crc_t10dif() is used by sd_dif.c when performing\nI/O to or from disks formatted with protection information.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "654e4787689faffdd2137fe91f59fd3ef3363ad2",
      "tree": "480028277bd301d9ea65c8eb43e5381a68c3cd5d",
      "parents": [
        "6ec562328fda585be2d7f472cfac99d3b44d362a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 14 21:30:31 2008 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 22:46:23 2008 +0200"
      },
      "message": "ftrace: use the new kbuild CFLAGS_REMOVE for lib directory\n\nThis patch removes the Makefile turd and uses the nice CFLAGS_REMOVE macro\nin the lib directory.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "9d0a420b737f72d84fabebf29634d800cbf54538",
      "tree": "6e484bfff9842782e8438b4ff8587950177a8482",
      "parents": [
        "92205c2343527a863d660360599a4bf8cede77b0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon May 12 21:20:55 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 21:14:28 2008 +0200"
      },
      "message": "ftrace: remove function tracing from spinlock debug\n\nThe debug functions in spin_lock debugging pollute the output of the\nfunction tracer. This patch adds the debug files in the lib director\nto those that should not be compiled with mcount tracing.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3594136ad67a54d77bcb2547e70011754a2f91d5",
      "tree": "6e0cd72b5679254f4e9ab4959987f8cd96c07b0f",
      "parents": [
        "caf8cdebfb6c1cff50ea8077f1a07c2333d6d1fd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 12 21:20:50 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 20:56:43 2008 +0200"
      },
      "message": "ftrace: do not profile lib/string.o\n\nMost archs define the string and memory compare functions in assembly.\nSome do not. But these functions may be used in some archs at early\nboot up.\n\nSince most archs define this code in assembly and they are not usually\ntraced, there\u0027s no need to trace them when they are not defined in\nassembly.\n\nThis patch removes the -pg from the CFLAGS for lib/string.o.\nThis prevents the string functions use in either vdso or early bootup\nfrom crashing the system.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3ac7fe5a4aab409bd5674d0b070bce97f9d20872",
      "tree": "5e12e8864bb8737695e4eb9c63970602d5f69e73",
      "parents": [
        "30327acf7846c5eb97c8e31c78317a2918d3e515"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 30 00:55:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:53 2008 -0700"
      },
      "message": "infrastructure to debug (dynamic) objects\n\nWe can see an ever repeating problem pattern with objects of any kind in the\nkernel:\n\n1) freeing of active objects\n2) reinitialization of active objects\n\nBoth problems can be hard to debug because the crash happens at a point where\nwe have no chance to decode the root cause anymore.  One problem spot are\nkernel timers, where the detection of the problem often happens in interrupt\ncontext and usually causes the machine to panic.\n\nWhile working on a timer related bug report I had to hack specialized code\ninto the timer subsystem to get a reasonable hint for the root cause.  This\ndebug hack was fine for temporary use, but far from a mergeable solution due\nto the intrusiveness into the timer code.\n\nThe code further lacked the ability to detect and report the root cause\ninstantly and keep the system operational.\n\nKeeping the system operational is important to get hold of the debug\ninformation without special debugging aids like serial consoles and special\nknowledge of the bug reporter.\n\nThe problems described above are not restricted to timers, but timers tend to\nexpose it usually in a full system crash.  Other objects are less explosive,\nbut the symptoms caused by such mistakes can be even harder to debug.\n\nInstead of creating specialized debugging code for the timer subsystem a\ngeneric infrastructure is created which allows developers to verify their code\nand provides an easy to enable debug facility for users in case of trouble.\n\nThe debugobjects core code keeps track of operations on static and dynamic\nobjects by inserting them into a hashed list and sanity checking them on\nobject operations and provides additional checks whenever kernel memory is\nfreed.\n\nThe tracked object operations are:\n- initializing an object\n- adding an object to a subsystem list\n- deleting an object from a subsystem list\n\nEach operation is sanity checked before the operation is executed and the\nsubsystem specific code can provide a fixup function which allows to prevent\nthe damage of the operation.  When the sanity check triggers a warning message\nand a stack trace is printed.\n\nThe list of operations can be extended if the need arises.  For now it\u0027s\nlimited to the requirements of the first user (timers).\n\nThe core code enqueues the objects into hash buckets.  The hash index is\ngenerated from the address of the object to simplify the lookup for the check\non kfree/vfree.  Each bucket has it\u0027s own spinlock to avoid contention on a\nglobal lock.\n\nThe debug code can be compiled in without being active.  The runtime overhead\nis minimal and could be optimized by asm alternatives.  A kernel command line\noption enables the debugging code.\n\nThanks to Ingo Molnar for review, suggestions and cleanup patches.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5f97a5a8799b8d7d0afdb9d68a50a4e0e8298a05",
      "tree": "03f0a35e50e9a765603fc9249e601b52e043fd0d",
      "parents": [
        "762873c251b056c6c1b29e83a4dabafb064e5421"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Tue Apr 29 00:59:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:06 2008 -0700"
      },
      "message": "isolate ratelimit from printk.c for other use\n\nDue to the rcupreempt.h WARN_ON trigged, I got 2G syslog file.  For some\nserious complaining of kernel, we need repeat the warnings, so here I isolate\nthe ratelimit part of printk.c to a standalone file.\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nTested-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "77b9bd9c49442407804c37bcc82021a35277f83c",
      "tree": "251900d95c6c9c5371542d5dda7d89cb31cd0801",
      "parents": [
        "d57594c203b1e7b54373080a797f0cbfa4aade68"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Tue Apr 01 11:46:19 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:16 2008 +0200"
      },
      "message": "x86: generic versions of find_first_(zero_)bit, convert i386\n\nGeneric versions of __find_first_bit and __find_first_zero_bit\nare introduced as simplified versions of __find_next_bit and\n__find_next_zero_bit. Their compilation and use are guarded by\na new config variable GENERIC_FIND_FIRST_BIT.\n\nThe generic versions of find_first_bit and find_first_zero_bit\nare implemented in terms of the newly introduced __find_first_bit\nand __find_first_zero_bit.\n\nThis patch does not remove the i386-specific implementation,\nbut it does switch i386 to use the generic functions by setting\nGENERIC_FIND_FIRST_BIT\u003dy for X86_32.\n\nSigned-off-by: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9a64388d83f6ef08dfff405a9d122e3dbcb6bf38",
      "tree": "a77532ce4d6d56be6c6c7f405cd901a0184250fb",
      "parents": [
        "e80ab411e589e00550e2e6e5a6a02d59cc730357",
        "14b3ca4022f050f8622ed282b734ddf445464583"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:50:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:50:49 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (202 commits)\n  [POWERPC] Fix compile breakage for 64-bit UP configs\n  [POWERPC] Define copy_siginfo_from_user32\n  [POWERPC] Add compat handler for PTRACE_GETSIGINFO\n  [POWERPC] i2c: Fix build breakage introduced by OF helpers\n  [POWERPC] Optimize fls64() on 64-bit processors\n  [POWERPC] irqtrace support for 64-bit powerpc\n  [POWERPC] Stacktrace support for lockdep\n  [POWERPC] Move stackframe definitions to common header\n  [POWERPC] Fix device-tree locking vs. interrupts\n  [POWERPC] Make pci_bus_to_host()\u0027s struct pci_bus * argument const\n  [POWERPC] Remove unused __max_memory variable\n  [POWERPC] Simplify xics direct/lpar irq_host setup\n  [POWERPC] Use pseries_setup_i8259_cascade() in pseries_mpic_init_IRQ()\n  [POWERPC] Turn xics_setup_8259_cascade() into a generic pseries_setup_i8259_cascade()\n  [POWERPC] Move xics_setup_8259_cascade() into platforms/pseries/setup.c\n  [POWERPC] Use asm-generic/bitops/find.h in bitops.h\n  [POWERPC] 83xx: mpc8315 - fix USB UTMI Host setup\n  [POWERPC] 85xx: Fix the size of qe muram for MPC8568E\n  [POWERPC] 86xx: mpc86xx_hpcn - Temporarily accept old dts node identifier.\n  [POWERPC] 86xx: mark functions static, other minor cleanups\n  ...\n"
    },
    {
      "commit": "334d094504c2fe1c44211ecb49146ae6bca8c321",
      "tree": "d3c0f68e4b9f8e3d2ccc39e7dfe5de0534a5fad9",
      "parents": [
        "d1a4be630fb068f251d64b62919f143c49ca8057",
        "d1643d24c61b725bef399cc1cf2944b4c9c23177"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 18:02:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 18:02:35 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.26\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.26: (1090 commits)\n  [NET]: Fix and allocate less memory for -\u003epriv\u0027less netdevices\n  [IPV6]: Fix dangling references on error in fib6_add().\n  [NETLABEL]: Fix NULL deref in netlbl_unlabel_staticlist_gen() if ifindex not found\n  [PKT_SCHED]: Fix datalen check in tcf_simp_init().\n  [INET]: Uninline the __inet_inherit_port call.\n  [INET]: Drop the inet_inherit_port() call.\n  SCTP: Initialize partial_bytes_acked to 0, when all of the data is acked.\n  [netdrvr] forcedeth: internal simplifications; changelog removal\n  phylib: factor out get_phy_id from within get_phy_device\n  PHY: add BCM5464 support to broadcom PHY driver\n  cxgb3: Fix __must_check warning with dev_dbg.\n  tc35815: Statistics cleanup\n  natsemi: fix MMIO for PPC 44x platforms\n  [TIPC]: Cleanup of TIPC reference table code\n  [TIPC]: Optimized initialization of TIPC reference table\n  [TIPC]: Remove inlining of reference table locking routines\n  e1000: convert uint16_t style integers to u16\n  ixgb: convert uint16_t style integers to u16\n  sb1000.c: make const arrays static\n  sb1000.c: stop inlining largish static functions\n  ...\n"
    },
    {
      "commit": "64ac24e738823161693bf791f87adc802cf529ff",
      "tree": "19c0b0cf314d4394ca580c05b86cdf874ce0a167",
      "parents": [
        "e48b3deee475134585eed03e7afebe4bf9e0dba9"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Fri Mar 07 21:55:58 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Apr 17 10:42:34 2008 -0400"
      },
      "message": "Generic semaphore implementation\n\nSemaphores are no longer performance-critical, so a generic C\nimplementation is better for maintainability, debuggability and\nextensibility.  Thanks to Peter Zijlstra for fixing the lockdep\nwarning.  Thanks to Harvey Harrison for pointing out that the\nunlikely() was unnecessary.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "095d911201b0741e7f326d269a005dba55985acf",
      "tree": "7bb8001d8230214e790d1705b11c8f8afa6cc65e",
      "parents": [
        "bdcde3d71a67e97f25e851f3ca97c9bb5ef03e7f"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Mar 28 16:39:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 28 16:39:58 2008 -0700"
      },
      "message": "[LIB]: Drop the pcounter itself.\n\nThe knock-out. The pcounter abstraction is not used any longer in the\nkernel.\n\nNot sure whether this should go via netdev tree, but as far as I\nremember it was added via this one, and besides Eric thinks that\nAndrew shouldn\u0027t mind this.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d9b2b2a277219d4812311d995054ce4f95067725",
      "tree": "63af21df6686dd2e867015fdf9f0cb798d3ca348",
      "parents": [
        "e760e716d47b48caf98da348368fd41b4a9b9e7e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 13 16:56:49 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 13 16:56:49 2008 -0800"
      },
      "message": "[LIB]: Make PowerPC LMB code generic so sparc64 can use it too.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "4600ecfcf3ad160ac0c6fcff6115f6edb081ccfa",
      "tree": "2a145a6eadfdef4c627fab12ccbf17678a03e887",
      "parents": [
        "3a984a85050e320993f87ba47a22973f32853206"
      ],
      "author": {
        "name": "Guennadi Liakhovetski",
        "email": "g.liakhovetski@pengutronix.de",
        "time": "Fri Feb 08 15:00:47 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 15:33:33 2008 -0800"
      },
      "message": "lib/scatterlist.o needed by a module only - link it in unconditionally\n\nlib/scatterlist.c is needed by drivers/media/video/videobuf-dma-sg.c, and\nwe would like to be able to use the latter without PCI too, for example, on\nPXA270 ARM CPU.  It is then possible to create a configuration with\nCONFIG_BLOCK\u003dn, where only module code will need scatterlist.c.  Therefore\nit must be in obj-y.\n\nSigned-off-by: Guennadi Liakhovetski \u003cg.liakhovetski@pengutronix.de\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0291df8cc9dac09c303d21d5bcd2ad73762c836a",
      "tree": "5a79187b309cc1a2115a94bc7927c85dd3c67ac9",
      "parents": [
        "0c95fdc59640824d7e0b017be295fb912ceef4ab"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Mon Feb 04 22:28:07 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:11 2008 -0800"
      },
      "message": "iommu sg: add IOMMU helper functions for the free area management\n\nThis adds IOMMU helper functions for the free area management.  These\nfunctions take care of LLD\u0027s segment boundary limit for IOMMUs.  They would be\nuseful for IOMMUs that use bitmap for the free area management.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de4d1db369785c29d68915edfee0cb70e8199f4c",
      "tree": "78979fc131145d4b2df3cd4721a811784126f05c",
      "parents": [
        "0c884439dbd7c895cce61c4974c8868b0f6cd4a1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Nov 21 22:02:58 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:39 2008 -0800"
      },
      "message": "[LIB]: Introduce struct pcounter\n\nThis just generalises what was introduced by Eric Dumazet for the struct proto\ninuse field in 286ab3d46058840d68e5d7d52e316c1f7e98c59f:\n\n    [NET]: Define infrastructure to keep \u0027inuse\u0027 changes in an efficent SMP/NUMA way.\n\nPlease look at the comment in there to see the rationale.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0db9299f48ebd4a860d6ad4e1d36ac50671d48e7",
      "tree": "37ae5e75f26969b53548a1ea7c69284e6b269bc9",
      "parents": [
        "91525300baf162e83e923b09ca286f9205e21522"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Nov 30 09:16:50 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:05:27 2008 +0100"
      },
      "message": "SG: Move functions to lib/scatterlist.c and add sg chaining allocator helpers\n\nManually doing chained sg lists is not trivial, so add some helpers\nto make sure that drivers get it right.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5a6dca7c15623626943786977aca738520ea5ba3",
      "tree": "0428275d129d5ba879691161c507a48b03406382",
      "parents": [
        "ddd73611b7bddbc0a9079f27a1471f635100aaab"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Wed Nov 14 16:58:41 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Nov 14 18:45:37 2007 -0800"
      },
      "message": "lib: move bitmap.o from lib-y to obj-y.\n\nmac80211 has a reference to __bitmap_empty() via bitmap_empty().  In\nlib/bitmap.c this is flagged with an EXPORT_SYMBOL(), but this is\nultimately ineffective due to bitmap.o being linked in lib-y, resulting in:\n\nERROR: \"__bitmap_empty\" [net/mac80211/mac80211.ko] undefined!\n\nMoving bitmap.o to obj-y fixes this up.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8707d8b8c0cbdf4441507f8dded194167da896c7",
      "tree": "1e9ac6b15027bd55263378e551c1595a937d66d6",
      "parents": [
        "020958b6272882c1a8bfbe5f3e0927f3845c2698"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:40:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:41 2007 -0700"
      },
      "message": "Fix cpusets update_cpumask\n\nCause writes to cpuset \"cpus\" file to update cpus_allowed for member tasks:\n\n- collect batches of tasks under tasklist_lock and then call\n  set_cpus_allowed() on them outside the lock (since this can sleep).\n\n- add a simple generic priority heap type to allow efficient collection\n  of batches of tasks to be processed without duplicating or missing any\n  tasks in subsequent batches.\n\n- make \"cpus\" file update a no-op if the mask hasn\u0027t changed\n\n- fix race between update_cpumask() and sched_setaffinity() by making\n  sched_setaffinity() post-check that it\u0027s not running on any cpus outside\n  cpuset_cpus_allowed().\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "145ca25eb2fbd20d4faf1bad4628c7650332058f",
      "tree": "ee5bebd5b7b1f0ced5e30c8f29f1ff5301aa9d0a",
      "parents": [
        "69cb51d18c1ed593009d9a620cac49d0dcf15dc8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "lib: floating proportions\n\nGiven a set of objects, floating proportions aims to efficiently give the\nproportional \u0027activity\u0027 of a single item as compared to the whole set. Where\n\u0027activity\u0027 is a measure of a temporal property of the items.\n\nIt is efficient in that it need not inspect any other items of the set\nin order to provide the answer. It is not even needed to know how many\nother items there are.\n\nIt has one parameter, and that is the period of \u0027time\u0027 over which the\n\u0027activity\u0027 is measured.\n\nSigned-off-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": "5c5daf657cb5f963a38413f2852279d7a3843144",
      "tree": "ec314c25ca40528bd4625944a93846d1654c9cd9",
      "parents": [
        "07c015e7654821f2dda00dcf152c65b2afd46ac3"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Sun Aug 12 20:43:55 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 12 14:51:06 2007 -0700"
      },
      "message": "Driver core: exclude kobject_uevent.c for !CONFIG_HOTPLUG\n\nMove uevent specific logic from the core into kobject_uevent.c, which\ndoes no longer require to link the unused string array if hotplug\nis not compiled in.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7a5c5d5735e785a700a377a5fce913b8ad45a58f",
      "tree": "ff138cfc90e67b1958e3806efc91211d9d309577",
      "parents": [
        "a560aa48eed66fdf78f2a2813ab7b4ca766a84ce"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Sun Oct 07 00:24:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:28:43 2007 -0700"
      },
      "message": "Move kasprintf.o to obj-y\n\nModulat lguest started giving linking errors\n\nMODPOST 1 modules\nERROR: \"kasprintf\" [drivers/lguest/lg.ko] undefined!\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "928923c76b393e38e5ba1d47e843e208ceef6cf9",
      "tree": "8dde0229b76b7414cea18eb7bd700ca3cc990ee6",
      "parents": [
        "2301060e2b19aa4830060524ef66abdf32b26a26"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Wed Aug 22 14:01:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Aug 22 19:52:45 2007 -0700"
      },
      "message": "Introduce CONFIG_CHECK_SIGNATURE\n\nIntroduce CONFIG_CHECK_SIGNATURE to control inclusion of check_signature()\nand avoid problems on platforms that don\u0027t have readb().\n\nLet the few legacy (ISA || PCI || X86) drivers that need check_signature()\nselect CONFIG_CHECK_SIGNATURE.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "96e3e18eed3b48f6d4377dee0326a106e8a04569",
      "tree": "d6e4d66ec415ffc934930f32ed62cebe403e9a29",
      "parents": [
        "9965a5d5a5aab575f995ba58dc80285aa0f6ecbf"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Tue Jul 31 00:38:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 31 15:39:39 2007 -0700"
      },
      "message": "lib: move kasprintf to a separate file\n\nkasprintf pulls in kmalloc which proved to be fatal for at least\nbootimage target on alpha.\nMove it to a separate file so only users of kasprintf are exposed\nto the dependency on kmalloc.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Meelis Roos \u003cmroos@linux.ee\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Jay Estabrook \u003cjay.estabrook@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d84d1cc7647c7e4f77d517e2d87b4a106a0420d9",
      "tree": "b6ccc40d323998d4ad013c7b05613bc727a8f4e0",
      "parents": [
        "1e66df3ee301209f4a38df097d7cc5cb9b367a3f"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:02 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:40 2007 -0700"
      },
      "message": "add argv_split()\n\nargv_split() is a helper function which takes a string, splits it at\nwhitespace, and returns a NULL-terminated argv vector.  This is\ndeliberately simple - it does no quote processing of any kind.\n\n[ Seems to me that this is something which is already being done in\n  the kernel, but I couldn\u0027t find any other implementations, either to\n  steal or replace.  Keep an eye out. ]\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\n"
    },
    {
      "commit": "ad241528c4919505afccb022acbab3eeb0db4d80",
      "tree": "ec3a2a65707ca032eab973f98aa568ed007389f1",
      "parents": [
        "c06e677aed0c86480b01faa894967daa8aa3568a"
      ],
      "author": {
        "name": "Jan Nikitenko",
        "email": "jan.nikitenko@gmail.com",
        "time": "Tue Jul 17 04:04:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:04 2007 -0700"
      },
      "message": "CRC7 support\n\nAdd CRC7 routines, used for example in MMC over SPI communication.\nKerneldoc updates\n\n[akpm@linux-foundation.org: fix funny mix of const and non-const]\nSigned-off-by: Jan Nikitenko \u003cjan.nikitenko@gmail.com\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: \"Randy.Dunlap\" \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a54890d7a6f37a4658294cbce650af4d1fabb8c9",
      "tree": "75ae8e2c7c3d9fc7e2a25e97256b9f1730aa1d8f",
      "parents": [
        "2e27afb300b56d83bb03fbfa68852b9c1e2920c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 16:50:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 16:50:01 2007 -0700"
      },
      "message": "Make check_signature depend on CONFIG_HAS_IOMEM\n\nThis should avoid build problems on architectures without a \"readb()\",\nthat got bitten by check_signature() being uninlined.\n\nNoted by Heiko Carstens.\n\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc2ea416b2aa04d0c34ff2281a23dae5b76b7b3b",
      "tree": "15dd3cebcb85e21ef744f184ab33c163d8ffdacc",
      "parents": [
        "4e7bd66318b3ae60fbba7d886d9a98b71ffbf74e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Sun Jul 15 23:41:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:50 2007 -0700"
      },
      "message": "uninline check_signature()\n\nThis is a rather bizarre thing to have inlined in io.h.  Stick it in lib/\ninstead.\n\nWhile we\u0027re there, despaghetti it a bit, and fix its off-by-one behaviour when\npassed a zero length.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64c70b1cf43de158282bc1675918d503e5b15cc1",
      "tree": "e7797ee372de94bb9129300e55d23034a7d05f9a",
      "parents": [
        "4c75f7416f51b0c6855952467a5db04f9c598f09"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@openedhand.com",
        "time": "Tue Jul 10 17:22:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 10 17:51:13 2007 -0700"
      },
      "message": "Add LZO1X algorithm to the kernel\n\nThis is a hybrid version of the patch to add the LZO1X compression\nalgorithm to the kernel.  Nitin and myself have merged the best parts of\nthe various patches to form this version which we\u0027re both happy with (and\nare jointly signing off).\n\nThe performance of this version is equivalent to the original minilzo code\nit was based on.  Bytecode comparisons have also been made on ARM, i386 and\nx86_64 with favourable results.\n\nThere are several users of LZO lined up including jffs2, crypto and reiser4\nsince its much faster than zlib.\n\nSigned-off-by: Nitin Gupta \u003cnitingupta910@gmail.com\u003e\nSigned-off-by: Richard Purdie \u003crpurdie@openedhand.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99eaf3c45fe806c4a7f39b9be4a1bd0dfc617699",
      "tree": "9da206b2faaae7dc3804df2adea4cbf7f117208c",
      "parents": [
        "6eaeeaba39e5fa3d52a0bb8de15e995516ae251a"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu May 10 22:22:39 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri May 11 08:29:34 2007 -0700"
      },
      "message": "lib/hexdump\n\nBased on ace_dump_mem() from Grant Likely for the Xilinx SystemACE\nCompactFlash interface.\n\nAdd print_hex_dump() \u0026 hex_dumper() to lib/hexdump.c and linux/kernel.h.\n\nThis patch adds the functions print_hex_dump() \u0026 hex_dumper().\nprint_hex_dump() can be used to perform a hex + ASCII dump of data to\nsyslog, in an easily viewable format, thus providing a common text hex dump\nformat.\n\nhex_dumper() provides a dump-to-memory function.  It converts one \"line\" of\noutput (16 bytes of input) at a time.\n\nExample usages:\n\tprint_hex_dump(KERN_DEBUG, DUMP_PREFIX_ADDRESS, frame-\u003edata, frame-\u003elen);\n\thex_dumper(frame-\u003edata, frame-\u003elen, linebuf, sizeof(linebuf));\n\nExample output using %DUMP_PREFIX_OFFSET:\n0009ab42: 40414243 44454647 48494a4b 4c4d4e4f-@ABCDEFG HIJKLMNO\nExample output using %DUMP_PREFIX_ADDRESS:\nffffffff88089af0: 70717273 74757677 78797a7b 7c7d7e7f-pqrstuvw xyz{|}~.\n\n[akpm@linux-foundation.org: cleanups, add export]\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b6a51746ffe8d619f1097675d2dc5e303470024",
      "tree": "52668d7adc6f5c1d347d65072878cf1f82670364",
      "parents": [
        "fc0b60f1dc311a2f7443ce46305edd287b2d8947",
        "d79406dd140a3e6eed6f26b17f0c6620fe30b50c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 13:29:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 13:30:08 2007 -0700"
      },
      "message": "Merge branch \u0027juju\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027juju\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: (138 commits)\n  firewire: Convert OHCI driver to use standard goto unwinding for error handling.\n  firewire: Always use parens with sizeof.\n  firewire: Drop single buffer request support.\n  firewire: Add a comment to describe why we split the sg list.\n  firewire: Return SCSI_MLQUEUE_HOST_BUSY for out of memory cases in queuecommand.\n  firewire: Handle the last few DMA mapping error cases.\n  firewire: Allocate scsi_host up front and allocate the sbp2_device as hostdata.\n  firewire: Provide module aliase for backwards compatibility.\n  firewire: Add to fw-core-y instead of assigning fw-core-objs in Makefile.\n  firewire: Break out shared IEEE1394 constant to separate header file.\n  firewire: Use linux/*.h instead of asm/*.h header files.\n  firewire: Uppercase most macro names.\n  firewire: Coding style cleanup: no spaces after function names.\n  firewire: Convert card_rwsem to a regular mutex.\n  firewire: Clean up comment style.\n  firewire: Use lib/ implementation of CRC ITU-T.\n  CRC ITU-T V.41\n  firewire: Rename fw-device-cdev.c to fw-cdev.c and move header to include/linux.\n  firewire: Future proof the iso ioctls by adding a handle for the iso context.\n  firewire: Add read/write and size annotations to IOC numbers.\n  ...\n\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e7cbae7c6dda18d427335b3ad98f1a0d40ef30c",
      "tree": "2ac604d8d6f4eb671e23c9b6a405c37b92fa8df3",
      "parents": [
        "9640d3d775aa325650c8fcdf49127542f77b2156"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "IvDoorn@gmail.com",
        "time": "Mon Jun 12 16:17:04 2006 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu May 10 18:24:13 2007 +0200"
      },
      "message": "CRC ITU-T V.41\n\nThis will add the CRC calculation according\nto the CRC ITU-T V.41 to the kernel lib/ folder.\n\nThis code has been derived from the rt2x00 driver,\ncurrently found only in the wireless-dev tree, but\nthis library is generic and could be used by more\ndrivers who currently use their own implementation.\n\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\n\nAlso useful for the new firewire stack.\n\nSigned-off-by: Kristian Hoegsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "3927f2e8f9afa3424bb51ca81f7abac01ffd0005",
      "tree": "da9e335169572e6c743c084edce6a802f9e667ee",
      "parents": [
        "9d729f72dca9406025bcfa9c1f660d71d9ef0ff5"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Sun Mar 25 19:54:23 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:23:33 2007 -0700"
      },
      "message": "[NET]: div64_64 consolidate (rev3)\n\nHere is the current version of the 64 bit divide common code.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5ea8176994003483a18c8fed580901e2125f8a83",
      "tree": "0712ec9cd3384fbd897eb454ce9c0f907289ab51",
      "parents": [
        "2835fdfa4a7f1400986d76d054237809a9392406"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Feb 11 15:41:31 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] sort the devres mess out\n\n* Split the implementation-agnostic stuff in separate files.\n* Make sure that targets using non-default request_irq() pull\n  kernel/irq/devres.o\n* Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;\n  allow architectures to turn them off (we needed these symbols anyway for\n  dependencies of quite a few drivers).\n* protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cefc8be82403cfc4325e7b9b063f77dc0f34e19e",
      "tree": "d360f54c14860550b37f86b44757ecef749db1c0",
      "parents": [
        "c530cba649692512070e8c0131ba3eccade09269"
      ],
      "author": {
        "name": "Kirill Korotaev",
        "email": "dev@sw.ru",
        "time": "Sat Feb 10 01:46:18 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:34 2007 -0800"
      },
      "message": "[PATCH] Consolidate bust_spinlocks()\n\nPart of long forgotten patch\nhttp://groups.google.com/group/fa.linux.kernel/msg/e98e941ce1cf29f6?dmode\u003dsource\nSince then, m32r grabbed two copies.\n\nLeave s390 copy because of important absence of CONFIG_VT, but remove\nreferences to non-existent timerlist_lock.  ia64 also loses timerlist_lock.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@openvz.org\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ca2997885219486cf91a369233c909fbd555bdf7",
      "tree": "8667cd7688cbcfb26b81ce1260f0b97890adfe60",
      "parents": [
        "fda0efc5977864a90f365aeeb13f2546854e2aa9"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Jan 31 22:48:06 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:37 2007 -0500"
      },
      "message": "iomap: iomap should be in obj-y not in lib-y\n\ndevres change moved iomap.o from obj-$(CONFIG_GENERIC_IOMAP) to lib-y\nmaking it not linked if no in-kernel driver uses it.  Fix it.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "9ac7849e35f705830f7b016ff272b0ff1f7ff759",
      "tree": "7f17cdff87e154937a15cc2ec8da9b4e6018ce8e",
      "parents": [
        "77a527eadb425b60db3f5f0aae6a4c51c38e35e5"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Jan 20 16:00:26 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:36 2007 -0500"
      },
      "message": "devres: device resource management\n\nImplement device resource management, in short, devres.  A device\ndriver can allocate arbirary size of devres data which is associated\nwith a release function.  On driver detach, release function is\ninvoked on the devres data, then, devres data is freed.\n\ndevreses are typed by associated release functions.  Some devreses are\nbetter represented by single instance of the type while others need\nmultiple instances sharing the same release function.  Both usages are\nsupported.\n\ndevreses can be grouped using devres group such that a device driver\ncan easily release acquired resources halfway through initialization\nor selectively release resources (e.g. resources for port 1 out of 4\nports).\n\nThis patch adds devres core including documentation and the following\nmanaged interfaces.\n\n* alloc/free\t: devm_kzalloc(), devm_kzfree()\n* IO region\t: devm_request_region(), devm_release_region()\n* IRQ\t\t: devm_request_irq(), devm_free_irq()\n* DMA\t\t: dmam_alloc_coherent(), dmam_free_coherent(),\n\t\t  dmam_declare_coherent_memory(), dmam_pool_create(),\n\t\t  dmam_pool_destroy()\n* PCI\t\t: pcim_enable_device(), pcim_pin_device(), pci_is_managed()\n* iomap\t\t: devm_ioport_map(), devm_ioport_unmap(), devm_ioremap(),\n\t\t  devm_ioremap_nocache(), devm_iounmap(), pcim_iomap_table(),\n\t\t  pcim_iomap(), pcim_iounmap()\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "ee36c2bf8edb1c3e3855a928b348d29c6359093d",
      "tree": "1f536eaa3bccfce90a919d871f819f41d7e70988",
      "parents": [
        "62fb2ba3d870305e246c6cb317609c1dc2c9dd0b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Wed Dec 13 00:35:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:52 2006 -0800"
      },
      "message": "[PATCH] uml problems with linux/io.h\n\nRemove useless includes of linux/io.h, don\u0027t even try to build iomap_copy\non uml (it doesn\u0027t have readb() et.al., so...)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6a2d7a955d8de6cb19ed9cd194b3c83008a22c32",
      "tree": "dc440341412a45a7c1f363dcaa1505fe711eadec",
      "parents": [
        "02a0e53d8227aff5e62e0433f82c12c1c2805fd6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Dec 13 00:34:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:49 2006 -0800"
      },
      "message": "[PATCH] SLAB: use a multiply instead of a divide in obj_to_index()\n\nWhen some objects are allocated by one CPU but freed by another CPU we can\nconsume lot of cycles doing divides in obj_to_index().\n\n(Typical load on a dual processor machine where network interrupts are\nhandled by one particular CPU (allocating skbufs), and the other CPU is\nrunning the application (consuming and freeing skbufs))\n\nHere on one production server (dual-core AMD Opteron 285), I noticed this\ndivide took 1.20 % of CPU_CLK_UNHALTED events in kernel.  But Opteron are\nquite modern cpus and the divide is much more expensive on oldest\narchitectures :\n\nOn a 200 MHz sparcv9 machine, the division takes 64 cycles instead of 1\ncycle for a multiply.\n\nDoing some math, we can use a reciprocal multiplication instead of a divide.\n\nIf we want to compute V \u003d (A / B)  (A and B being u32 quantities)\nwe can instead use :\n\nV \u003d ((u64)A * RECIPROCAL(B)) \u003e\u003e 32 ;\n\nwhere RECIPROCAL(B) is precalculated to ((1LL \u003c\u003c 32) + (B - 1)) / B\n\nNote :\n\nI wrote pure C code for clarity. gcc output for i386 is not optimal but\nacceptable :\n\nmull   0x14(%ebx)\nmov    %edx,%eax // part of the \u003e\u003e 32\nxor     %edx,%edx // useless\nmov    %eax,(%esp) // could be avoided\nmov    %edx,0x4(%esp) // useless\nmov    (%esp),%ebx\n\n[akpm@osdl.org: small cleanups]\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ff1cb355e628f8fc55fa2d01e269e5e1bbc2fe9",
      "tree": "393d94b6d7585e4c804d6415afaa11e1d6ec350d",
      "parents": [
        "de1ba09b214056365d9082982905b255caafb7a2"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Fri Dec 08 02:39:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:29:02 2006 -0800"
      },
      "message": "[PATCH] fault-injection capabilities infrastructure\n\nThis patch provides base functions implement to fault-injection\ncapabilities.\n\n- The function should_fail() is taken from failmalloc-1.0\n  (http://www.nongnu.org/failmalloc/)\n\n[akpm@osdl.org: cleanups, comments, add __init]\nCc: \u003cokuji@enbug.org\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Don Mullis \u003cdwm@meer.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "a5cfc1ec58a07074dacb6aa8c79eff864c966d12"
}
