)]}'
{
  "log": [
    {
      "commit": "bf4352c0fc82e6dadfa7eea506c19dea0106baac",
      "tree": "5fbc450a5bff4830cd70120419934f9e662880a9",
      "parents": [
        "64d5a70f956071f8434f403d44835a4895abb78e"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:54:08 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] Dynamic kernel command-line: avr32\n\n1. Rename saved_command_line into boot_command_line.\n2. Set command_line as __initdata.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nAcked-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64d5a70f956071f8434f403d44835a4895abb78e",
      "tree": "d409bafa2b5b576eaaa69ef74c2805ae5733b789",
      "parents": [
        "cd81899a7d9e77ffd5280b10d0413fb241b18388"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:54:07 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] Dynamic kernel command-line: arm26\n\n1. Rename saved_command_line into boot_command_line.\n2. Set command_line as __initdata.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd81899a7d9e77ffd5280b10d0413fb241b18388",
      "tree": "f9c07c100af964e5815e3934cbfa319624516b47",
      "parents": [
        "3c253ca0f0930b767a5d6ac0c1b3c6f5619e28f9"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:54:06 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] Dynamic kernel command-line: arm\n\n1. Rename saved_command_line into boot_command_line.\n2. Set command_line as __initdata.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.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": "3c253ca0f0930b767a5d6ac0c1b3c6f5619e28f9",
      "tree": "e9044d7a806172c864bbc1df268e0deb1a86b9f5",
      "parents": [
        "30d7e0d466b3ac0b5ef77e4062bf9385f0d72270"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:54:05 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] Dynamic kernel command-line: alpha\n\n1. Rename saved_command_line into boot_command_line.\n2. Set command_line as __initdata.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30d7e0d466b3ac0b5ef77e4062bf9385f0d72270",
      "tree": "cff57621e9e5b8898abb2982ec3b0b7d0e6eac88",
      "parents": [
        "ff91691bccdb741efb2df0489058a4961fa79598"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:53:52 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] Dynamic kernel command-line: common\n\nCurrent implementation stores a static command-line buffer allocated to\nCOMMAND_LINE_SIZE size.  Most architectures stores two copies of this buffer,\none for future reference and one for parameter parsing.\n\nCurrent kernel command-line size for most architecture is much too small for\nmodule parameters, video settings, initramfs paramters and much more.  The\nproblem is that setting COMMAND_LINE_SIZE to a grater value, allocates static\nbuffers.\n\nIn order to allow a greater command-line size, these buffers should be\ndynamically allocated or marked as init disposable buffers, so unused memory\ncan be released.\n\nThis patch renames the static saved_command_line variable into\nboot_command_line adding __initdata attribute, so that it can be disposed\nafter initialization.  This rename is required so applications that use\nsaved_command_line will not be affected by this change.\n\nIt reintroduces saved_command_line as dynamically allocated buffer to match\nthe data in boot_command_line.\n\nIt also mark secondary command-line buffer as __initdata, and copies it to\ndynamically allocated static_command_line buffer components may hold reference\nto it after initialization.\n\nThis patch is for linux-2.6.20-rc4-mm1 and is divided to target each\narchitecture.  I could not check this in any architecture so please forgive me\nif I got it wrong.\n\nThe per-architecture modification is very simple, use boot_command_line in\nplace of saved_command_line.  The common code is the change into dynamic\ncommand-line.\n\nThis patch:\n\n1. Rename saved_command_line into boot_command_line, mark as init\n   disposable.\n\n2. Add dynamic allocated saved_command_line.\n\n3. Add dynamic allocated static_command_line.\n\n4. During startup copy: boot_command_line into saved_command_line.  arch\n   command_line into static_command_line.\n\n5. Parse static_command_line and not arch command_line, so arch\n   command_line may be freed.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kazumoto Kojima \u003ckkojima@rr.iij4u.or.jp\u003e\nCc: Richard Curnow \u003crc@rc0.org.uk\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.nec.co.jp\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ff91691bccdb741efb2df0489058a4961fa79598",
      "tree": "eeef6ce3d48df86a7b2c1178a9ba54210b8b8981",
      "parents": [
        "0a9ac38246b11892ad20a1eb9deb67adf8c0db2f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Feb 12 00:53:51 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] sched: avoid div in rebalance_tick\n\nAvoid expensive integer divide 3 times per CPU per tick.\n\nA userspace test of this loop went from 26ns, down to 19ns on a G5; and\nfrom 123ns down to 28ns on a P3.\n\n(Also avoid a variable bit shift, as suggested by Alan. The effect\nof this wasn\u0027t noticable on the CPUs I tested with).\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.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": "0a9ac38246b11892ad20a1eb9deb67adf8c0db2f",
      "tree": "a5521698784e54263acda35226522e1d3348f786",
      "parents": [
        "e2bd99ec5c0e20ed6aeb079fa8f975c2dcd78a2c"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:50 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: add flush_dcache_page() calls\n\nCall flush_dcache_page() after modifying a pagecache by hand.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@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": "e2bd99ec5c0e20ed6aeb079fa8f975c2dcd78a2c",
      "tree": "78892d49cf55fa4cf22ce9b8b226c63bac8b227c",
      "parents": [
        "9d8b8ce5561890464c54645cdea4d6b157159fec"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:49 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: open-code flag checking and manipulation\n\nOpen-code flag checking and manipulation.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Trevor Highland \u003ctshighla@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": "9d8b8ce5561890464c54645cdea4d6b157159fec",
      "tree": "94e7f2cdd3a392806ba7b35e5d2722024ddf4098",
      "parents": [
        "70456600f42f85cfcbdd9d7a6029c03b6f9c5d1e"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:48 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: convert kmap() to kmap_atomic()\n\nReplace kmap() with kmap_atomic().  Reduce the amount of time that mappings\nare held.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Trevor Highland \u003ctshighla@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": "70456600f42f85cfcbdd9d7a6029c03b6f9c5d1e",
      "tree": "1b47957d59bfe3b4e5e5244106678f5542f8f295",
      "parents": [
        "e77a56ddceeec87575a13a60fc1a394af6a1f4bc"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:48 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: convert f_op-\u003ewrite() to vfs_write()\n\nsys_write() takes a local copy of f_pos and writes that back\ninto the struct file. It does this so that two concurrent write()\ncallers don\u0027t make a mess of f_pos, and of the file contents.\n\necryptfs should be calling vfs_write().  That way we also get the fsnotify\nnotifications, which ecryptfs presently appears to have subverted.\n\nConvert direct calls to f_op-\u003ewrite() into calls to vfs_write().\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@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": "e77a56ddceeec87575a13a60fc1a394af6a1f4bc",
      "tree": "8be21cc4afbc0596716bc9d4d8dd145dd8c74252",
      "parents": [
        "dd2a3b7ad98f8482cae481cad89dfed5eee48365"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:47 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: Encrypted passthrough\n\nProvide an option to provide a view of the encrypted files such that the\nmetadata is always in the header of the files, regardless of whether the\nmetadata is actually in the header or in the extended attribute.  This mode of\noperation is useful for applications like incremental backup utilities that do\nnot preserve the extended attributes when directly accessing the lower files.\n\nWith this option enabled, the files under the eCryptfs mount point will be\nread-only.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@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": "dd2a3b7ad98f8482cae481cad89dfed5eee48365",
      "tree": "986c09754176ea4c6e8308c6e2cdbf3fc0658a0b",
      "parents": [
        "17398957aa0a05ef62535060b41d103590dcc533"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:46 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: Generalize metadata read/write\n\nGeneralize the metadata reading and writing mechanisms, with two targets for\nnow: metadata in file header and metadata in the user.ecryptfs xattr of the\nlower file.\n\n[akpm@osdl.org: printk warning fix]\n[bunk@stusta.de: make some needlessly global code static]\nSigned-off-by: Michael Halcrow \u003cmhalcrow@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": "17398957aa0a05ef62535060b41d103590dcc533",
      "tree": "bfb1d65281863811ad46d54f82e52e8924df3284",
      "parents": [
        "dddfa461fc8951f9b5f951c13565b6cac678635a"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:45 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: xattr flags and mount options\n\nThis patch set introduces the ability to store cryptographic metadata into an\nlower file extended attribute rather than the lower file header region.\n\nThis patch set implements two new mount options:\n\necryptfs_xattr_metadata\n - When set, newly created files will have their cryptographic\n   metadata stored in the extended attribute region of the file rather\n   than the header.\n\n   When storing the data in the file header, there is a minimum of 8KB\n   reserved for the header information for each file, making each file at\n   least 12KB in size.  This can take up a lot of extra disk space if the user\n   creates a lot of small files.  By storing the data in the extended\n   attribute, each file will only occupy at least of 4KB of space.\n\n   As the eCryptfs metadata set becomes larger with new features such as\n   multi-key associations, most popular filesystems will not be able to store\n   all of the information in the xattr region in some cases due to space\n   constraints.  However, the majority of users will only ever associate one\n   key per file, so most users will be okay with storing their data in the\n   xattr region.\n\n   This option should be used with caution.  I want to emphasize that the\n   xattr must be maintained under all circumstances, or the file will be\n   rendered permanently unrecoverable.  The last thing I want is for a user to\n   forget to set an xattr flag in a backup utility, only to later discover\n   that their backups are worthless.\n\necryptfs_encrypted_view\n - When set, this option causes eCryptfs to present applications a\n   view of encrypted files as if the cryptographic metadata were\n   stored in the file header, whether the metadata is actually stored\n   in the header or in the extended attributes.\n\n   No matter what eCryptfs winds up doing in the lower filesystem, I want\n   to preserve a baseline format compatibility for the encrypted files.  As of\n   right now, the metadata may be in the file header or in an xattr.  There is\n   no reason why the metadata could not be put in a separate file in future\n   versions.\n\n   Without the compatibility mode, backup utilities would have to know to\n   back up the metadata file along with the files.  The semantics of eCryptfs\n   have always been that the lower files are self-contained units of encrypted\n   data, and the only additional information required to decrypt any given\n   eCryptfs file is the key.  That is what has always been emphasized about\n   eCryptfs lower files, and that is what users expect.  Providing the\n   encrypted view option will provide a way to userspace applications wherein\n   they can always get to the same old familiar eCryptfs encrypted files,\n   regardless of what eCryptfs winds up doing with the metadata behind the\n   scenes.\n\nThis patch:\n\nAdd extended attribute support to version bit vector, flags to indicate when\nxattr or encrypted view modes are enabled, and support for the new mount\noptions.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@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": "dddfa461fc8951f9b5f951c13565b6cac678635a",
      "tree": "eaf51d6825bd97087b9c700f7010ed08e3f83047",
      "parents": [
        "88b4a07e6610f4c93b08b0bb103318218db1e9f6"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:44 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: Public key; packet management\n\nPublic key support code.  This reads and writes packets in the header that\ncontain public key encrypted file keys.  It calls the messaging code in the\nprevious patch to send and receive encryption and decryption request\npackets from the userspace daemon.\n\n[akpm@osdl.org: cleab fix]\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88b4a07e6610f4c93b08b0bb103318218db1e9f6",
      "tree": "32e2f2650bd4841ba6b2fafc724c2806219351b4",
      "parents": [
        "b5d5dfbd59577aed72263f22e28d3eaf98e1c6e5"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Mon Feb 12 00:53:43 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] eCryptfs: Public key transport mechanism\n\nThis is the transport code for public key functionality in eCryptfs.  It\nmanages encryption/decryption request queues with a transport mechanism.\nCurrently, netlink is the only implemented transport.\n\nEach inode has a unique File Encryption Key (FEK).  Under passphrase, a File\nEncryption Key Encryption Key (FEKEK) is generated from a salt/passphrase\ncombo on mount.  This FEKEK encrypts each FEK and writes it into the header of\neach file using the packet format specified in RFC 2440.  This is all\nsymmetric key encryption, so it can all be done via the kernel crypto API.\n\nThese new patches introduce public key encryption of the FEK.  There is no\nasymmetric key encryption support in the kernel crypto API, so eCryptfs pushes\nthe FEK encryption and decryption out to a userspace daemon.  After\nconsidering our requirements and determining the complexity of using various\ntransport mechanisms, we settled on netlink for this communication.\n\neCryptfs stores authentication tokens into the kernel keyring.  These tokens\ncorrelate with individual keys.  For passphrase mode of operation, the\nauthentication token contains the symmetric FEKEK.  For public key, the\nauthentication token contains a PKI type and an opaque data blob managed by\nindividual PKI modules in userspace.\n\nEach user who opens a file under an eCryptfs partition mounted in public key\nmode must be running a daemon.  That daemon has the user\u0027s credentials and has\naccess to all of the keys to which the user should have access.  The daemon,\nwhen started, initializes the pluggable PKI modules available on the system\nand registers itself with the eCryptfs kernel module.  Userspace utilities\nregister public key authentication tokens into the user session keyring.\nThese authentication tokens correlate key signatures with PKI modules and PKI\nblobs.  The PKI blobs contain PKI-specific information necessary for the PKI\nmodule to carry out asymmetric key encryption and decryption.\n\nWhen the eCryptfs module parses the header of an existing file and finds a Tag\n1 (Public Key) packet (see RFC 2440), it reads in the public key identifier\n(signature).  The asymmetrically encrypted FEK is in the Tag 1 packet;\neCryptfs puts together a decrypt request packet containing the signature and\nthe encrypted FEK, then it passes it to the daemon registered for the\ncurrent-\u003eeuid via a netlink unicast to the PID of the daemon, which was\nregistered at the time the daemon was started by the user.\n\nThe daemon actually just makes calls to libecryptfs, which implements request\npacket parsing and manages PKI modules.  libecryptfs grabs the public key\nauthentication token for the given signature from the user session keyring.\nThis auth tok tells libecryptfs which PKI module should receive the request.\nlibecryptfs then makes a decrypt() call to the PKI module, and it passes along\nthe PKI block from the auth tok.  The PKI uses the blob to figure out how it\nshould decrypt the data passed to it; it performs the decryption and passes\nthe decrypted data back to libecryptfs.  libecryptfs then puts together a\nreply packet with the decrypted FEK and passes that back to the eCryptfs\nmodule.\n\nThe eCryptfs module manages these request callouts to userspace code via\nmessage context structs.  The module maintains an array of message context\nstructs and places the elements of the array on two lists: a free and an\nallocated list.  When eCryptfs wants to make a request, it moves a msg ctx\nfrom the free list to the allocated list, sets its state to pending, and fires\noff the message to the user\u0027s registered daemon.\n\nWhen eCryptfs receives a netlink message (via the callback), it correlates the\nmsg ctx struct in the alloc list with the data in the message itself.  The\nmsg-\u003eindex contains the offset of the array of msg ctx structs.  It verifies\nthat the registered daemon PID is the same as the PID of the process that sent\nthe message.  It also validates a sequence number between the received packet\nand the msg ctx.  Then, it copies the contents of the message (the reply\npacket) into the msg ctx struct, sets the state in the msg ctx to done, and\nwakes up the process that was sleeping while waiting for the reply.\n\nThe sleeping process was whatever was performing the sys_open().  This process\noriginally called ecryptfs_send_message(); it is now in\necryptfs_wait_for_response().  When it wakes up and sees that the msg ctx\nstate was set to done, it returns a pointer to the message contents (the reply\npacket) and returns.  If all went well, this packet contains the decrypted\nFEK, which is then copied into the crypt_stat struct, and life continues as\nnormal.\n\nThe case for creation of a new file is very similar, only instead of a decrypt\nrequest, eCryptfs sends out an encrypt request.\n\n\u003e - We have a great clod of key mangement code in-kernel.  Why is that\n\u003e   not suitable (or growable) for public key management?\n\neCryptfs uses Howells\u0027 keyring to store persistent key data and PKI state\ninformation.  It defers public key cryptographic transformations to userspace\ncode.  The userspace data manipulation request really is orthogonal to key\nmanagement in and of itself.  What eCryptfs basically needs is a secure way to\ncommunicate with a particular daemon for a particular task doing a syscall,\nbased on the UID.  Nothing running under another UID should be able to access\nthat channel of communication.\n\n\u003e - Is it appropriate that new infrastructure for public key\n\u003e management be private to a particular fs?\n\nThe messaging.c file contains a lot of code that, perhaps, could be extracted\ninto a separate kernel service.  In essence, this would be a sort of\nrequest/reply mechanism that would involve a userspace daemon.  I am not aware\nof anything that does quite what eCryptfs does, so I was not aware of any\nexisting tools to do just what we wanted.\n\n\u003e   What happens if one of these daemons exits without sending a quit\n\u003e   message?\n\nThere is a stale uid\u003c-\u003epid association in the hash table for that user.  When\nthe user registers a new daemon, eCryptfs cleans up the old association and\ngenerates a new one.  See ecryptfs_process_helo().\n\n\u003e - _why_ does it use netlink?\n\nNetlink provides the transport mechanism that would minimize the complexity of\nthe implementation, given that we can have multiple daemons (one per user).  I\nexplored the possibility of using relayfs, but that would involve having to\nintroduce control channels and a protocol for creating and tearing down\nchannels for the daemons.  We do not have to worry about any of that with\nnetlink.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b5d5dfbd59577aed72263f22e28d3eaf98e1c6e5",
      "tree": "9ef320c6ff4f61bffb25c0452570d5f76ab7769c",
      "parents": [
        "77f1f67a1a56defa210c3d8857f3e5eee3990a99"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Feb 12 00:53:40 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] include/linux/nfsd/const.h: remove NFS_SUPER_MAGIC\n\nNFS_SUPER_MAGIC is already defined in include/linux/magic.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "77f1f67a1a56defa210c3d8857f3e5eee3990a99",
      "tree": "9d34af393db31a566c01f915074ff070c644ecc1",
      "parents": [
        "95756482c9bfa375418c5a32455494a3042f65cd"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:39 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: fix up svc_create_socket() to take a sockaddr struct + length\n\nReplace existing svc_create_socket() API to allow callers to pass addresses\nlarger than a sockaddr_in.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95756482c9bfa375418c5a32455494a3042f65cd",
      "tree": "1c7583a43df17591cae77af601143509ab68c2b1",
      "parents": [
        "cdd88b9f3ed5013de0f1085e0e2f9123c798609d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:38 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: support IPv6 addresses in RPC server\u0027s UDP receive path\n\nAdd support for IPv6 addresses in the RPC server\u0027s UDP receive path.\n\n[akpm@linux-foundation.org: cleanups]\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cdd88b9f3ed5013de0f1085e0e2f9123c798609d",
      "tree": "2e2fba732f54c487461ad0da81bc8f11daea2786",
      "parents": [
        "bcdb81ae29091f6a66369aabfd8324e4a53d05dc"
      ],
      "author": {
        "name": "akpm@linux-foundation.org",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Feb 12 00:53:38 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Support IPv6 addresses in svc_tcp_accept\n\nModify svc_tcp_accept to support connecting on IPv6 sockets.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bcdb81ae29091f6a66369aabfd8324e4a53d05dc",
      "tree": "ce70eed085bd56c0b1eaffa838ca27bec94e1345",
      "parents": [
        "b92503b25c3f794cff5f96626ea3ecba8d10d254"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:37 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: add a \"generic\" function to see if the peer uses a secure port\n\nThe only reason svcsock.c looks at a sockaddr\u0027s port is to check whether the\nremote peer is connecting from a privileged port.  Refactor this check to hide\nprocessing that is specific to address format.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b92503b25c3f794cff5f96626ea3ecba8d10d254",
      "tree": "a3bd2e04e1f748f0bdd1ce54b5ec79a393815efa",
      "parents": [
        "73df0dbaff8d0853387e140f52b6250c486b18a1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:36 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: teach svc_sendto() to deal with IPv6 addresses\n\nCMSG_DATA comes in different sizes, depending on address family.\n\n[akpm@linux-foundation.org: remove unneeded do/while (0)]\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73df0dbaff8d0853387e140f52b6250c486b18a1",
      "tree": "f1b3a669b47744b982ba5e25af329712abd36bf5",
      "parents": [
        "27459f0940e16c68e080f5fc7e85aa9eb3f74528"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:35 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Make rq_daddr field address-version independent\n\nThe rq_daddr field must support larger addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27459f0940e16c68e080f5fc7e85aa9eb3f74528",
      "tree": "f13cd1f2005dda2b6115e2afbc49e1271b0d374b",
      "parents": [
        "2442222283918c2d1c20ae651d95fe168757938b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses\n\nExpand the rq_addr field to allow it to contain larger addresses.\n\nSpecifically, we replace a \u0027sockaddr_in\u0027 with a \u0027sockaddr_storage\u0027, then\neverywhere the \u0027sockaddr_in\u0027 was referenced, we use instead an accessor\nfunction (svc_addr_in) which safely casts the _storage to _in.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2442222283918c2d1c20ae651d95fe168757938b",
      "tree": "f4e120320c5b9538b4626e576fce67db201c4cc7",
      "parents": [
        "ad06e4bd62351bc569cca0f25d68c58dbd298146"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:33 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Use sockaddr_storage to store address in svc_deferred_req\n\nSockaddr_storage will allow us to store arbitrary socket addresses in the\nsvc_deferred_req struct.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad06e4bd62351bc569cca0f25d68c58dbd298146",
      "tree": "82024c01e61de32af17d3b67eac0bb93138a2954",
      "parents": [
        "1ba951053f07187f6e77be664a4b6f8bf0ba7ae4"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:32 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Add a function to format the address in an svc_rqst for printing\n\nThere are loads of places where the RPC server assumes that the rq_addr fields\ncontains an IPv4 address.  Top among these are error and debugging messages\nthat display the server\u0027s IP address.\n\nLet\u0027s refactor the address printing into a separate function that\u0027s smart\nenough to figure out the difference between IPv4 and IPv6 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1ba951053f07187f6e77be664a4b6f8bf0ba7ae4",
      "tree": "68e6e183de677269078de1b2ce6efc88249a3b33",
      "parents": [
        "067d7817310569f7b76ca08c4d071ca95ad4c1d3"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:31 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Don\u0027t set msg_name and msg_namelen when calling sock_recvmsg\n\nClean-up: msg_name and msg_namelen are not used by sock_recvmsg, so don\u0027t\nbother to set them in svc_recvfrom.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "067d7817310569f7b76ca08c4d071ca95ad4c1d3",
      "tree": "ee931bac235a3f9d0083edd7c00340121fe32767",
      "parents": [
        "e79eff1f90826b207b1152fc87aa97fa74fb7f9c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Cache remote peer\u0027s address in svc_sock\n\nThe remote peer\u0027s address won\u0027t change after the socket has been accepted.  We\ndon\u0027t need to call -\u003egetname on every incoming request.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e79eff1f90826b207b1152fc87aa97fa74fb7f9c",
      "tree": "8cd39c30c01fdbca8c93652512441b7dda666eea",
      "parents": [
        "482fb94e1b0c2efe8258334aa2a68d4f4a91de9c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Feb 12 00:53:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: aplit svc_sock_enqueue out of svc_setup_socket\n\nRather than calling svc_sock_enqueue at the end of svc_setup_socket, we now\ncall it (via svc_sock_recieved) after calling svc_setup_socket at each call\nsite.\n\nWe do this because a subsequent patch will insert some code between the two\ncalls at one call site.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "482fb94e1b0c2efe8258334aa2a68d4f4a91de9c",
      "tree": "84353b34bb5ea02df98b598fff037cf1da20d6b0",
      "parents": [
        "6b174337e5126de834a971d3edc3681bbfa45e2c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:29 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: allow creating an RPC service without registering with portmapper\n\nSometimes we need to create an RPC service but not register it with the local\nportmapper.  NFSv4 delegation callback, for example.\n\nChange the svc_makesock() API to allow optionally creating temporary or\npermanent sockets, optionally registering with the local portmapper, and make\nit return the ephemeral port of the new socket.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b174337e5126de834a971d3edc3681bbfa45e2c",
      "tree": "b1dc3e0ecd82353896b07c433f98f547abc5adc2",
      "parents": [
        "f85aaeba458fda1de199a73566c641516e9a935d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:28 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: update internal API: separate pmap register and temp sockets\n\nCurrently in the RPC server, registering with the local portmapper and\ncreating \"permanent\" sockets are tied together.  Expand the internal APIs to\nallow these two socket characteristics to be separately specified.\n\nThis will be externalized in the next patch.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f85aaeba458fda1de199a73566c641516e9a935d",
      "tree": "4c46105fdb6cd1987c7452ac1fd06f2af6353380",
      "parents": [
        "053b47ff249b9e0a634dae807f81465205e7c228"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Mon Feb 12 00:53:27 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] isdn-eicon: Use ARRAY_SIZE macro when appropriate\n\nUse ARRAY_SIZE macro already defined in kernel.h\n\nSigned-off-by: Ahmed S. Darwish \u003cdarwish.07@gmail.com\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "053b47ff249b9e0a634dae807f81465205e7c228",
      "tree": "220695a694f2be08c26a836435e4ba9f093b9af8",
      "parents": [
        "a871fe858c5437ff8798fbaef52b6a88110b64a1"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mb@bu3sch.de",
        "time": "Mon Feb 12 00:53:26 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] Workaround CAPI subsystem locking issue\n\nI think the following patch should go into the kernel, until the ISDN/CAPI\nguys create the real fix for this issue.\n\nThe issue is a concurrency issue with some internal CAPI data structure\nwhich can crash the kernel.\n\nOn my FritzCard DSL with the AVM driver it crashes about once a day without\nthis workaround patch.  With this workaround patch it\u0027s rock-stable (at\nleast on UP, but I don\u0027t see why this shouldn\u0027t work on SMP as well.  But\nmaybe I\u0027m missing something.)\n\nThis workaround is kind of a sledgehammer which inserts a global lock to\nwrap around all the critical sections.  Of course, this is a scalability\nissue, if you have many ISDN/CAPI cards.  But it prevents a crash.  So I\nvote for this fix to get merged, until people come up with a better\nsolution.  Better have a stable kernel that\u0027s less scalable, than a\ncrashing and useless kernel.\n\nThis bug is in the kernel since 2.6.15 (at least).\n\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nCc: Kai Germaschewski \u003ckai.germaschewski@gmx.de\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a871fe858c5437ff8798fbaef52b6a88110b64a1",
      "tree": "2e93927962c087c48b371c3494550f4c27e74a25",
      "parents": [
        "986c4bb8c4a7bf248378954782553334a003d80a"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Mon Feb 12 00:53:25 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/hisax/: Convert to generic boolean-values\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "986c4bb8c4a7bf248378954782553334a003d80a",
      "tree": "68d1c6dd17db1ff9c5816844c695e85a51f54506",
      "parents": [
        "2a8081f99cd2b1f356c1d07c75f5c386c2e54efc"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Mon Feb 12 00:53:24 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/hardware/eicon/: convert to generic boolean-values\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2a8081f99cd2b1f356c1d07c75f5c386c2e54efc",
      "tree": "0f232b7163b26df4c2f3fe6752ff16e658d01098",
      "parents": [
        "f0d8737bf741181aa6a452cffe3b9c074afa0cc1"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Feb 12 00:53:23 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] ISDN: Rename special macro CONFIG_HISAX_HFC4S8S_PCIMEM\n\nRename the macro CONFIG_HISAX_HFC4S8S_PCIMEM to simply HISAX_HFC4S8S_PCIMEM so\nthat it no longer resembles a user-settable kernel config macro.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f0d8737bf741181aa6a452cffe3b9c074afa0cc1",
      "tree": "24164928bf0befff8da3751ccf5c570054d31651",
      "parents": [
        "e3c07b9615ee123113de2e881143eb74442d3bf5"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Feb 12 00:53:22 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] ISDN: Remove defunct test emulator\n\nBased on advice from K.  Keil, get rid of remaining traces of defunct test\nemulator for HISAX.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e3c07b9615ee123113de2e881143eb74442d3bf5",
      "tree": "95be1da54b1641e2fc1649baadc24b1a1c7497d2",
      "parents": [
        "26fb5c5810afa0d8209ceff7cb267398be53829d"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Feb 12 00:53:21 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] ISDN: Rename debug option CONFIG_SERIAL_NOPAUSE_IO\n\nBased on advice from K.  Keil, rename the special debug option\nCONFIG_SERIAL_NOPAUSE_IO to ELSA_SERIAL_NOPAUSE_IO so it no longer resembles a\nuser-selectable kernel config option.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26fb5c5810afa0d8209ceff7cb267398be53829d",
      "tree": "1996730cf72c9eb92011cac123963581f779f950",
      "parents": [
        "e3f2769e6e896a5d734593e4842014cab220d027"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Feb 12 00:53:20 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] ISDN: Rename some debugging macros to not resemble CONFIG options\n\nRename some of the debugging macros for ISDN AVM so that they don\u0027t resemble\nkernel config settings, as they\u0027re primarily for author debugging instead.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e3f2769e6e896a5d734593e4842014cab220d027",
      "tree": "fc2d8974616c476e704c3d81262ac2482213c219",
      "parents": [
        "fd863db937c0d30679d4bd5329653adb46b66627"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Feb 12 00:53:19 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] ISDN: Fix typo \"CONFIG_HISAX_QUADRO\" -\u003e \"CONFIG_HISAX_SCT_QUADRO\".\n\nReplace misspelled CONFIG_HISAX_QUADRO with CONFIG_HISAX_SCT_QUADRO.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fd863db937c0d30679d4bd5329653adb46b66627",
      "tree": "dd4bd40c998ee7718eca0d6139db32fb14451c87",
      "parents": [
        "fc238b3791447b93c69cd50a99dfcaad6162afba"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Mon Feb 12 00:53:19 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] isdn/capi: use ARRAY_SIZE when appropriate\n\nSigned-off-by: Ahmed S. Darwish \u003cdarwish.07@gmail.com\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc238b3791447b93c69cd50a99dfcaad6162afba",
      "tree": "ff98e02c355cfdf0f496e17cfaf81daf5f915270",
      "parents": [
        "b19a8f0472cf2fc401c47f585fcd42e770124e06"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Feb 12 00:53:18 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/sc/: proper prototypes\n\nAdd proper prototypes in a header file for global code under\ndrivers/isdn/sc/.\n\nSince the GNU C compiler is now able do tell us that caller and callee\ndisagreed about the number of arguments of setup_buffers(), this patch\nalso fixes this bug.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b19a8f0472cf2fc401c47f585fcd42e770124e06",
      "tree": "87b4e2d69363d3e79cfb1a957f9c1a28d2ee7a57",
      "parents": [
        "010046d0c805ac3bfab1740f4a056af70b84ea46"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Feb 12 00:53:17 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/hisax/: proper prototypes\n\n- add functions prototypes for some global functions to header files\n\n- remove unneeded \"extern\"s from some function prototypes\n\nYou might note that this patch results in a new warning - that\u0027s due to the\nfact that with a proper prototype gcc is able to discover a broken\nwork_struct conversion.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "010046d0c805ac3bfab1740f4a056af70b84ea46",
      "tree": "70e621b0caaa455aa5b61a6d815bae77295727cf",
      "parents": [
        "390414badebe45a2f556a04ece1fd99191aa6397"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Feb 12 00:53:16 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/pcbit/: proper prototypes\n\nAdd correct prototypes in header files for global functions and variables.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "390414badebe45a2f556a04ece1fd99191aa6397",
      "tree": "8491b5e2f6ee05d2b2e04b7ae8e0e3ddd0c2e237",
      "parents": [
        "920fe7a8d0aba9782d1f924a02ece146acbf6686"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "philipp.zabel@gmail.com",
        "time": "Mon Feb 12 00:53:15 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] S3C2410 GPIO wrappers\n\nArch-neutral GPIO calls for S3C24xx.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "920fe7a8d0aba9782d1f924a02ece146acbf6686",
      "tree": "c0f14f50b8e7fa77f0ef1911c5a273fb6cda8109",
      "parents": [
        "8a898f1c366c858f8dbcb667c1cfcc282b727795"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "philipp.zabel@gmail.com",
        "time": "Mon Feb 12 00:53:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] SA1100 GPIO wrappers\n\nArch-neutral GPIO calls for SA-1100.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8a898f1c366c858f8dbcb667c1cfcc282b727795",
      "tree": "113a793365336c12272b4822e5ff819b175b9f6f",
      "parents": [
        "a31c4eea2127ee52b5c7c1befada4664963ad030"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "philipp.zabel@gmail.com",
        "time": "Mon Feb 12 00:53:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] PXA GPIO wrappers\n\nArch-neutral GPIO calls for PXA.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a31c4eea2127ee52b5c7c1befada4664963ad030",
      "tree": "dc459f1ddba26772c9faa26ac8cdef0c41afd300",
      "parents": [
        "3c729f1ecd23b86a2d6b211d646f57f9da8dfeb1"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:53:13 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] AT91 GPIO wrappers\n\nThis is a first cut at making the AT91 code use the generic GPIO calls.\n\nNote that the original AT91 GPIO calls merged the \"mux pin as GPIO\" and \"set\nGPIO direction\" functionality into one API call, contrary to what\u0027s specified\nas a cross-platform portable model.  So this involved a few non-inlinable\nfunctions.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3c729f1ecd23b86a2d6b211d646f57f9da8dfeb1",
      "tree": "4e07d1852a67d378a30d60892d93c4ceb5072041",
      "parents": [
        "4c20386c8d0719b42503efe65abe47ad3fb3d711"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:53:12 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] OMAP GPIO wrappers\n\nThis teaches OMAP how to implement the cross-platform GPIO interfaces.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4c20386c8d0719b42503efe65abe47ad3fb3d711",
      "tree": "9ec169c4c8548a9c2ac5c258c15020c346b969e1",
      "parents": [
        "9794f33ddedd878dd92fcf8b4834391840366919"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:53:11 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:34 2007 -0800"
      },
      "message": "[PATCH] GPIO core\n\nThis defines a simple and minimalist programming interface for GPIO APIs:\n\n  - Documentation/gpio.txt ... describes things (read it)\n\n  - include/asm-arm/gpio.h ... defines the ARM hook, which just punts\n    to \u003casm/arch/gpio.h\u003e for any implementation\n\n  - include/asm-generic/gpio.h ... implement \"can sleep\" variants as calling\n    the normal ones, for systems that don\u0027t handle i2c expanders.\n\nThe immediate need for such a cross-architecture API convention is to support\ndrivers that work the same on AT91 ARM and AVR32 AP7000 chips, which embed many\nof the same controllers but have different CPUs.  However, several other users\nhave been reported, including a driver for a hardware watchdog chip and some\nhandhelds.org multi-CPU button drivers.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9794f33ddedd878dd92fcf8b4834391840366919",
      "tree": "b64ed2488fe95a1217d14704422cc467193f34a3",
      "parents": [
        "4f423ddf56e5ecb1fb2eac83b8e228e3d0aae0f6"
      ],
      "author": {
        "name": "eric wollesen",
        "email": "ericw@xmtp.net",
        "time": "Mon Feb 12 00:53:08 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] EDAC: Add Fully-Buffered DIMM APIs to core\n\nEric Wollesen ported the Bluesmoke Memory Controller driver for the Intel\n5000X/V/P (Blackford/Greencreek) chipset to the in kernel EDAC model.\n\nThis patch incorporates those required changes to the edac_mc.c and edac_mc.h\ncore files by added new Fully Buffered DIMM interface to the EDAC Core module.\n\nSigned-off-by: eric wollesen \u003cericw@xmtp.net\u003e\nSigned-off-by: doug thompson \u003cnorsk5@xmission.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4f423ddf56e5ecb1fb2eac83b8e228e3d0aae0f6",
      "tree": "425469f3a2e2b4cd391dfceae56fa4084d37a5e5",
      "parents": [
        "84db003f249ddbcde1666376b4e3bbe9ee2c7c0c"
      ],
      "author": {
        "name": "Frithiof Jensen",
        "email": "frithiof.jensen@ericson.com",
        "time": "Mon Feb 12 00:53:07 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] EDAC: Add memory scrubbing controls API to core\n\nThis is an attempt of providing an interface for memory scrubbing control in\nEDAC.\n\nThis patch modifies the EDAC Core to provide the Interface for memory\ncontroller modules to implment.\n\nThe following things are still outstanding:\n\n - K8 is the first implemenation,\n\n   The patch provide a method of configuring the K8 hardware memory scrubber\n   via the \u0027mcX\u0027 sysfs directory.  There should be some fallback to a generic\n   scrubber implemented in software if the hardware does not support\n   scrubbing.\n\n   Or .. the scrubbing sysfs entry should not be visible at all.\n\n - Only works with SDRAM, not cache,\n\n   The K8 can scrub cache and l2cache also - but I think this is not so\n   useful as the cache is busy all the time (one hopes).\n\n   One would also expect that cache scrubbing requires hardware support.\n\n - Error Handling,\n\n   I would like that errors are returned to the user in \"terms of file\n   system\".\n\n - Presentation,\n\n   I chose Bandwidth in Bytes/Second as a representation of the scrubbing\n   rate for the following reasons:\n\n   I like that the sysfs entries are sort-of textual, related to something\n   that makes sense instead of magical values that must be looked up.\n\n   \"My People\" wants \"% main memory scrubbed per hour\" others prefer \"%\n   memory bandwidth used\" as representation, \"bandwith used\" makes it easy to\n   calculate both versions in one-liner scripts.\n\n   If one later wants to scrub cache, the scaling becomes wierd for K8\n   changing from \"blocks of 64 byte memory\" to \"blocks of 64 cache lines\" to\n   \"blocks of 64 bit\".  Using \"bandwidth used\" makes sense in all three cases,\n   (I.M.O.  anyway ;-).\n\n - Discovery,\n\n   There is no way to discover the possible settings and what they do\n   without reading the code and the documentation.\n\n   *I* do not know how to make that work in a practical way.\n\n - Bugs(??),\n\n   other tools can set invalid values in the memory scrub control register,\n   those will read back as \u0027-1\u0027, requiring the user to reset the scrub rate.\n   This is how *I* think it should be.\n\n - Afflicting other areas of code,\n\n   I made changes to edac_mc.c and edac_mc.h which will show up globally -\n   this is not nice, it would be better that the memory scrubbing fuctionality\n   and interface could be entirely contained within the memory controller it\n   applies to.\n\nFrithiof Jensen\n\nedac_mc.c and its .h file is a CORE helper module for EDAC\ndriver modules. This provides the abstraction for device specific\ndrivers. It is fine to modify this CORE to provide help for\nnew features of the the drivers\n\ndoug thompson\n\nSigned-off-by: Frithiof Jensen \u003cfrithiof.jensen@ericson.com\u003e\nSigned-off-by: doug thompson \u003cnorsk5@xmission.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "84db003f249ddbcde1666376b4e3bbe9ee2c7c0c",
      "tree": "f2f44a1a33afbcd1d1cf8cbb4a9dcb598d736361",
      "parents": [
        "9962fd017becf944d671da498ccaaea570452206"
      ],
      "author": {
        "name": "Mike Chan",
        "email": "mikechan@google.com",
        "time": "Mon Feb 12 00:53:06 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] EDAC: Fix in e752x mc driver\n\nThis fix/change returns the offset into the page for the ce/ue error, instead\nof just 0.  The e752x dram controller reads 34:6 of the linear address with\nthe error.\n\nSigned-off-by: Mike Chan \u003cmikechan@google.com\u003e\nSigned-off-by: doug thompson \u003cnorsk5@xmission.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9962fd017becf944d671da498ccaaea570452206",
      "tree": "fcb47a80c9a398a3840fee689f7486cb7d8ab9c1",
      "parents": [
        "dfb2a76378f095b0aaa2024ce9a8cfb2ae2354d2"
      ],
      "author": {
        "name": "Brian Pomerantz",
        "email": "bapper@mvista.com",
        "time": "Mon Feb 12 00:53:05 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] EDAC: e752x byte access fix\n\nThe reading of the DRA registers should be a byte at a time (one register at a\ntime) instead of 4 bytes at a time (four registers).  Reading a dword at a\ntime retrieves erroneous information from all but the first register.  A\nchange was made to read in each register in a loop prior to using the data in\nthose registers.\n\nSigned-off-by: Brian Pomerantz \u003cbapper@mvista.com\u003e\nSigned-off-by: Dave Jiang \u003cdjiang@mvista.com\u003e\nSigned-off-by: Doug Thompson \u003cnorsk5@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dfb2a76378f095b0aaa2024ce9a8cfb2ae2354d2",
      "tree": "adaf082fb273066c518839770abcf1d88359d2ae",
      "parents": [
        "27b0b2f44adffe0193a695bb528a83b550b8e54b"
      ],
      "author": {
        "name": "Brian Pomerantz",
        "email": "bapper@mvista.com",
        "time": "Mon Feb 12 00:53:03 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] EDAC: e752x bit mask fix\n\nThe fatal vs.  non-fatal mask for the sysbus FERR status is incorrect\naccording to the E7520 datasheet.  This patch corrects the mask to correctly\nhandle fatal and non-fatal errors.\n\nSigned-off-by: Brian Pomerantz \u003cbapper@mvista.com\u003e\nSigned-off-by: Dave Jiang \u003cdjiang@mvista.com\u003e\nSigned-off-by: Doug Thompson \u003cnorsk5@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27b0b2f44adffe0193a695bb528a83b550b8e54b",
      "tree": "fd7578afab2e9fa72e3f157f94c9dd73a8265678",
      "parents": [
        "9f57a54b6cf3f626334d97e93b5b917ad11e1efc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:53:02 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: remove the now unused kill_pg kill_pg_info and __kill_pg_info\n\nNow that I have changed all of the in-tree users remove the old version of\nthese functions.  This should make it clear to any out of tree users that they\nshould be using kill_pgrp kill_pgrp_info or __kill_pgrp_info instead.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f57a54b6cf3f626334d97e93b5b917ad11e1efc",
      "tree": "d00c59378853d36b9508708e2d2ee38269eeb018",
      "parents": [
        "41487c65bfcce9c8e4d123da1719fcfd8df6d4d0"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:53:02 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: remove now unused do_each_task_pid and while_each_task_pid\n\nNow that I have changed all of the users remove the old version of these\nfunctions.  This should be a clear hint to any out of tree users that they\nshould use do_each_pid_task and while_each_pid_task for new code.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "41487c65bfcce9c8e4d123da1719fcfd8df6d4d0",
      "tree": "e2e0e13bc3178c2cff766f1e0165bbbabdb2ed98",
      "parents": [
        "ab521dc0f8e117fd808d3e425216864d60390500"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:53:01 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: replace do/while_each_task_pid with do/while_each_pid_task\n\nThere isn\u0027t any real advantage to this change except that it allows the old\nfunctions to be removed.  Which is easier on maintenance and puts the code in\na more uniform style.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab521dc0f8e117fd808d3e425216864d60390500",
      "tree": "f9d6449c4d8c9508fd43edfe845108043e1536b2",
      "parents": [
        "3e7cd6c413c9e6fbb5e1ee2acdadb4ababd2d474"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:53:00 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] tty: update the tty layer to work with struct pid\n\nOf kernel subsystems that work with pids the tty layer is probably the largest\nconsumer.  But it has the nice virtue that the assiation with a session only\nlasts until the session leader exits.  Which means that no reference counting\nis required.  So using struct pid winds up being a simple optimization to\navoid hash table lookups.\n\nIn the long term the use of pid_nr also ensures that when we have multiple pid\nspaces mixed everything will work correctly.\n\nSigned-off-by: Eric W. Biederman \u003ceric@maxwell.lnxi.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e7cd6c413c9e6fbb5e1ee2acdadb4ababd2d474",
      "tree": "de97d00794ee0c787b6c551a91e33fb1faa48caa",
      "parents": [
        "0475ac0845f9295bc5f69af45f58dff2c104c8d1"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:58 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: replace is_orphaned_pgrp with is_current_pgrp_orphaned\n\nEvery call to is_orphaned_pgrp passed in process_group(current) which is racy\nwith respect to another thread changing our process group.  It didn\u0027t bite us\nbecause we were dealing with integers and the worse we would get would be a\nstale answer.\n\nIn switching the checks to use struct pid to be a little more efficient and\nprepare the way for pid namespaces this race became apparent.\n\nSo I simplified the calls to the more specialized is_current_pgrp_orphaned so\nI didn\u0027t have to worry about making logic changes to avoid the race.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0475ac0845f9295bc5f69af45f58dff2c104c8d1",
      "tree": "2052ddeb6cc271238a1470a2fb3a7082bb1eefd1",
      "parents": [
        "04a2e6a5cbf84e85fe86de0a18f6509b147e1d89"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:57 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:32 2007 -0800"
      },
      "message": "[PATCH] pid: use struct pid for talking about process groups in exitc\n\nModify has_stopped_jobs and will_become_orphan_pgrp to use struct pid based\nprocess groups.  This reduces the number of hash tables looks ups and paves\nthe way for multiple pid spaces.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04a2e6a5cbf84e85fe86de0a18f6509b147e1d89",
      "tree": "67dd67d2c4c18e5c36654dfe569e3085bd262ba5",
      "parents": [
        "8d42db189ca99703f0f4f91c477cb54808c8eaaa"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:56 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] pid: make session_of_pgrp use struct pid instead of pid_t\n\nTo properly implement a pid namespace I need to deal exclusively in terms of\nstruct pid, because pid_t values become ambiguous.\n\nTo this end session_of_pgrp is transformed to take and return a struct pid\npointer.  To avoid the need to worry about reference counting I now require my\ncaller to hold the appropriate locks.  Leaving callers repsonsible for\nincreasing the reference count if they need access to the result outside of\nthe locks.\n\nSince session_of_pgrp currently only has one caller and that caller simply\nuses only test the result for equality with another process group, the locking\nchange means I don\u0027t actually have to acquire the tasklist_lock at all.\n\ntiocspgrp is also modified to take and release the lock.  The logic there is a\nlittle more complicated but nothing I won\u0027t need when I convert pgrp of a tty\nto a struct pid pointer.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d42db189ca99703f0f4f91c477cb54808c8eaaa",
      "tree": "9879222882a29c01dbff030c94ff8debbdcd1ddb",
      "parents": [
        "0e25338bc11fa8e41e44e4db5b5101e3d882dc5b"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:55 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] signal: rewrite kill_something_info so it uses newer helpers\n\nThe goal is to remove users of the old signal helper functions so they can be\nremoved.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e25338bc11fa8e41e44e4db5b5101e3d882dc5b",
      "tree": "839595838acb1d9166191b192c0fa734ee0fdcbc",
      "parents": [
        "2ea81868d8fba0bb56d7b45a08cc5f15dd2c6bb2"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:54 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] signal: use kill_pgrp not kill_pg in the sunos compatibility code\n\nI am slowly moving to a model where all process killing is struct pid based\ninstead of pid_t based.  The sunos compatibility code is one of the last users\nof the old pid_t based kill_pg in the kernel.  By being complete I allow for\nthe future removal of kill_pg from the kernel, which will ensure I don\u0027t miss\nsomething.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ea81868d8fba0bb56d7b45a08cc5f15dd2c6bb2",
      "tree": "69b6df2015e315a5dcd0b8388c0cf4c6416734a5",
      "parents": [
        "680a96710041c3c25464b5e093b80ca43cb94f52"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:53 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] tty: fix the locking for signal-\u003esession in disassociate_ctty\n\ncommit 24ec839c431eb79bb8f6abc00c4e1eb3b8c4d517 while fixing the locking for\nsignal-\u003etty got the locking wrong for signal-\u003esession.  This places our\naccesses of signal-\u003esession back under the tasklist_lock where they belong.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "680a96710041c3c25464b5e093b80ca43cb94f52",
      "tree": "b68c26beba44e1e138da1b621b1d48ab153f9199",
      "parents": [
        "cdc623300841bc8f1625c320d5a6cbc52c43c60d"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:52 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] tty: clarify disassociate_ctty\n\nThe code to look at tty_old_pgrp and send SIGHUP and SIGCONT when it is\npresent only executes when disassociate_ctty is called from do_exit.  Make\nthis clear by adding an explict on_exit check, and explicitly setting\ntty_old_pgrp to 0.\n\nIn addition fix the locking by reading tty_old_pgrp under the siglock.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cdc623300841bc8f1625c320d5a6cbc52c43c60d",
      "tree": "b9c8f56847eb78aa4d92e3948579be9d2f647b63",
      "parents": [
        "939b00df0306bc4b5cd25c3c3c78e89b91e72fc8"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:51 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] tty: make __proc_set_tty static\n\nThe aim of this patch set is to start wrapping up the struct pid conversions.\nAs such this patchset culminates with the removal of kill_pg, kill_pg_info,\n__kill_pg_info, do_each_task_pid, and while_each_task_pid.\n\nkill_proc, daemonize, and kernel_thread are still in my sights but there is\nstill work to get to them.\n\nThe first three are basic cleanups around disassociate_ctty, while working on\nconverting it I found several issues.  tty_old_pgrp can be a tricky concept to\nwrap your head around.\n\n 1 tty: Make __proc_set_tty static.\n 2 tty: Clarify disassociate_ctty\n 3 tty: Fix the locking for signal-\u003esession in disassociate_ctty\n\nThese just stop using the old helper functions.\n\n 4 signal: Use kill_pgrp not kill_pg in the sunos compatibility code.\n 5 signal: Rewrite kill_something_info so it uses newer helpers.\n\nThen the grind to convert the tty layer and all of it\u0027s helper functions to\nstruct pid.\n\n 6 pid: Make session_of_pgrp use struct pid instead of pid_t.\n 7 pid: Use struct pid for talking about process groups in exit.c\n 8 pid: Replace is_orphaned_pgrp with is_current_pgrp_orphaned\n 9 tty: Update the tty layer to work with struct pid.\n\nA final helper function update.\n\n10 pid: Replace do/while_each_task_pid with do/while_each_pid_task\n\nAnd the removal of the functions that are now unused.\n11 pid: Remove now unused do_each_task_pid and while_each_task_pid\n12 pid: Remove the now unused kill_pg kill_pg_info and __kill_pg_info\n\nAll of these should be fairly simple and to the point.\n\nThis patch:\n\nCurrently all users of __proc_set_tty are in tty_io.c so make the function\nstatic.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "939b00df0306bc4b5cd25c3c3c78e89b91e72fc8",
      "tree": "c251dca9f3ebbebfa1f40f39716423842b247742",
      "parents": [
        "b587b13a4f670ebae79ae6259cf44328455e4e69"
      ],
      "author": {
        "name": "Andries Brouwer",
        "email": "aeb@cwi.nl",
        "time": "Mon Feb 12 00:52:49 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] Minix V3 support\n\nThis morning I needed to read a Minix V3 filesystem, but unfortunately my\n2.6.19 did not support that, and neither did the downloaded 2.6.20rc4.\n\nFortunately, google told me that Daniel Aragones had already done the work,\npatch found at http://www.terra.es/personal2/danarag/\n\nUnfortunaly, looking at the patch was painful to my eyes, so I polished it\na bit before applying.  The resulting kernel boots, and reads the\nfilesystem it needed to read.\n\nSigned-off-by: Daniel Aragones \u003cdanarag@gmail.com\u003e\nSigned-off-by: Andries Brouwer \u003caeb@cwi.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b587b13a4f670ebae79ae6259cf44328455e4e69",
      "tree": "36e614fae95d8a2c888190d162e67ec95d144304",
      "parents": [
        "3925a5ce44330767f7f0de5c58c6a797009f0f75"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:52:48 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] SPI eeprom driver\n\nThis is adds a simple SPI EEPROM driver, providing access to the EEPROM\nthrough sysfs much like the I2C \"eeprom\" driver ...  except this driver\nsupports write access, and multiple EEPROM sizes.\n\nFrom: \"Tuppa, Walter\" \u003cwalter.tuppa@siemens.com\u003e\n\nSince I have EEPROMs on SPI with different address sizing, I made some\nchanges to your at25.c to support them.  Works perfectly.  (Also includes a\nsmall bugfix for the \"what size address\" test.)\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Walter Tuppa \u003cwalter.tuppa@siemens.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3925a5ce44330767f7f0de5c58c6a797009f0f75",
      "tree": "67ccd2220047161031596c2e6a4f8ff3171745f7",
      "parents": [
        "802245611adea5e5877d8c5d9a20f94d8131bfdd"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:52:47 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] RTC gets sysfs wakealarm attribute\n\nThis adds a new \"wakealarm\" sysfs attribute to RTC class devices which support\nalarm operations and are wakeup-capable:\n\n - It reads as either empty, or the scheduled alarm time as seconds\n   since the POSIX epoch.  (That time may already have passed, since\n   nothing currently enforces one-shot alarm semantics.)\n\n - It can be written with an alarm time in the future, again seconds\n   since the POSIX epoch, which enables the alarm.\n\n - It can be written with an alarm time not in the future (such as 0,\n   the start of the POSIX epoch) to disable the alarm.\n\nUsage examples (some need GNU date) after \"cd /sys/class/rtc/rtcN\":\n\n    alarm after 10 minutes:\n\t# echo $(( $(cat since_epoch) + 10 * 60 )) \u003e wakealarm\n    alarm tuesday evening 10pm:\n\t# date -d \u002710pm tuesday\u0027 \"+%s\" \u003e wakealarm\n    disable alarm:\n    \t# echo 0 \u003e wakealarm\n\nThis resembles the /proc/acpi/alarm file in that nothing happens when the\nalarm triggers ...  except possibly waking the system from sleep.  It\u0027s also\nlike that in a nasty way: not much can be done to prevent one task from\nclobbering another task\u0027s alarm settings.\n\nIt differs from that file in that there\u0027s no in-kernel date parser.\n\nNote that a few RTCs ignore rtc_wkalrm.enabled when setting alarms, or aren\u0027t\nset up correctly, so they won\u0027t yet behave with this attribute.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "802245611adea5e5877d8c5d9a20f94d8131bfdd",
      "tree": "de7ce4def3bb48c1125b0aaf505ec29df9924e42",
      "parents": [
        "0ffa0285052607513a29f529ddb5061c907fd8a6"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:52:46 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] SPI doc clarifications\n\nThis clarifies some aspects of the SPI programming interface, based on\nfeedback from Hans-Peter Nilsson.  The in-memory representation of words is\nright-aligned, so for example a twelve bit word is stored using sixteen bits\nwith four undefined bits in the MSB.  And controller drivers must reject\nprotocol tweaking modes they do not support.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ffa0285052607513a29f529ddb5061c907fd8a6",
      "tree": "d7072494d6d8005c60d42c1c841628c7d486dd9a",
      "parents": [
        "7f8c7619ea1ff5ab8e0b08c8120d629834ef4253"
      ],
      "author": {
        "name": "Hans-Peter Nilsson",
        "email": "hans-peter.nilsson@axis.com",
        "time": "Mon Feb 12 00:52:45 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] SPI cleanup() method param becomes non-const\n\nI\u0027d like to assign NULL to kfree()d members of a structure.  I can\u0027t do\nthat without ugly casting (see the PXA patch) when the structure pointed to\nis const-qualified.  I don\u0027t really see a reason why the cleanup method\nisn\u0027t allowed to alter the object it should clean up.  :-)\n\nNo, I didn\u0027t test the PXA patch, but I verified that the NULL-assignment\ndoesn\u0027t stop me from doing rmmod/insmodding my own spi_bitbang-based\ndriver.\n\nSigned-off-by: Hans-Peter Nilsson \u003chp@axis.com\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f8c7619ea1ff5ab8e0b08c8120d629834ef4253",
      "tree": "722c72263bb4259bc787b8236673e727182dac98",
      "parents": [
        "ddc1e9753106cedcca7944d2b068baa2e14640b1"
      ],
      "author": {
        "name": "Hans-Peter Nilsson",
        "email": "hans-peter.nilsson@axis.com",
        "time": "Mon Feb 12 00:52:44 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] spi_bitbang(): use overridable setup_transfer() method\n\nA small bug-fix for spi_bitbang: it must always call the setup_transfer\nfunction via the overridable pointer, not assume that its\nspi_bitbang_setup_transfer is sufficient.  Otherwise, if all options in the\ntransfers are default (0), the overrided function will never be called.\n\nGranted, the function replacing it must call spi_bitbang_setup_transfer,\nbut it might also have other important things to do, even if the second\nargument (the spi_transfer) is NULL.  Tested together with the other\npatches on the spi_crisv32_sser and spi_crisv32_gpio drivers (not yet in\nthe kernel, will IIUC be submitted as part of the usual\narch-maintainer-pushes).\n\nSigned-off-by: Hans-Peter Nilsson \u003chp@axis.com\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ddc1e9753106cedcca7944d2b068baa2e14640b1",
      "tree": "6482b83f8f8bf7b0bd017c8101b47492fcd5e3ba",
      "parents": [
        "14fd9b3f8a0a36e706d144efcd579805a99de594"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben@fluff.org",
        "time": "Mon Feb 12 00:52:43 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:31 2007 -0800"
      },
      "message": "[PATCH] spi: remove return in spi_unregister_driver()\n\nMake the spi_unregister_driver() code fit in with the rest of the header\nfile, and only do the action if the driver passed is non-NULL.\n\nThis also makes the code a line smaller.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "14fd9b3f8a0a36e706d144efcd579805a99de594",
      "tree": "c670f97d81d52903362f8b5182e1e8692817501d",
      "parents": [
        "9b40ff4d729f4a7a9f832c67aa5de0dfa8ad45c0"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben@fluff.org",
        "time": "Mon Feb 12 00:52:42 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] spi: documentation does not need to set driver\u0027s bus_type field\n\nThe spi_register_driver() sets the bus_type field of the spi_driver being\nregistered, so there is no need to have it set in the driver itself.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b40ff4d729f4a7a9f832c67aa5de0dfa8ad45c0",
      "tree": "e5ee3959e846f220a4d6a96c241a201e459b1bbb",
      "parents": [
        "69c202afa8ad6d6c1c673d8f9d47b43a0a3604e5"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben@fluff.org",
        "time": "Mon Feb 12 00:52:41 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] spi: add spi_set_drvdata() and spi_get_drvdata()\n\nAdd wrappers for getting and setting the driver data using spi_device\ninstead of using dev_{get|set}_drvdata with \u0026spi-\u003edev, to mirror the\nplatform_{get|set}_drvdata.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69c202afa8ad6d6c1c673d8f9d47b43a0a3604e5",
      "tree": "a8f79c7911042c3cbc1b71e49e51f0c7ebf8055e",
      "parents": [
        "fdb3c18d639311287dc4675abe743847a1aa62a8"
      ],
      "author": {
        "name": "Andrea Paterniani",
        "email": "a.paterniani@swapp-eng.it",
        "time": "Mon Feb 12 00:52:39 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] SPI: Freescale iMX SPI controller driver (BIS+)\n\nAdd the SPI controller driver for Freescale i.MX(S/L/1).\nMain features summary:\n\n \u003e Per chip setup via board specific code and/or protocol driver.\n \u003e Per transfer setup.\n \u003e PIO transfers.\n \u003e DMA transfers.\n \u003e Managing of NULL tx / rx buffer for rd only / wr only transfers.\n\nThis patch replace patch-2.6.20-rc4-spi_imx with the following changes:\n \u003e Few cosmetic changes.\n \u003e Function map_dma_buffers now return 0 for success and -1 for failure.\n \u003e Solved a bug inside spi_imx_probe function (wrong error path).\n \u003e Solved a bug inside setup function (bad undo setup for max_speed_hz).\n \u003e For read-only transfers, always write zero bytes.\n\nThis is almost the same as the \u0027BIS\u0027 version sent by Andrea, except for\nupdating the \u0027DUMMY\u0027 byte so that read-only transfers shift out zeroes.\nThat part of the API changed recently, since some half duplex peripheral\nchips require that semantic.\n\nSigned-off-by: Andrea Paterniani \u003ca.paterniani@swapp-eng.it\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fdb3c18d639311287dc4675abe743847a1aa62a8",
      "tree": "d5d05f7eab547d515a4fb89d74e556fc462c85b0",
      "parents": [
        "85abfaa78239e63f553cc446f8ae5b955282aa29"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:52:37 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] SPI controller driver for OMAP Microwire\n\nThis adds a SPI driver for the Microwire controller on OMAP1 chips.  This\ndriver has been used in the Linux-OMAP tree for some time now, including\nwith some of those displays using standardized 9-bit commands followed by\ndata with 8-bit words.\n\nMicrowire only supports half duplex transfers, but that\u0027s all that most SPI\nprotocols need.  When full duplex, or higher speeds, are needed there are\nseveral other controllers that can be used on OMAP.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Imre Deak \u003cimre.deak@solidboot.com\u003e\nSigned-off-by: Juha Yrjola \u003cjuha.yrjola@solidboot.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "85abfaa78239e63f553cc446f8ae5b955282aa29",
      "tree": "ba0c5ce223ac5fd8c7388e04f1ccd46249786131",
      "parents": [
        "efc47135e4b6f7e7d81332f50ef68e4a42819d20"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Mon Feb 12 00:52:36 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] SPI Kconfig fix\n\nMinor Kconfig cleanup ... put the SPI_S3C24XX entry in the\ncorrect location (alphabetical order).\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "efc47135e4b6f7e7d81332f50ef68e4a42819d20",
      "tree": "eea400d6bbdf846b972dbe7da042a8b641877f59",
      "parents": [
        "2869b23e4b95cbafffcd2fe110d77aff8c218405"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Feb 12 00:52:35 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] DS1302: local_irq_disable() is redundant after local_irq_save()\n\ndrivers/char/ds1302.c::get_rtc_time() contains local_irq_disable() call\nafter local_irq_save(). This looks redundant.\n\ndrivers/char/ds1302.c::rtc_ioctl() contains local_irq_disable() call after\nlocal_irq_save(). This looks redundant.\n\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2869b23e4b95cbafffcd2fe110d77aff8c218405",
      "tree": "150d1be0ec223f8ab5309f5fdcb487b209441342",
      "parents": [
        "e13df2c58f8e8c72278b61e8f59de9a1403f9426"
      ],
      "author": {
        "name": "Tilman Schmidt",
        "email": "tilman@imap.cc",
        "time": "Mon Feb 12 00:52:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/gigaset: new M101 driver (v2)\n\nThis patch adds the line discipline based driver for the Gigaset M101\nwireless RS232 adapter. It also improves the documentation a bit.\n\nSigned-off-by: Tilman Schmidt \u003ctilman@imap.cc\u003e\nSigned-off-by: Hansjoerg Lipp \u003chjlipp@web.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e13df2c58f8e8c72278b61e8f59de9a1403f9426",
      "tree": "5a4ae3fd3011d1fe56a511dbe1368c1660eebf6d",
      "parents": [
        "40565f1962c5be9b9e285e05af01ab7771534868"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Mon Feb 12 00:52:33 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] drivers/telephony/ixj: Convert to generic boolean\n\nConvert:\nBOOL  -\u003e bool\nFALSE -\u003e false\nTRUE  -\u003e true\n\nChange a variable (\u0027mContinue\u0027) to boolean from char, since it is used\nas boolean.\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nAcked-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": "40565f1962c5be9b9e285e05af01ab7771534868",
      "tree": "ae84097778a8adfc5a9aad8a5428fe803d54346a",
      "parents": [
        "d096f3e9898d469493fc0afe88d7285c4bdc3ce2"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Feb 12 00:52:31 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] Char: timers cleanup\n\n- Use timer macros to set function and data members and to modify\n  expiration time.\n- Use DEFINE_TIMER for global timers and do not init them at run-time in\n  these cases.\n- del_timer_sync is common in most cases -- we want to wait for timer\n  function if it\u0027s still running.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Paul Fulghum \u003cpaulkf@microgate.com\u003e\nCc: Kylene Jo Hall \u003ckjhall@us.ibm.com\u003e\nCc: Wim Van Sebroeck \u003cwim@iguana.be\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\t(Input bits)\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d096f3e9898d469493fc0afe88d7285c4bdc3ce2",
      "tree": "2b3387ef2333dcbfe671f05696c451417e9b6585",
      "parents": [
        "c239122dec9230af80d0914ba23fefde80fdeffe"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Feb 12 00:52:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] Char: specialix, isr have 2 params\n\nspecialix, isr have 2 params\n\npt_regs are no longer the third parameter of isr, call sx_interrupt without\nit.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c239122dec9230af80d0914ba23fefde80fdeffe",
      "tree": "f3817aba59c89a32c8270938d81fdb622680305e",
      "parents": [
        "eb5857084c8d27764b842025e4c805b174e40cad"
      ],
      "author": {
        "name": "Prarit Bhargava",
        "email": "prarit@redhat.com",
        "time": "Mon Feb 12 00:52:29 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] change __init to __devinit in 2 rtc drivers\n\nChange __init to __devinit in rtc drivers\u0027 probe functions.\n\nResolves MODPOST warnings:\n\nWARNING: drivers/rtc/rtc-ds1553.o - Section mismatch: reference to\n.init.text:ds1553_rtc_probe from .data.rel between \u0027ds1553_rtc_driver\u0027 (at\noffset 0x0) and \u0027ds1553_nvram_attr\u0027\nWARNING: drivers/rtc/rtc-ds1742.o - Section mismatch: reference to\n.init.text:ds1742_rtc_probe from .data.rel between \u0027ds1742_rtc_driver\u0027 (at\noffset 0x0) and \u0027ds1742_nvram_attr\u0027\n\nSigned-off-by: Prarit Bhargava \u003cprarit@redhat.com\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": "eb5857084c8d27764b842025e4c805b174e40cad",
      "tree": "4b684d31e295f81d23ed61e08466b3bfe875de10",
      "parents": [
        "944be0b224724fcbf63c3a3fe3a5478c325a6547"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Mon Feb 12 00:52:27 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] export ufs_fs.h to userspace\n\nWas ufs_fs.h purposefully not exported to userspace or did it just slip\nthrough the cracks ?  assuming the latter scenario, the attached patch touches\nup the relationship between ufs_fs.h and its sub headers (like ufs_fs_sb.h) so\nthat we can export it ...  the silo bootloader takes advantage of this header\nfor example.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Evgeniy Dushistov \u003cdushistov@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "944be0b224724fcbf63c3a3fe3a5478c325a6547",
      "tree": "83877201ca028cf0ad3d7ee74d06c26d2dfde95e",
      "parents": [
        "92ba0ee2770ed4954e3f8ba412ef2f37e5519477"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 12 00:52:26 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:30 2007 -0800"
      },
      "message": "[PATCH] close_files(): add scheduling point\n\nclose_files() can sometimes take long enough to trigger the soft lockup\ndetector.\n\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "92ba0ee2770ed4954e3f8ba412ef2f37e5519477",
      "tree": "612df60ffdd92b987e06e729277ce9a076ba5388",
      "parents": [
        "7435f50e1261f569c660efb4ae52e8bc21a92cbd"
      ],
      "author": {
        "name": "Tilman Schmidt",
        "email": "tilman@imap.cc",
        "time": "Mon Feb 12 00:52:26 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/gigaset: reduce kernel message spam\n\nReduce the number of kernel messages the Gigaset drivers produce in case of an\nexcessively long device response, from one per character exceeding the limit\nto one per overlong message.\n\nSigned-off-by: Tilman Schmidt \u003ctilman@imap.cc\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7435f50e1261f569c660efb4ae52e8bc21a92cbd",
      "tree": "9ea297ea0b9a332ab9538d5cc986c83f328c5c22",
      "parents": [
        "163da958ba5282cbf85e8b3dc08e4f51f8b01c5e"
      ],
      "author": {
        "name": "Tilman Schmidt",
        "email": "tilman@imap.cc",
        "time": "Mon Feb 12 00:52:24 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] drivers/isdn/gigaset: reduce mutex scope\n\nDo not lock the cardstate structure mutex earlier than necessary.\n\nSigned-off-by: Tilman Schmidt \u003ctilman@imap.cc\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "163da958ba5282cbf85e8b3dc08e4f51f8b01c5e",
      "tree": "ccfdaf7ac1b0f5e06cd4cc34522fa491ede89fe7",
      "parents": [
        "2a10387ec463c4fcd3ccc461291ce4d8505827e2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Feb 12 00:52:24 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] FS: speed up rw_verify_area()\n\noprofile hunting showed a stall in rw_verify_area(), because of triple\nindirection and potential cache misses.\n(file-\u003ef_path.dentry-\u003ed_inode-\u003ei_flock)\n\nBy moving initialization of \u0027struct inode\u0027 pointer before the pos/count\nsanity tests, we allow the compiler and processor to perform two loads by\nanticipation, reducing stall, without prefetch() hints.  Even x86 arch has\nenough registers to not use temporary variables and not increase text size.\n\nI validated this patch running a bench and studied oprofile changes, and\nabsolute perf of the test program.\n\nResults of my epoll_pipe_bench (source available on request) on a Pentium-M\n1.6 GHz machine\n\nBefore :\n# ./epoll_pipe_bench -l 30 -t 20\nAvg: 436089 evts/sec read_count\u003d8843037 write_count\u003d8843040 21.218390 samples\nper call\n(best value out of 10 runs)\n\nAfter :\n# ./epoll_pipe_bench -l 30 -t 20\nAvg: 470980 evts/sec read_count\u003d9549871 write_count\u003d9549894 21.216694 samples\nper call\n(best value out of 10 runs)\n\noprofile CPU_CLK_UNHALTED events gave a reduction from 5.3401 % to 2.5851 %\nfor the rw_verify_area() function.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2a10387ec463c4fcd3ccc461291ce4d8505827e2",
      "tree": "6fd681f884e229bcccaf77f852104954e8f08ecb",
      "parents": [
        "a1e96b0310d70b72012b5ecde5e97b8262785aae"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Feb 12 00:52:22 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] com20020 build fix\n\nNeed to export com20020 symbols for com20020_cs also.\n\nWARNING:  \"com20020_found\" [drivers/net/pcmcia/com20020_cs.ko] undefined!\nWARNING:  \"com20020_check\" [drivers/net/pcmcia/com20020_cs.ko] undefined!\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Esben Nielsen \u003cnielsen.esben@googlemail.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1e96b0310d70b72012b5ecde5e97b8262785aae",
      "tree": "45c507f1f55b991d2c6696c7585e0935adf0ef06",
      "parents": [
        "473e66fd24a230e03f6f164913bedb81c0ba052a"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Feb 12 00:52:20 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] lockdep: forward declare struct task_struct\n\n3117df0453828bd045c16244e6f50e5714667a8a causes this:\n\nIn file included from arch/s390/kernel/early.c:13:\ninclude/linux/lockdep.h:300: warning:\n\t\t\"struct task_struct\" declared inside parameter list\ninclude/linux/lockdep.h:300:\n\t\twarning: its scope is only this definition or\n\t\tdeclaration, which is probably not what you want\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "473e66fd24a230e03f6f164913bedb81c0ba052a",
      "tree": "00495c09f8fa8a8bfb3c4cf8937751ea70e1c2ff",
      "parents": [
        "be6b026785414033aac36887cb9ea0ee1244254c"
      ],
      "author": {
        "name": "Horms",
        "email": "horms@verge.net.au",
        "time": "Mon Feb 12 00:52:18 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] kexec: fix references to init in documentation for kexec\n\nI\u0027ve noticed that the boot options are not correct for in the documentation\nfor kdump.  The \"init\" keyword is not necessary, and causes a kernel panic\nwhen booting with an initrd on Fedora 5.\n\n[horms@verge.net.au: put original comment with the latest version of the patch]\nSigned-off-by: Judith Lebzeelter \u003cjudith@osdl.org\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "be6b026785414033aac36887cb9ea0ee1244254c",
      "tree": "b0c792d6d2b7dc037af5a21cf19f5cce6c4ea60d",
      "parents": [
        "544fc7283cd6902831d660bd8e1181602bd2b4d2"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Feb 12 00:52:17 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] swiotlb uninlinings\n\nOptimise swiotlb.c for size.\n\n   text    data     bss     dec     hex filename\n   5009      89      64    5162    142a lib/swiotlb.o-before\n   4666      89      64    4819    12d3 lib/swiotlb.o-after\n\nFor some reason my gcc (4.0.2) doesn\u0027t want to tailcall these things.\n\nswiotlb_sync_sg_for_device:\n\tpushq\t%rbp\t#\n\tmovl\t$1, %r8d\t#,\n\tmovq\t%rsp, %rbp\t#,\n\tcall\tswiotlb_sync_sg\t#\n\tleave\n\tret\n\t.size\tswiotlb_sync_sg_for_device, .-swiotlb_sync_sg_for_device\n\t.section\t.text.swiotlb_sync_sg_for_cpu,\"ax\",@progbits\n.globl swiotlb_sync_sg_for_cpu\n\t.type\tswiotlb_sync_sg_for_cpu, @function\nswiotlb_sync_sg_for_cpu:\n\tpushq\t%rbp\t#\n\txorl\t%r8d, %r8d\t#\n\tmovq\t%rsp, %rbp\t#,\n\tcall\tswiotlb_sync_sg\t#\n\tleave\n\tret\n\nCc: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "544fc7283cd6902831d660bd8e1181602bd2b4d2",
      "tree": "4047a09e91eb833807caa2e9de07e05f38df3609",
      "parents": [
        "3991d3bd1506391d8feec209b1d22ccb1c03a0bf"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Mon Feb 12 00:52:15 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] atmel_serial: Use __raw I/O register access\n\nAccess to chip-internal registers should always be native-endian.  This is\nespecially important for AVR32 since it\u0027s a big-endian architecture and the\nnon-raw readl() and writel() macros are defined to do little-endian\naccesses.\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nAcked-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3991d3bd1506391d8feec209b1d22ccb1c03a0bf",
      "tree": "b9a691fe6b0bc2bf3c98e64348472fa81de7ddab",
      "parents": [
        "bc1fc6d88c646ea071de34250552051a63000d70"
      ],
      "author": {
        "name": "Tomasz Kvarsin",
        "email": "kvarsin@gmail.com",
        "time": "Mon Feb 12 00:52:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] warning fix: unsigned-\u003esigned\n\nWhile compiling my code with -Wconversion using gcc-trunk, I always get a\nbunch of warrning from headers, here is fix for them:\n\n__getblk is alawys called with unsigned argument,\nbut it takes signed, the same story with __bread,__breadahead and so on.\n\nSigned-off-by: Tomasz Kvarsin\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc1fc6d88c646ea071de34250552051a63000d70",
      "tree": "37bf115305df3fefce7d0c68b531adfa92085d36",
      "parents": [
        "79a81aef769f3a188988ad16032ccfc445cfaa13"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Feb 12 00:52:10 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] ipc: save the ipc namespace while reading proc files\n\nThe problem we were assuming that current-\u003ensproxy-\u003eipc_ns would never\nchange while someone has our file in /proc/sysvipc/ file open.  Given that\nthis can change with both unshare and by passing the file descriptor to\nanother process that assumption is occasionally wrong.\n\nTherefore this patch causes /proc/sysvipc/* to cache the namespace and\nincrement it\u0027s count when we open the file and to decrement the count when\nwe close the file, ensuring consistent operation with no surprises.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "79a81aef769f3a188988ad16032ccfc445cfaa13",
      "tree": "c1b849886df5f4784f2bfbe3defff6995cb2a2ce",
      "parents": [
        "8b5925fd5461c9f1ac77ede48945ca1945202ddb"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Mon Feb 12 00:52:09 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] reiserfs: Use ARRAY_SIZE macro when appropriate\n\nUse ARRAY_SIZE macro already defined in kernel.h\n\nSigned-off-by: Ahmed S. Darwish \u003cdarwish.07@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": "8b5925fd5461c9f1ac77ede48945ca1945202ddb",
      "tree": "20bd72cd17d4bf77b6a56d383e4824db1655cc98",
      "parents": [
        "b322f4095056d6849c49412eb3e36637a062e9c0"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Mon Feb 12 00:52:08 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:29 2007 -0800"
      },
      "message": "[PATCH] OSS: Use ARRAY_SIZE macro when appropriate (2)\n\nUse ARRAY_SIZE macro already defined in kernel.h\n\nSigned-off-by: Ahmed S. Darwish \u003cdarwish.07@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": "b322f4095056d6849c49412eb3e36637a062e9c0",
      "tree": "e9923a60b1a38cd6d1609d21fe74d7dada28e09f",
      "parents": [
        "9d0094de6dfda8209241787d99f531356469d0f5"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Mon Feb 12 00:52:07 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:28 2007 -0800"
      },
      "message": "[PATCH] OSS: Use ARRAY_SIZE macro when appropriate\n\nUse ARRAY_SIZE macro already defined in kernel.h\n\nSigned-off-by: Ahmed S. Darwish \u003cdarwish.07@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": "9d0094de6dfda8209241787d99f531356469d0f5",
      "tree": "a339b010437cf7471bc16b597d5d4550393c010d",
      "parents": [
        "3f0504471536a2b6978b9a99ed1c222950fff07a"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Mon Feb 12 00:52:05 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:28 2007 -0800"
      },
      "message": "[PATCH] w1: Use ARRAY_SIZE macro when appropriate\n\nA patch to use ARRAY_SIZE macro already defined in kernel.h\n\nSigned-off-by: Ahmed S. Darwish \u003cdarwish.07@gmail.com\u003e\nAcked-by: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "3f0504471536a2b6978b9a99ed1c222950fff07a"
}
