)]}'
{
  "log": [
    {
      "commit": "0b1208b1aa7a555d5ae4246bab4cd76ba3f32b2d",
      "tree": "9149834d1e86df4d5d42abbfc10e92245946a851",
      "parents": [
        "a534c8d15b1f1d0f861fc2bb9e0529bd8486ec3f"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Fri Jul 02 12:21:20 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:36 2010 -0500"
      },
      "message": "fs/9p: destroy fid on failed remove\n\n9P spec says:\n\"It is correct to consider remove to be a clunk with the\nside effect of removing the file if permissions allow. \"\n\nSo even if remove fails we need to destroy the fid.\n\nWithout this patch an rmdir on a directory with contents leave\nthe new cloned directory fid fid attached to fidlist. On umount\nwe dump the fids on the fidlist\n\n~# rmdir /mnt2/test4/\nrmdir: failed to remove `/mnt2/test4/\u0027: Directory not empty\n~# umount /mnt2/\n~# dmesg\n[  228.474323] Found fid 3 not clunked\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "eda25e46161527845572131b37706a458d9270ef",
      "tree": "b8a68c9185f7f53a135422a41dc68ef2c5f527ee",
      "parents": [
        "0ef63f345c48afe5896c5cffcba57f0457d409b9"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon May 31 13:22:50 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:34 2010 -0500"
      },
      "message": "net/9p: Implement TXATTRCREATE 9p call\n\nTXATTRCREATE:  Prepare a fid for setting xattr value on a file system object.\n\n size[4] TXATTRCREATE tag[2] fid[4] name[s] attr_size[8] flags[4]\n size[4] RXATTRCREATE tag[2]\n\ntxattrcreate gets a fid pointing to xattr. This fid can later be\nused to set the xattr value.\n\nflag value is derived from set Linux setxattr. The manpage says\n\"The flags parameter can be used to refine the semantics of the operation.\nXATTR_CREATE specifies a pure create, which fails if the named attribute\nexists already. XATTR_REPLACE specifies a pure replace operation, which\nfails if the named attribute does not already exist. By default (no flags),\nthe extended attribute will be created if need be, or will simply replace\nthe value if the attribute exists.\"\n\nThe actual setxattr operation happens when the fid is clunked. At that point\nthe written byte count and the attr_size specified in TXATTRCREATE should be\nsame otherwise an error will be returned.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "0ef63f345c48afe5896c5cffcba57f0457d409b9",
      "tree": "b02ca26b3d74d998a6e609a9abd9a753d0ab8075",
      "parents": [
        "ef56547efa3c88609069e2a91f46e25c31dd536e"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon May 31 13:22:45 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:33 2010 -0500"
      },
      "message": "net/9p: Implement attrwalk 9p call\n\nTXATTRWALK: Descend a ATTR namespace\n\n size[4] TXATTRWALK tag[2] fid[4] newfid[4] name[s]\n size[4] RXATTRWALK tag[2] size[8]\n\ntxattrwalk gets a fid pointing to xattr. This fid can later be\nused to read the xattr value. If name is NULL the fid returned\ncan be used to get the list of extended attribute associated to\nthe file system object.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "ef56547efa3c88609069e2a91f46e25c31dd536e",
      "tree": "802bb98048ae36e59fc0bcaa21bd54e5ebf9de99",
      "parents": [
        "5643135a28464e7c19d8d23a9e0804697a62c84b"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Tue Jun 22 19:47:50 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:32 2010 -0500"
      },
      "message": "9p: Implement LOPEN\n\nImplement 9p2000.L version of open(LOPEN) interface in 9p client.\n\nFor LOPEN, no need to convert the flags to and from 9p mode to VFS mode.\n\nSynopsis:\n\n    size[4] Tlopen tag[2] fid[4] mode[4]\n\n    size[4] Rlopen tag[2] qid[13] iounit[4]\n\n[Fix mode bit format - jvrao@linux.vnet.ibm.com]\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbegren \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "5643135a28464e7c19d8d23a9e0804697a62c84b",
      "tree": "d7141110fab0f3d71a95fe18b0b77cbaca645c80",
      "parents": [
        "01a622bd7409bb7af38e784cff814e5e723f7951"
      ],
      "author": {
        "name": "Venkateswararao Jujjuri (JV)",
        "email": "jvrao@linux.vnet.ibm.com",
        "time": "Thu Jun 17 18:27:46 2010 -0700"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:32 2010 -0500"
      },
      "message": "fs/9p: This patch implements TLCREATE for 9p2000.L protocol.\n\nSYNOPSIS\n\n    size[4] Tlcreate tag[2] fid[4] name[s] flags[4] mode[4] gid[4]\n\n    size[4] Rlcreate tag[2] qid[13] iounit[4]\n\nDESCRIPTION\n\nThe Tlreate request asks the file server to create a new regular file with the\nname supplied, in the directory (dir) represented by fid.\nThe mode argument specifies the permissions to use. New file is created with\nthe uid if the fid and with supplied gid.\n\nThe flags argument represent Linux access mode flags with which the caller\nis requesting to open the file with. Protocol allows all the Linux access\nmodes but it is upto the server to allow/disallow any of these acess modes.\nIf the server doesn\u0027t support any of the access mode, it is expected to\nreturn error.\n\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "01a622bd7409bb7af38e784cff814e5e723f7951",
      "tree": "1b6e0d9806e560d7f89e0efa8981cfba4c213361",
      "parents": [
        "4b43516ab19b748b48322937fd9307af17541c4d"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Wed Jun 16 14:27:22 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:31 2010 -0500"
      },
      "message": "9p: Implement TMKDIR\n\nImplement TMKDIR as part of 2000.L Work\n\nSynopsis\n\n    size[4] Tmkdir tag[2] fid[4] name[s] mode[4] gid[4]\n\n    size[4] Rmkdir tag[2] qid[13]\n\nDescription\n\n    mkdir asks the file server to create a directory with given name,\n    mode and gid. The qid for the new directory is returned with\n    the mkdir reply message.\n\nNote: 72 is selected as the opcode for TMKDIR from the reserved list.\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "4b43516ab19b748b48322937fd9307af17541c4d",
      "tree": "0ab84e8d69abce9d63e1937b1a807d2243444a01",
      "parents": [
        "50cc42ff3d7bc48a436c5a0413459ca7841b505f"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Wed Jun 16 14:27:01 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:30 2010 -0500"
      },
      "message": "9p: Implement TMKNOD\n\nSynopsis\n\n    size[4] Tmknod tag[2] fid[4] name[s] mode[4] major[4] minor[4] gid[4]\n\n    size[4] Rmknod tag[2] qid[13]\n\nDescription\n\n    mknod asks the file server to create a device node with given major and\n    minor number, mode and gid. The qid for the new device node is returned\n    with the mknod reply message.\n\n[sripathik@in.ibm.com: Fix error handling code]\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "50cc42ff3d7bc48a436c5a0413459ca7841b505f",
      "tree": "7209ab2807e3a284c1fbd36dd885e34b81809b0d",
      "parents": [
        "652df9a7fd03cb47a3f663f0c08a2bd086505e9b"
      ],
      "author": {
        "name": "Venkateswararao Jujjuri (JV)",
        "email": "jvrao@linux.vnet.ibm.com",
        "time": "Wed Jun 09 15:59:31 2010 -0700"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:29 2010 -0500"
      },
      "message": "9p: Define and implement TSYMLINK for 9P2000.L\n\nCreate a symbolic link\n\nSYNOPSIS\n\nsize[4] Tsymlink tag[2] fid[4] name[s] symtgt[s] gid[4]\n\nsize[4] Rsymlink tag[2] qid[13]\n\nDESCRIPTION\n\nCreate a symbolic link named \u0027name\u0027 pointing to \u0027symtgt\u0027.\ngid represents the effective group id of the caller.\nThe  permissions of a symbolic link are irrelevant hence it is omitted\nfrom the protocol.\n\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nReviewed-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "652df9a7fd03cb47a3f663f0c08a2bd086505e9b",
      "tree": "af90ae0762a8770e660b4cbb23f7e9225cd5dba7",
      "parents": [
        "09d34ee5f93b2e53b64ffba27bc18731e31154e1"
      ],
      "author": {
        "name": "Venkateswararao Jujjuri (JV)",
        "email": "jvrao@linux.vnet.ibm.com",
        "time": "Thu Jun 03 15:16:59 2010 -0700"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:25 2010 -0500"
      },
      "message": "9p: Define and implement TLINK for 9P2000.L\n\nThis patch adds a helper function to get the dentry from inode and\nuses it in creating a Hardlink\n\nSYNOPSIS\n\nsize[4] Tlink tag[2] dfid[4] oldfid[4] newpath[s]\n\nsize[4] Rlink tag[2]\n\nDESCRIPTION\n\nCreate a link \u0027newpath\u0027 in directory pointed by dfid linking to oldfid path.\n\n[sripathik@in.ibm.com : p9_client_link should not free req structure\nif p9_client_rpc has returned an error.]\n\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "87d7845aa0b157a62448dd3e339856f28befe1f4",
      "tree": "bae5a5449f4bdb5ccfd1edcb99b285708c123e9f",
      "parents": [
        "f085312204f384a0277a66c3c48ba8f9edcd58f2"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Fri Jun 18 11:50:10 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:25:10 2010 -0500"
      },
      "message": "9p: Implement client side of setattr for 9P2000.L protocol.\n\n    SYNOPSIS\n\n      size[4] Tsetattr tag[2] attr[n]\n\n      size[4] Rsetattr tag[2]\n\n    DESCRIPTION\n\n      The setattr command changes some of the file status information.\n      attr resembles the iattr structure used in Linux kernel. It\n      specifies which status parameter is to be changed and to what\n      value. It is laid out as follows:\n\n         valid[4]\n            specifies which status information is to be changed. Possible\n            values are:\n            ATTR_MODE       (1 \u003c\u003c 0)\n            ATTR_UID        (1 \u003c\u003c 1)\n            ATTR_GID        (1 \u003c\u003c 2)\n            ATTR_SIZE       (1 \u003c\u003c 3)\n            ATTR_ATIME      (1 \u003c\u003c 4)\n            ATTR_MTIME      (1 \u003c\u003c 5)\n            ATTR_ATIME_SET  (1 \u003c\u003c 7)\n            ATTR_MTIME_SET  (1 \u003c\u003c 8)\n\n            The last two bits represent whether the time information\n            is being sent by the client\u0027s user space. In the absense\n            of these bits the server always uses server\u0027s time.\n\n         mode[4]\n            File permission bits\n\n         uid[4]\n            Owner id of file\n\n         gid[4]\n            Group id of the file\n\n         size[8]\n            File size\n\n         atime_sec[8]\n            Time of last file access, seconds\n\n         atime_nsec[8]\n            Time of last file access, nanoseconds\n\n         mtime_sec[8]\n            Time of last file modification, seconds\n\n         mtime_nsec[8]\n            Time of last file modification, nanoseconds\n\nExplanation of the patches:\n--------------------------\n\n*) The kernel just copies relevent contents of iattr structure to\n   p9_iattr_dotl structure and passes it down to the client. The\n   only check it has is calling inode_change_ok()\n*) The p9_iattr_dotl structure does not have ctime and ia_file\n   parameters because I don\u0027t think these are needed in our case.\n   The client user space can request updating just ctime by calling\n   chown(fd, -1, -1). This is handled on server side without a need\n   for putting ctime on the wire.\n*) The server currently supports changing mode, time, ownership and\n   size of the file.\n*) 9P RFC says \"Either all the changes in wstat request happen, or\n   none of them does: if the request succeeds, all changes were made;\n   if it fails, none were.\"\n   I have not done anything to implement this specifically because I\n   don\u0027t see a reason.\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "f085312204f384a0277a66c3c48ba8f9edcd58f2",
      "tree": "33006860cc1cd4338de56ba1a9915ed95082814e",
      "parents": [
        "9ffaf63e34821ea60b2e1c8593f968d73728f82b"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Mon Jul 12 20:07:23 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:25:09 2010 -0500"
      },
      "message": "9p: getattr client implementation for 9P2000.L protocol.\n\n        SYNOPSIS\n\n              size[4] Tgetattr tag[2] fid[4] request_mask[8]\n\n              size[4] Rgetattr tag[2] lstat[n]\n\n           DESCRIPTION\n\n              The getattr transaction inquires about the file identified by fid.\n              request_mask is a bit mask that specifies which fields of the\n              stat structure is the client interested in.\n\n              The reply will contain a machine-independent directory entry,\n              laid out as follows:\n\n                 st_result_mask[8]\n                    Bit mask that indicates which fields in the stat structure\n                    have been populated by the server\n\n                 qid.type[1]\n                    the type of the file (directory, etc.), represented as a bit\n                    vector corresponding to the high 8 bits of the file\u0027s mode\n                    word.\n\n                 qid.vers[4]\n                    version number for given path\n\n                 qid.path[8]\n                    the file server\u0027s unique identification for the file\n\n                 st_mode[4]\n                    Permission and flags\n\n                 st_uid[4]\n                    User id of owner\n\n                 st_gid[4]\n                    Group ID of owner\n\n                 st_nlink[8]\n                    Number of hard links\n\n                 st_rdev[8]\n                    Device ID (if special file)\n\n                 st_size[8]\n                    Size, in bytes\n\n                 st_blksize[8]\n                    Block size for file system IO\n\n                 st_blocks[8]\n                    Number of file system blocks allocated\n\n                 st_atime_sec[8]\n                    Time of last access, seconds\n\n                 st_atime_nsec[8]\n                    Time of last access, nanoseconds\n\n                 st_mtime_sec[8]\n                    Time of last modification, seconds\n\n                 st_mtime_nsec[8]\n                    Time of last modification, nanoseconds\n\n                 st_ctime_sec[8]\n                    Time of last status change, seconds\n\n                 st_ctime_nsec[8]\n                    Time of last status change, nanoseconds\n\n                 st_btime_sec[8]\n                    Time of creation (birth) of file, seconds\n\n                 st_btime_nsec[8]\n                    Time of creation (birth) of file, nanoseconds\n\n                 st_gen[8]\n                    Inode generation\n\n                 st_data_version[8]\n                    Data version number\n\n              request_mask and result_mask bit masks contain the following bits\n                 #define P9_STATS_MODE          0x00000001ULL\n                 #define P9_STATS_NLINK         0x00000002ULL\n                 #define P9_STATS_UID           0x00000004ULL\n                 #define P9_STATS_GID           0x00000008ULL\n                 #define P9_STATS_RDEV          0x00000010ULL\n                 #define P9_STATS_ATIME         0x00000020ULL\n                 #define P9_STATS_MTIME         0x00000040ULL\n                 #define P9_STATS_CTIME         0x00000080ULL\n                 #define P9_STATS_INO           0x00000100ULL\n                 #define P9_STATS_SIZE          0x00000200ULL\n                 #define P9_STATS_BLOCKS        0x00000400ULL\n\n                 #define P9_STATS_BTIME         0x00000800ULL\n                 #define P9_STATS_GEN           0x00001000ULL\n                 #define P9_STATS_DATA_VERSION  0x00002000ULL\n\n                 #define P9_STATS_BASIC         0x000007ffULL\n                 #define P9_STATS_ALL           0x00003fffULL\n\n        This patch implements the client side of getattr implementation for\n        9P2000.L. It introduces a new structure p9_stat_dotl for getting\n        Linux stat information along with QID. The data layout is similar to\n        stat structure in Linux user space with the following major\n        differences:\n\n        inode (st_ino) is not part of data. Instead qid is.\n\n        device (st_dev) is not part of data because this doesn\u0027t make sense\n        on the client.\n\n        All time variables are 64 bit wide on the wire. The kernel seems to use\n        32 bit variables for these variables. However, some of the architectures\n        have used 64 bit variables and glibc exposes 64 bit variables to user\n        space on some architectures. Hence to be on the safer side we have made\n        these 64 bit in the protocol. Refer to the comments in\n        include/asm-generic/stat.h\n\n        There are some additional fields: st_btime_sec, st_btime_nsec, st_gen,\n        st_data_version apart from the bitmask, st_result_mask. The bit mask\n        is filled by the server to indicate which stat fields have been\n        populated by the server. Currently there is no clean way for the\n        server to obtain these additional fields, so it sends back just the\n        basic fields.\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbegren \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "69d4b4436b54c1a850d475697fda5ca117b09a5e",
      "tree": "e7f1ad979bacad89bd359938d1211caf27dbe8cf",
      "parents": [
        "7751bdb3a095ad32dd4fcff3443cf8dd4cb1e748"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Tue Jun 01 09:26:17 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:25:08 2010 -0500"
      },
      "message": "net/9p: Handle the server returned error properly\n\nWe need to get the negative errno value in the kernel\neven for dotl.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "7751bdb3a095ad32dd4fcff3443cf8dd4cb1e748",
      "tree": "6c7a93a546e34d86e433a1be05e3ebfcc4f77754",
      "parents": [
        "97e8442b0971ea6be9a495b3d03402985cfe5d6a"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Fri Jun 04 13:41:26 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:25:07 2010 -0500"
      },
      "message": "9p: readdir implementation for 9p2000.L\n\nThis patch implements the kernel part of readdir() implementation for 9p2000.L\n\n    Change from V3: Instead of inode, server now sends qids for each dirent\n\n    SYNOPSIS\n\n    size[4] Treaddir tag[2] fid[4] offset[8] count[4]\n    size[4] Rreaddir tag[2] count[4] data[count]\n\n    DESCRIPTION\n\n    The readdir request asks the server to read the directory specified by \u0027fid\u0027\n    at an offset specified by \u0027offset\u0027 and return as many dirent structures as\n    possible that fit into count bytes. Each dirent structure is laid out as\n    follows.\n\n            qid.type[1]\n              the type of the file (directory, etc.), represented as a bit\n              vector corresponding to the high 8 bits of the file\u0027s mode\n              word.\n\n            qid.vers[4]\n              version number for given path\n\n            qid.path[8]\n              the file server\u0027s unique identification for the file\n\n            offset[8]\n              offset into the next dirent.\n\n            type[1]\n              type of this directory entry.\n\n            name[256]\n              name of this directory entry.\n\n    This patch adds v9fs_dir_readdir_dotl() as the readdir() call for 9p2000.L.\n    This function sends P9_TREADDIR command to the server. In response the server\n    sends a buffer filled with dirent structures. This is different from the\n    existing v9fs_dir_readdir() call which receives stat structures from the server.\n    This results in significant speedup of readdir() on large directories.\n    For example, doing \u0027ls \u003e/dev/null\u0027 on a directory with 10000 files on my\n    laptop takes 1.088 seconds with the existing code, but only takes 0.339 seconds\n    with the new readdir.\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nReviewed-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "cff6b8a9b81b404e8ce0257b26007c3afe625212",
      "tree": "8d8793de1843a1831f5ee38efb273a30f06c2a65",
      "parents": [
        "b126468e08d92aaeffa58ef04d70e417241dadc1"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Sat Jul 10 11:51:54 2010 +0200"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 10:37:17 2010 -0500"
      },
      "message": "9p: strlen() doesn\u0027t count the terminator\n\nThis is an off by one bug because strlen() doesn\u0027t count the NULL\nterminator.  We strcpy() addr into a fixed length array of size\nUNIX_PATH_MAX later on.\n\nThe addr variable is the name of the device being mounted.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "4be929be34f9bdeffa40d815d32d7d60d2c7f03b",
      "tree": "4d2c6e2b8ef766e565e2e050ee151de2e02081d3",
      "parents": [
        "940370fc86b920b51a34217a1facc3e9e97c2456"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon May 24 14:33:03 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:07:02 2010 -0700"
      },
      "message": "kernel-wide: replace USHORT_MAX, SHORT_MAX and SHORT_MIN with USHRT_MAX, SHRT_MAX and SHRT_MIN\n\n- C99 knows about USHRT_MAX/SHRT_MAX/SHRT_MIN, not\n  USHORT_MAX/SHORT_MAX/SHORT_MIN.\n\n- Make SHRT_MIN of type s16, not int, for consistency.\n\n[akpm@linux-foundation.org: fix drivers/dma/timb_dma.c]\n[akpm@linux-foundation.org: fix security/keys/keyring.c]\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@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": "4fd5ec509bd486b5dd8cac1a4d4d7e2cbdf7c546",
      "tree": "a8ddfdcc4bfb702457e8eeff57fd6b5a2f4249b2",
      "parents": [
        "6e188240ebc2a132d70924942d7c8b9acb46e11a",
        "6d27e64d74e14c1cf2b4af438d7e8a77017bd654"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 24 07:41:13 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 24 07:41:13 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: Optimize TCREATE by eliminating a redundant fid clone.\n  9p: cleanup: remove unneeded assignment\n  9p: Add mksock support\n  fs/9p: Make sure we properly instantiate dentry.\n  9p: add 9P2000.L rename operation\n  9p: add 9P2000.L statfs operation\n  9p: VFS switches for 9p2000.L: VFS switches\n  9p: VFS switches for 9p2000.L: protocol and client changes\n"
    },
    {
      "commit": "1756ac3d3c41341297ea25b818b7fce505bb2a9a",
      "tree": "96382220afbb82fd5c576c4c08b3c3e13282851f",
      "parents": [
        "98edb6ca4174f17a64890a02f44c211c8b44fb3c",
        "0643e4c6e4fd67778fa886a89e6ec2320e0ff4d3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 17:22:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 17:22:52 2010 -0700"
      },
      "message": "Merge branch \u0027virtio\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027virtio\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: (27 commits)\n  drivers/char: Eliminate use after free\n  virtio: console: Accept console size along with resize control message\n  virtio: console: Store each console\u0027s size in the console structure\n  virtio: console: Resize console port 0 on config intr only if multiport is off\n  virtio: console: Add support for nonblocking write()s\n  virtio: console: Rename wait_is_over() to will_read_block()\n  virtio: console: Don\u0027t always create a port 0 if using multiport\n  virtio: console: Use a control message to add ports\n  virtio: console: Move code around for future patches\n  virtio: console: Remove config work handler\n  virtio: console: Don\u0027t call hvc_remove() on unplugging console ports\n  virtio: console: Return -EPIPE to hvc_console if we lost the connection\n  virtio: console: Let host know of port or device add failures\n  virtio: console: Add a __send_control_msg() that can send messages without a valid port\n  virtio: Revert \"virtio: disable multiport console support.\"\n  virtio: add_buf_gfp\n  trans_virtio: use virtqueue_xxx wrappers\n  virtio-rng: use virtqueue_xxx wrappers\n  virtio_ring: remove a level of indirection\n  virtio_net: use virtqueue_xxx wrappers\n  ...\n\nFix up conflicts in drivers/net/virtio_net.c due to new virtqueue_xxx\nwrappers changes conflicting with some other cleanups.\n"
    },
    {
      "commit": "4681dbdacb5cdc4d3273c3a97a1858d6e00a5fe7",
      "tree": "e29be0d9f98caa7ee176cf0a1a3c3a22fca4934d",
      "parents": [
        "bda8e7752063cdbdd1d308bc1705400a8cec1aeb"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Thu Mar 25 12:47:26 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri May 21 16:44:34 2010 -0500"
      },
      "message": "9p: add 9P2000.L rename operation\n\nI made a V2 of this patch on top of my patches for VFS switches.\nAll the changes were due to change in some offsets.\n\nrename - change name of file or directory\n\nsize[4] Trename tag[2] fid[4] newdirfid[4] name[s]\nsize[4] Rrename tag[2]\n\nThe rename message is used to change the name of a file, possibly moving it\nto a new directory.  The 9P wstat message can only rename a file within the\nsame directory.\n\nSigned-off-by: Jim Garlick \u003cgarlick@llnl.gov\u003e\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "bda8e7752063cdbdd1d308bc1705400a8cec1aeb",
      "tree": "cfc751da04d3ffe46d7b7e935f7ceb21b1f8a8d0",
      "parents": [
        "9b6533c9b331ddbba9a40c972d82222ecffbc359"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Thu Mar 25 12:45:30 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri May 21 16:44:33 2010 -0500"
      },
      "message": "9p: add 9P2000.L statfs operation\n\nI made a V2 of this patch on top of my patches for VFS switches. The\nchange was adding v9fs_statfs pointer to v9fs_super_ops_dotl\ninstead of v9fs_super_ops.\n\nstatfs - get file system statistics\n\nsize[4] Tstatfs tag[2] fid[4]\nsize[4] Rstatfs tag[2] type[4] bsize[4] blocks[8] bfree[8] bavail[8]\n                files[8] ffree[8] fsid[8] namelen[4]\n\nThe statfs message is used to request file system information returned\nby the statfs(2) system call, which is used by df(1) to report file\nsystem and disk space usage.\n\nSigned-off-by: Jim Garlick \u003cgarlick@llnl.gov\u003e\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "c56e4acf55c804cbeea0ddb696ef698c73d39826",
      "tree": "dc537bfd3c5059e5f4ce20f79f204f14bb21d12d",
      "parents": [
        "d515e86e639890b33a09390d062b0831664f04a2"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Thu Mar 25 12:40:35 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri May 21 16:44:32 2010 -0500"
      },
      "message": "9p: VFS switches for 9p2000.L: protocol and client changes\n\nPrepare p9pdu_read/write functions to handle multiple protocols.\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "dc3f5e68f846eec38fb31d78f0b6e83633ad375e",
      "tree": "9af1c7f670a92ca467a792b76ddc99a0905c4fa7",
      "parents": [
        "28cfc828e7e1efc620df70b99519784333abcffd"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Tue Apr 13 16:11:50 2010 +0300"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed May 19 22:15:45 2010 +0930"
      },
      "message": "trans_virtio: use virtqueue_xxx wrappers\n\nSwitch trans_virtio to new virtqueue_xxx wrappers.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3fa21e07e6acefa31f974d57fba2b6920a7ebd1a",
      "tree": "4254644ef2579e9ac96db6ec0535b5e4231fd18e",
      "parents": [
        "b60b6592baa69c43a5a0f55d6300a7feaab15338"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon May 17 23:08:21 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 23:23:14 2010 -0700"
      },
      "message": "net: Remove unnecessary returns from void function()s\n\nThis patch removes from net/ (but not any netfilter files)\nall the unnecessary return; statements that precede the\nlast closing brace of void functions.\n\nIt does not remove the returns that are immediately\npreceded by a label as gcc doesn\u0027t like that.\n\nDone via:\n$ grep -rP --include\u003d*.[ch] -l \"return;\\n}\" net/ | \\\n  xargs perl -i -e \u0027local $/ ; while (\u003c\u003e) { s/\\n[ \\t\\n]+return;\\n}/\\n}/g; print; }\u0027\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "749d229761ff0135cc4e16b8a28b41ae2f6b2c35",
      "tree": "25551c8cfb38319211f5ee59e78462a0f6fb85c4",
      "parents": [
        "795d580baec0d5386b83a8b557df47c20810e86b",
        "3dc9fef67f6292692dba181a6d0fd0211bd0a607"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 13:42:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 13:42:54 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: saving negative to unsigned char\n  9p: return on mutex_lock_interruptible()\n  9p: Creating files with names too long should fail with ENAMETOOLONG.\n  9p: Make sure we are able to clunk the cached fid on umount\n  9p: drop nlink remove\n  fs/9p: Clunk the fid resulting from partial walk of the name\n  9p: documentation update\n  9p: Fix setting of protocol flags in v9fs_session_info structure.\n"
    },
    {
      "commit": "3dc9fef67f6292692dba181a6d0fd0211bd0a607",
      "tree": "643e6ecbcf8ffe58bdbd19ce2acde43643eeaf2b",
      "parents": [
        "85a770a8889035625466a4cfb1393cd7d2ffd165"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Mon Apr 05 14:37:28 2010 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Apr 05 14:37:28 2010 -0500"
      },
      "message": "9p: saving negative to unsigned char\n\nSaving -EINVAL as unsigned char truncates the high bits and changes it\ninto 234 instead of -22.  This breaks the test for \"if (ret \u003d\u003d -EINVAL)\"\nin parse_opts().\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "6d96d3ab7aea5f0e75205a0c97f8d1fdf82c5287",
      "tree": "a4dfa0472e2e670de1da7e7c0905da12d4608ab4",
      "parents": [
        "d994f4058d9f9be7e44529b55fc6be6552901ead"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Mar 29 18:13:59 2010 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Apr 05 10:37:36 2010 -0500"
      },
      "message": "9p: Make sure we are able to clunk the cached fid on umount\n\ndcache prune happen on umount. So we cannot mark the client\nsatus disconnect. That will prevent a 9p call to the server\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "45bc21edb52fa71dbb1324c6f573aa880e95519d",
      "tree": "adee2b59a562679241f874c978162739e1df78bb",
      "parents": [
        "fae4528b2341f2ab0c86c191e24d9cdd93624c60"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Mon Mar 08 17:33:04 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sat Mar 13 08:57:29 2010 -0600"
      },
      "message": "9p: Change the name of new protocol from 9p2010.L to 9p2000.L\n\nThis patch changes the name of the new 9P protocol from 9p2010.L to\n9p2000.u. This is because we learnt that the name 9p2010 is already\nbeing used by others.\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "86c8437383acd85c05ec7c9a004f59fe7ac9821a",
      "tree": "05c2b805162f0aaf8f7d52e0b7fab4e12f8dcb75",
      "parents": [
        "97ee9b0257402f4731b55dfea42f24d26d793ddf"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sat Mar 06 04:44:15 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sat Mar 13 08:57:29 2010 -0600"
      },
      "message": "net/9p: Add sysfs mount_tag file for virtio 9P device\n\nThis adds a new file for virtio 9P device. The file\ncontain details of the mount device name that should\nbe used to mount the 9P file system.\n\nEx: /sys/devices/virtio-pci/virtio1/mount_tag  file now\ncontian the tag name to be used to mount the 9P file system.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "97ee9b0257402f4731b55dfea42f24d26d793ddf",
      "tree": "191e6b08fd882862ede97925a0584f408f6e6e1c",
      "parents": [
        "daf9fe2ee9a203c4fc555cfe5c5f3d9f660e743c"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sat Mar 06 04:44:14 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sat Mar 13 08:57:28 2010 -0600"
      },
      "message": "net/9p: Use the tag name in the config space for identifying mount point\n\nThis patch use the tag name in the config space to identify the\nmount device. The the virtio device name depend on the enumeration\norder of the device and may not remain the same across multiple boots\nSo we use the tag name which is set via qemu option to uniquely identify\nthe mount device\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "c5a7697da9775f7a0e122fa23180becc311772d1",
      "tree": "c1113133d1f99cb00a636780242a4c99810b540e",
      "parents": [
        "342fee1d5c7dfa05f4e14ec1e583df4553b09776"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Fri Mar 05 18:51:04 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Mar 05 15:04:42 2010 -0600"
      },
      "message": "9P2010.L handshake: .L protocol negotiation\n\nThis patch adds 9P2010.L protocol negotiation with the server\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "342fee1d5c7dfa05f4e14ec1e583df4553b09776",
      "tree": "87931dea926f16b44374db8a849ef131cd6ff3de",
      "parents": [
        "0fb80abd911a7cb1e6548b5279568dc1e8949702"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Fri Mar 05 18:50:14 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Mar 05 15:04:42 2010 -0600"
      },
      "message": "9P2010.L handshake: Remove \"dotu\" variable\n\nRemoves \u0027dotu\u0027 variable and make everything dependent\non \u0027proto_version\u0027 field.\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "0fb80abd911a7cb1e6548b5279568dc1e8949702",
      "tree": "0c179f49f2f0d0bf2c979ee1b1f1cfd864122029",
      "parents": [
        "dd6102fbd917889384d89bc427e98e85e8fda000"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Fri Mar 05 18:49:11 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Mar 05 15:04:42 2010 -0600"
      },
      "message": "9P2010.L handshake: Add mount option\n\nAdd new mount V9FS mount option to specify protocol version\n\nThis patch adds a new mount option to specify protocol version.\nWith this option it is possible to use \"-o version\u003d\" switch to\nspecify 9P protocol version to use. Valid options for version\nare:\n9p2000\n9p2000.u\n9p2010.L\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "c1a7c2262035e83a8f70ebe1328b3451702cf51b",
      "tree": "e5bdb780478c839c20099cc3b5f6ecce7f88c0ea",
      "parents": [
        "37c1209d413242d9560e343c040777049a8dd869"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Feb 15 17:27:02 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Mar 05 15:04:41 2010 -0600"
      },
      "message": "net/9p: Handle mount errors correctly.\n\nWith this patch we have\n\n# mount -t 9p -o trans\u003dvirtio virtio2 /mnt/\n# mount -t 9p -o trans\u003dvirtio virtio2 /mnt/\nmount: virtio2 already mounted or /mnt/ busy\nmount: according to mtab, virtio2 is already mounted on /mnt\n# mount -t 9p -o trans\u003dvirtio virtio3 /mnt/ -o debug\u003d0xfff\nmount: special device virtio3 does not exist\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "37c1209d413242d9560e343c040777049a8dd869",
      "tree": "d0fa67f83df03bd9450c710b56752a9f6b8cc5b9",
      "parents": [
        "f75580c4afb72c156746b3fc1ec977b1a85d3dee"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Feb 15 17:27:01 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Mar 05 15:04:41 2010 -0600"
      },
      "message": "net/9p: Remove MAX_9P_CHAN limit\n\nUse a list to track the channel instead of statically\nallocated array\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "f75580c4afb72c156746b3fc1ec977b1a85d3dee",
      "tree": "b576ddedbb51a0227597920dd849e98487c872fb",
      "parents": [
        "64ba9926759792cf7b95f823402e2781edd1b5d4"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Feb 15 17:27:00 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Mar 05 15:04:41 2010 -0600"
      },
      "message": "net/9p: Add multi channel support.\n\nThis is needed for supporting multiple mount points.\n\nWe can find out the device names to be used with mount by checking\n\n/sys/devices/virtio-pci/virtio*/device file\n\nif the device file have value 9 then the specific virtio device can\nbe used for mounting.\n\nex:\n #cat /sys/devices/virtio-pci/virtio1/device\n 9\n\nnow we can mount using\n# mount -t 9p -o trans\u003dvirtio virtio1  /mnt/\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "8781ff9495578dbb74065fae55305110d9f81cb9",
      "tree": "01c42dc85934c729ee8d13e778ce991fad1f58e5",
      "parents": [
        "bf2d29c64dd777e9a40bc4533e721944a590250f"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Feb 08 18:18:34 2010 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Feb 08 18:18:34 2010 -0600"
      },
      "message": "9p: fix p9_client_destroy unconditional calling v9fs_put_trans\n\nrestructure client create code to handle error cases better and\nonly cleanup initialized portions of the stack.\n\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@us.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "fb786100f7c75e154e63d0f5a2982e6d46dfb602",
      "tree": "ed5f57cdc9fab765fcdcb491e65c3b255af72191",
      "parents": [
        "d8c8a9e36560e9ff4c99279d64ce5dd0e1a33fa6"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Feb 08 11:50:32 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Feb 08 17:25:33 2010 -0600"
      },
      "message": "9p: Fix the kernel crash on a failed mount\n\nThe patch fix the crash repoted below\n\n[   15.149907] BUG: unable to handle kernel NULL pointer dereference at 00000001\n[   15.150806] IP: [\u003cc140b886\u003e] p9_virtio_close+0x18/0x24\n.....\n....\n[   15.150806] Call Trace:\n[   15.150806]  [\u003cc1408e78\u003e] ? p9_client_destroy+0x3f/0x163\n[   15.150806]  [\u003cc1409342\u003e] ? p9_client_create+0x25f/0x270\n[   15.150806]  [\u003cc1063b72\u003e] ? trace_hardirqs_on+0xb/0xd\n[   15.150806]  [\u003cc11ed4e8\u003e] ? match_token+0x64/0x164\n[   15.150806]  [\u003cc1175e8d\u003e] ? v9fs_session_init+0x2f1/0x3c8\n[   15.150806]  [\u003cc109cfc9\u003e] ? kmem_cache_alloc+0x98/0xb8\n[   15.150806]  [\u003cc1063b72\u003e] ? trace_hardirqs_on+0xb/0xd\n[   15.150806]  [\u003cc1173dd1\u003e] ? v9fs_get_sb+0x47/0x1e8\n[   15.150806]  [\u003cc1173dea\u003e] ? v9fs_get_sb+0x60/0x1e8\n[   15.150806]  [\u003cc10a2e77\u003e] ? vfs_kern_mount+0x81/0x11a\n[   15.150806]  [\u003cc10a2f55\u003e] ? do_kern_mount+0x33/0xbe\n[   15.150806]  [\u003cc10b40b9\u003e] ? do_mount+0x654/0x6b3\n[   15.150806]  [\u003cc1038949\u003e] ? do_page_fault+0x0/0x284\n[   15.150806]  [\u003cc10b28ec\u003e] ? copy_mount_options+0x73/0xd2\n[   15.150806]  [\u003cc10b4179\u003e] ? sys_mount+0x61/0x94\n[   15.150806]  [\u003cc14284e9\u003e] ? syscall_call+0x7/0xb\n....\n[   15.203562] ---[ end trace 1dd159357709eb4b ]---\n[\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "d8c8a9e36560e9ff4c99279d64ce5dd0e1a33fa6",
      "tree": "b52f301bd5811b9b813b6d244b555edbab38299a",
      "parents": [
        "7a4439c406c21b1e900ed497cec1a79d05b38c07"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Feb 08 16:23:23 2010 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Feb 08 16:23:23 2010 -0600"
      },
      "message": "9p: fix option parsing\n\nOptions pointer is being moved before calling kfree() which seems\nto cause problems.  This uses a separate pointer to track and free\noriginal allocation.\n\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@us.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003ew\n\n"
    },
    {
      "commit": "9d6939dac77102b09396ee0b89392ec7639612a7",
      "tree": "477174ebd6a6ddcfd582c698cc3e5e903862938b",
      "parents": [
        "349d3bb878d71978650a0634b5445af3c1cc1cd8"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Jan 15 19:01:56 2010 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Feb 08 14:13:30 2010 -0600"
      },
      "message": "net/9p: fix statsize inside twstat\n\nstat structures contain a size prefix.  In our twstat messages\nwe were including the size of the size prefix in the prefix, which is not\nwhat the protocol wants, and Inferno servers would complain.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "349d3bb878d71978650a0634b5445af3c1cc1cd8",
      "tree": "ec0760ddef95d3afdfb00611cbd64941958e2b00",
      "parents": [
        "562ada612058133a5483c68a73605f3c5f42fffe"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Jan 15 19:01:10 2010 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Feb 08 14:13:30 2010 -0600"
      },
      "message": "net/9p: fail when user specifies a transport which we can\u0027t find\n\nIf the user specifies a transport and we can\u0027t find it, we failed back\nto the default trainsport silently.  This patch will make the code\ncomplain more loudly and return an error code.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "562ada612058133a5483c68a73605f3c5f42fffe",
      "tree": "1c169da7e0d30c6f69d5d48825240480f04bf513",
      "parents": [
        "08c4f1b096cc2468908ea58a77d2ef92ef765c52"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Jan 15 18:54:03 2010 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Feb 08 14:13:30 2010 -0600"
      },
      "message": "net/9p: fix virtio transport to correctly update status on connect\n\nThe 9p virtio transport was not updating its connection status correctly\npreventing it from being able to mount the server.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "6b18662e239a032f908b7f6e164bdf7e2e0a32c9",
      "tree": "b63bf63d7d2b0d0fac2529a3c3bd906f85388c79",
      "parents": [
        "7cbe66b6b53b6615f1033bd5b3dbad8162886373"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Aug 06 02:02:43 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:41 2009 -0500"
      },
      "message": "9p connect fixes\n\n* if we fail in p9_conn_create(), we shouldn\u0027t leak references to struct file.\n  Logics in -\u003eclose() doesn\u0027t help - -\u003etrans is already gone by the time it\u0027s\n  called.\n* sock_create_kern() can fail.\n* use of sock_map_fd() is all fscked up; I\u0027d fixed most of that, but the\n  rest will have to wait for a bit more work in net/socket.c (we still are\n  violating the basic rule of working with descriptor table: \"once the reference\n  is installed there, don\u0027t rely on finding it there again\").\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f64f9e719261a87818dd192a3a2352e5b20fbd0f",
      "tree": "b2d5cbaef3df615295f6061d8c4d6a912690556c",
      "parents": [
        "152b6a62aea2d43359dd37004e9c218bf7bdeb3b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Nov 29 16:55:45 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 29 16:55:45 2009 -0800"
      },
      "message": "net: Move \u0026\u0026 and || to end of previous line\n\nNot including net/atm/\n\nCompiled tested x86 allyesconfig only\nAdded a \u003e 80 column line or two, which I ignored.\nExisting checkpatch plaints willfully, cheerfully ignored.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e2796a90cf349527e50b3bc4d0b2f4019b1ce7a",
      "tree": "80bddc0f5d36a589db5a77b9b60e4c94c75994ed",
      "parents": [
        "2511cd0b3b9e9b1c3e9360cc565c3745ac3f3f3f"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Nov 02 08:39:28 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Nov 02 08:43:45 2009 -0600"
      },
      "message": "9p: fix readdir corner cases\n\nThe patch below also addresses a couple of other corner cases in readdir\nseen with a large (e.g. 64k) msize.  I\u0027m not sure what people think of\nmy co-opting of fid-\u003eaux here.  I\u0027d be happy to rework if there\u0027s a better\nway.\n\nWhen the size of the user supplied buffer passed to readdir is smaller\nthan the data returned in one go by the 9P read request, v9fs_dir_readdir()\ncurrently discards extra data so that, on the next call, a 9P read\nrequest will be issued with offset \u003c previous offset + bytes returned,\nwhich voilates the constraint described in paragraph 3 of read(5) description.\nThis patch preseves the leftover data in fid-\u003eaux for use in the next call.\n\nSigned-off-by: Jim Garlick \u003cgarlick@llnl.gov\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "e95646c3ec33c8ec0693992da4332a6b32eb7e31",
      "tree": "7855767cc4dccdefc4ea64584cc01b64f92176f3",
      "parents": [
        "f8b12e513b953aebf30f8ff7d2de9be7e024dbbe"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Wed Sep 30 11:17:21 2009 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Oct 22 16:39:28 2009 +1030"
      },
      "message": "virtio: let header files include virtio_ids.h\n\nRusty,\n\ncommit 3ca4f5ca73057a617f9444a91022d7127041970a\n    virtio: add virtio IDs file\nmoved all device IDs into a single file. While the change itself is\na very good one, it can break userspace applications. For example\nif a userspace tool wanted to get the ID of virtio_net it used to\ninclude virtio_net.h. This does no longer work, since virtio_net.h\ndoes not include virtio_ids.h.\nThis patch moves all \"#include \u003clinux/virtio_ids.h\u003e\" from the C\nfiles into the header files, making the header files compatible with\nthe old ones.\n\nIn addition, this patch exports virtio_ids.h to userspace.\n\nCC: Fernando Luis Vazquez Cao \u003cfernando@oss.ntt.co.jp\u003e\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3ca4f5ca73057a617f9444a91022d7127041970a",
      "tree": "382659da29ad0a2e9878df6c7c4204913ab642e7",
      "parents": [
        "3a20210dc26bbfff3bbb48bb22d2846240b71d8f"
      ],
      "author": {
        "name": "Fernando Luis Vazquez Cao",
        "email": "fernando@oss.ntt.co.jp",
        "time": "Fri Jul 31 15:25:56 2009 +0900"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Sep 23 22:26:32 2009 +0930"
      },
      "message": "virtio: add virtio IDs file\n\nVirtio IDs are spread all over the tree which makes assigning new IDs\nbothersome. Putting them together should make the process less error-prone.\n\nSigned-off-by: Fernando Luis Vazquez Cao \u003cfernando@oss.ntt.co.jp\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3a20210dc26bbfff3bbb48bb22d2846240b71d8f",
      "tree": "375afbd244e3fff2260154b5632adb8baee27490",
      "parents": [
        "3c1b27d5043086a485f8526353ae9fe37bfa1065"
      ],
      "author": {
        "name": "Fernando Luis Vazquez Cao",
        "email": "fernando@oss.ntt.co.jp",
        "time": "Fri Jul 31 12:09:05 2009 +0900"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Sep 23 22:26:32 2009 +0930"
      },
      "message": "virtio: get rid of redundant VIRTIO_ID_9P definition\n\nVIRTIO_ID_9P is already defined in include/linux/virtio_9p.h\nso use that definition instead.\n\nSigned-off-by: Fernando Luis Vazquez Cao \u003cfernando@oss.ntt.co.jp\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "3c1b27d5043086a485f8526353ae9fe37bfa1065",
      "tree": "e3b6eda3c66bcd1fc3af6e7fa6e4e3af77459474",
      "parents": [
        "f68d24082e22ccee3077d11aeb6dc5354f0ca7f1"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Sep 23 22:26:31 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Sep 23 22:26:31 2009 +0930"
      },
      "message": "virtio: make add_buf return capacity remaining\n\nThis API change means that virtio_net can tell how much capacity\nremains for buffers.  It\u0027s necessarily fuzzy, since\nVIRTIO_RING_F_INDIRECT_DESC means we can fit any number of descriptors\nin one, *if* we can kmalloc.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Dinesh Subhraveti \u003cdineshs@us.ibm.com\u003e\n"
    },
    {
      "commit": "0aad37ef3deed118d3816e1d1a600eb2ec9dcb87",
      "tree": "cbcfe9f449f57cd35d0ce262e5287da4f8476f30",
      "parents": [
        "48559b4c30708ebdc849483da9fb83ee08c6c908"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Mon Aug 17 16:38:45 2009 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 17 16:39:54 2009 -0500"
      },
      "message": "net/9p: insulate the client against an invalid error code sent by a 9p server\n\nA looney tunes server sending an invalid error code (which is !IS_ERR_VALUE)\ncan result in a client oops. So fix it by adding a check and converting unknown\nor invalid error codes to -ESERVERFAULT.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "0e15597ebfe00e28857185f46aba00f400480ffe",
      "tree": "5a1a057ac15bf598c2eee81c54aeefc49c4cee24",
      "parents": [
        "2bb541157fe2602af7b9952096d0524f6f9c1e73"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Sun Jul 19 13:41:55 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:27:57 2009 -0500"
      },
      "message": "9p: minor comment fixes\n\nFix the comments -- mostly the improper and/or missing descriptions\nof function parameters.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "eedfe1c4289216af5a0a7f38e6b2c4d3f07c087f",
      "tree": "5e08b79c88c36ef0607f830523f253305abf8dff",
      "parents": [
        "a17d1720aa35623a9bef3707b36242706714bca5"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Tue Jul 14 13:25:41 2009 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@vTrogdor.(none)",
        "time": "Tue Jul 14 15:54:41 2009 -0500"
      },
      "message": "9p: Possible regression in p9_client_stat\n\nFix a possible regression with p9_client_stat where it can try to kfree \nan ERR_PTR after an erroneous p9pdu_readf. Also remove an unnecessary data \nbuffer increment in p9_client_read.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "a17d1720aa35623a9bef3707b36242706714bca5",
      "tree": "476f9a29c6b8274227e5adab3c08a48317e8eca7",
      "parents": [
        "4b0a84043e0c14088958fddb62f416d050368011"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Tue Jul 14 13:24:10 2009 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@vTrogdor.(none)",
        "time": "Tue Jul 14 15:54:41 2009 -0500"
      },
      "message": "9p: default 9p transport module fix\n\nThe default 9p transport module is not chosen unless an option parameter (any)\nis passed to mount, which thus returns a ENOPROTOSUPPORT. This fix moves the\ncheck out of parse_opts into p9_client_create.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "15da4b1612d608a47e095439b3dd1d77ffe20e0c",
      "tree": "bc698a7851c73e86e2ac8ef8bfe32c14aff6c71c",
      "parents": [
        "887b5ea3683ce04966e35fa2e5fe215bedcde73c"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Wed Jul 01 08:50:54 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 02 13:17:01 2009 -0700"
      },
      "message": "net/9p: Fix crash due to bad mount parameters.\n\nIt is not safe to use match_int without checking the token type returned\nby match_token (especially when the token type returned is Opt_err and\nargs is empty). Fix it.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d2a7ddda9ffb1c8961abff6714b0f1eb925c120f",
      "tree": "1090884fd260d042255255467367e4e6b6193e5d",
      "parents": [
        "9499f5e7ed5224c40706f0cec6542a9916bc7606"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Fri Jun 12 22:16:36 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jun 12 22:16:36 2009 +0930"
      },
      "message": "virtio: find_vqs/del_vqs virtio operations\n\nThis replaces find_vq/del_vq with find_vqs/del_vqs virtio operations,\nand updates all drivers. This is needed for MSI support, because MSI\nneeds to know the total number of vectors upfront.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (+ lguest/9p compile fixes)\n"
    },
    {
      "commit": "9499f5e7ed5224c40706f0cec6542a9916bc7606",
      "tree": "3e4e1b36d3d549ea356e88e6e44359a887c6ee01",
      "parents": [
        "ef688e151c00e5d529703be9a04fd506df8bc54e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jun 12 22:16:35 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jun 12 22:16:36 2009 +0930"
      },
      "message": "virtio: add names to virtqueue struct, mapping from devices to queues.\n\nAdd a linked list of all virtqueues for a virtio device: this helps for\ndebugging and is also needed for upcoming interface change.\n\nAlso, add a \"name\" field for clearer debug messages.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "1bab88b2310998de18b32529a27ea835d164254a",
      "tree": "fed704a8b3b4ce93d8cd25462ccc9186dec84b7a",
      "parents": [
        "742b11a7ec60faa25d76c95c268041ab215c25ad"
      ],
      "author": {
        "name": "Latchesar Ionkov",
        "email": "lucho@ionkov.net",
        "time": "Sun Apr 05 16:28:59 2009 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@vTrogdor.(none)",
        "time": "Sun Apr 05 16:54:53 2009 -0500"
      },
      "message": "net/9p: handle correctly interrupted 9P requests\n\nCurrently the 9p code crashes when a operation is interrupted, i.e. for\nexample when the user presses ^C while reading from a file.\n\nThis patch fixes the code that is responsible for interruption and flushing\nof 9P operations.\n\nSigned-off-by: Latchesar Ionkov \u003clucho@ionkov.net\u003e\n\n"
    },
    {
      "commit": "742b11a7ec60faa25d76c95c268041ab215c25ad",
      "tree": "86305d4b295f859d89fedd27a5f54ad8b029e5c3",
      "parents": [
        "453ed90d1395a5281a8f1a0de5d8aabc66202e34"
      ],
      "author": {
        "name": "Latchesar Ionkov",
        "email": "lucho@ionkov.net",
        "time": "Sun Apr 05 16:26:41 2009 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@vTrogdor.(none)",
        "time": "Sun Apr 05 16:54:52 2009 -0500"
      },
      "message": "net/9p: return error when p9_client_stat fails\n\np9_client_stat function doesn\u0027t return correct value if it fails.\np9_client_stat should return ERR_PTR of the error value when it fails.\nInstead, it always returns a value to the allocated p9_wstat struct even\nwhen it is not populated correctly.\n\nThis patch makes p9_client_stat to handle failure correctly.\n\nSigned-off-by: Latchesar Ionkov \u003clucho@ionkov.net\u003e\nReviewed-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "453ed90d1395a5281a8f1a0de5d8aabc66202e34",
      "tree": "dca5c43212ec89988a9367dec12f4d43bc45c5c9",
      "parents": [
        "b4348f32dae3cb6eb4bc21c7ed8f76c0b11e9d6a"
      ],
      "author": {
        "name": "Latchesar Ionkov",
        "email": "lucho@ionkov.net",
        "time": "Sun Apr 05 16:22:16 2009 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@vTrogdor.(none)",
        "time": "Sun Apr 05 16:54:52 2009 -0500"
      },
      "message": "net/9p: set correct stat size when sending Twstat messages\n\nThe 9P2000 Twstat message requires the size of the stat structure to be\nspecified. Currently the 9p code writes zero instead of the actual size.\nThis behavior confuses some of the file servers that check if the size is\ncorrect.\n\nThis patch adds a new function that calculcates the stat size and puts the\nvalue in the appropriate place in the 9P message.\n\nSigned-off-by: Latchesar Ionkov \u003clucho@ionkov.net\u003e\nReviewed-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "e3db6cb42123f6dbde36122a4c81a06282370e1e",
      "tree": "f9da75c7902bd4722d383c3de71b4faf3290f404",
      "parents": [
        "81c553299ffc4ce3512a6ea3eaf5070c2238c960"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "hannes@hanneseder.net",
        "time": "Wed Feb 25 10:31:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:13:32 2009 -0800"
      },
      "message": "9p: fix sparse warning: cast adds address space\n\nImpact: Trust in the comment and add \u0027__force\u0027 to the cast.\n\nFix this sparse warning:\n  net/9p/trans_fd.c:420:34: warning: cast adds address space to expression (\u003casn:1\u003e)\n\nSigned-off-by: Hannes Eder \u003channes@hanneseder.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "beeebc92ee04bff6a722ebf85e23131faedd4479",
      "tree": "140e8f6dfaedb55e717b7870177f388a72ece82d",
      "parents": [
        "b4bd07c20ba0c1fa7ad09ba257e0a5cfc2bf6bb3"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Feb 06 22:07:41 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 06 22:07:41 2009 -0800"
      },
      "message": "9p: fix endian issues [attempt 3]\n\nWhen the changes were done to the protocol last release, some endian\nbugs crept in.  This patch fixes those endian problems and has been\nverified to run on 32/64 bit and x86/ppc architectures.\n\nThis version of the patch incorporates the correct annotations\nfor endian variables.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24e94de41e76134fad05552588fe01af2cab1494",
      "tree": "a76aaaf66251ca00bd03645be43e18abb7ed5fe2",
      "parents": [
        "d05c26ce690e867aabfc7d708d481e0f86f23496"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Sun Jan 18 21:32:11 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 19 16:20:15 2009 -0800"
      },
      "message": "net/9p: fid-\u003efid is used uninitialized\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6364853dabe78dda7ffdfb8803c1e56c0fff2e43",
      "tree": "b759ce142b9dc7d3bdb891f6104c22b4b83bcc94",
      "parents": [
        "6b7021ef7e1a703c7092daeceda063951b22b4f6"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Thu Jan 15 13:51:29 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 15 16:39:42 2009 -0800"
      },
      "message": "9p: disallow RDMA if RDMA CM isn\u0027t available\n\nIf INET\u003dy and INFINIBAND\u003dy, but IPV6\u003dm then INFINIBAND_ADDR_TRANS is set\nto n and the RDMA CM functions rdma_connect() et al are not built.\nHowever, the current config dependencies allow NET_9P_RDMA to be selected\nin this, which leads to a build failure.  Fix this by adding a dependency\non INFINIBAND_ADDR_TRANS to disallow NET_9P_RDMA in this case.\n\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nTested-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": "0191b625ca5a46206d2fb862bb08f36f2fcb3b31",
      "tree": "454d1842b1833d976da62abcbd5c47521ebe9bd7",
      "parents": [
        "54a696bd07c14d3b1192d03ce7269bc59b45209a",
        "eb56092fc168bf5af199d47af50c0d84a96db898"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:49:40 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:49:40 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1429 commits)\n  net: Allow dependancies of FDDI \u0026 Tokenring to be modular.\n  igb: Fix build warning when DCA is disabled.\n  net: Fix warning fallout from recent NAPI interface changes.\n  gro: Fix potential use after free\n  sfc: If AN is enabled, always read speed/duplex from the AN advertising bits\n  sfc: When disabling the NIC, close the device rather than unregistering it\n  sfc: SFT9001: Add cable diagnostics\n  sfc: Add support for multiple PHY self-tests\n  sfc: Merge top-level functions for self-tests\n  sfc: Clean up PHY mode management in loopback self-test\n  sfc: Fix unreliable link detection in some loopback modes\n  sfc: Generate unique names for per-NIC workqueues\n  802.3ad: use standard ethhdr instead of ad_header\n  802.3ad: generalize out mac address initializer\n  802.3ad: initialize ports LACPDU from const initializer\n  802.3ad: remove typedef around ad_system\n  802.3ad: turn ports is_individual into a bool\n  802.3ad: turn ports is_enabled into a bool\n  802.3ad: make ntt bool\n  ixgbe: Fix set_ringparam in ixgbe to use the same memory pools.\n  ...\n\nFixed trivial IPv4/6 address printing conflicts in fs/cifs/connect.c due\nto the conversion to %pI (in this networking merge) and the addition of\ndoing IPv6 addresses (from the earlier merge of CIFS).\n"
    },
    {
      "commit": "cf005b1d0e34d8c964347331c43de089c674a5a1",
      "tree": "c766e3fec0fa742ec38c2419bce4035e03424425",
      "parents": [
        "6c0bce37ffc8f000a516fadf6dee84579c4c8f9b"
      ],
      "author": {
        "name": "Qinghuang Feng",
        "email": "qhfeng.kernel@gmail.com",
        "time": "Fri Nov 21 17:15:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 21 17:15:03 2008 -0800"
      },
      "message": "net: remove redundant argument comments\n\nRemove redundant argument comments in files of net/*\n\nSigned-off-by: Qinghuang Feng \u003cqhfeng.kernel@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f3a5c547012a09f38f7c27b17a8e3150b69cd259",
      "tree": "4d1d47382a4a445fc7ef7431bcf5d06b7cca8539",
      "parents": [
        "e50a906e0200084f04f8f3b7c3a14b0442d1347f",
        "4e14e833ac3b97a4aa8803eea49f899adc5bb5f4"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Nov 18 18:52:37 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Nov 18 18:52:37 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tfs/cifs/misc.c\n\nMerge to resolve above, per the patch below.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n\ndiff --cc fs/cifs/misc.c\nindex ec36410,addd1dc..0000000\n--- a/fs/cifs/misc.c\n+++ b/fs/cifs/misc.c\n@@@ -347,13 -338,13 +338,13 @@@ header_assemble(struct smb_hdr *buffer\n  \t\t/*  BB Add support for establishing new tCon and SMB Session  */\n  \t\t/*      with userid/password pairs found on the smb session   */\n  \t\t/*\tfor other target tcp/ip addresses \t\tBB    */\n -\t\t\t\tif (current-\u003efsuid !\u003d treeCon-\u003eses-\u003elinux_uid) {\n +\t\t\t\tif (current_fsuid() !\u003d treeCon-\u003eses-\u003elinux_uid) {\n  \t\t\t\t\tcFYI(1, (\"Multiuser mode and UID \"\n  \t\t\t\t\t\t \"did not match tcon uid\"));\n- \t\t\t\t\tread_lock(\u0026GlobalSMBSeslock);\n- \t\t\t\t\tlist_for_each(temp_item, \u0026GlobalSMBSessionList) {\n- \t\t\t\t\t\tses \u003d list_entry(temp_item, struct cifsSesInfo, cifsSessionList);\n+ \t\t\t\t\tread_lock(\u0026cifs_tcp_ses_lock);\n+ \t\t\t\t\tlist_for_each(temp_item, \u0026treeCon-\u003eses-\u003eserver-\u003esmb_ses_list) {\n+ \t\t\t\t\t\tses \u003d list_entry(temp_item, struct cifsSesInfo, smb_ses_list);\n -\t\t\t\t\t\tif (ses-\u003elinux_uid \u003d\u003d current-\u003efsuid) {\n +\t\t\t\t\t\tif (ses-\u003elinux_uid \u003d\u003d current_fsuid()) {\n  \t\t\t\t\t\t\tif (ses-\u003eserver \u003d\u003d treeCon-\u003eses-\u003eserver) {\n  \t\t\t\t\t\t\t\tcFYI(1, (\"found matching uid substitute right smb_uid\"));\n  \t\t\t\t\t\t\t\tbuffer-\u003eUid \u003d ses-\u003eSuid;\n"
    },
    {
      "commit": "4ff429e658c00bcf5101eabbebd4f711572a64cb",
      "tree": "4f5b819feb5604f1486e3e67d8e81d623ad9aa6c",
      "parents": [
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Nov 12 13:05:17 2008 -0800"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Nov 14 16:14:27 2008 -0600"
      },
      "message": "9p: restrict RDMA usage\n\nlinux-next:\n\nMake 9p\u0027s RDMA option depend on INET since it uses Infiniband rdma_*\nfunctions and that code depends on INET.  Otherwise 9p can try to\nuse symbols which don\u0027t exist.\n\nERROR: \"rdma_destroy_id\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_connect\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_create_id\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_create_qp\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_resolve_route\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_disconnect\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_resolve_addr\" [net/9p/9pnet_rdma.ko] undefined!\n\nI used an if/endif block so that the menu items would remain\npresented together.\n\nAlso correct an article adjective.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "2b828925652340277a889cbc11b2d0637f7cdaf7",
      "tree": "32fcb3d3e466fc419fad2d3717956a5b5ad3d35a",
      "parents": [
        "3a3b7ce9336952ea7b9564d976d068a238976c9d",
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 11:29:12 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 11:29:12 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tsecurity/keys/internal.h\n\tsecurity/keys/process_keys.c\n\tsecurity/keys/request_key.c\n\nFixed conflicts above by using the non \u0027tsk\u0027 versions.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "f8b9d53a31dca2c1185232c5fe2731d99cc963c8",
      "tree": "7725eafec2f04595e439feb94c3b5ae04cf478c6",
      "parents": [
        "cd80ca8a03fd712b046028c1f66e10f3aec43eee"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:38:44 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:38:44 2008 +1100"
      },
      "message": "CRED: Wrap task credential accesses in 9P2000 filesystem\n\nWrap access to task credentials so that they can be separated more easily from\nthe task_struct during the introduction of COW creds.\n\nChange most current-\u003e(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id().\n\nChange some task-\u003ee?[ug]id to task_e?[ug]id().  In some places it makes more\nsense to use RCU directly rather than a convenient wrapper; these will be\naddressed by later patches.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nReviewed-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\nCc: Ron Minnich \u003crminnich@sandia.gov\u003e\nCc: Latchesar Ionkov \u003clucho@ionkov.net\u003e\nCc: v9fs-developer@lists.sourceforge.net\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "b0d5fdef521b1eadb3fc2c1283000af7ef0297bc",
      "tree": "67bc3ed16e1aff939e724abdd46c60fa7de02fe9",
      "parents": [
        "9f3e9bbe62b0bdbbaa7c689a68a22a7d3c1670f0"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Nov 04 20:46:46 2008 -0800"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Nov 05 13:19:07 2008 -0600"
      },
      "message": "net/9p: fix printk format warnings\n\nFix printk format warnings in net/9p.\nBuilt cleanly on 7 arches.\n\nnet/9p/client.c:820: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 4 has type \u0027u64\u0027\nnet/9p/client.c:820: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 5 has type \u0027u64\u0027\nnet/9p/client.c:867: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 4 has type \u0027u64\u0027\nnet/9p/client.c:867: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 5 has type \u0027u64\u0027\nnet/9p/client.c:932: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 5 has type \u0027u64\u0027\nnet/9p/client.c:932: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 6 has type \u0027u64\u0027\nnet/9p/client.c:982: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 4 has type \u0027u64\u0027\nnet/9p/client.c:982: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 5 has type \u0027u64\u0027\nnet/9p/client.c:1025: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 4 has type \u0027u64\u0027\nnet/9p/client.c:1025: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 5 has type \u0027u64\u0027\nnet/9p/client.c:1227: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 7 has type \u0027u64\u0027\nnet/9p/client.c:1227: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 12 has type \u0027u64\u0027\nnet/9p/client.c:1227: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 8 has type \u0027u64\u0027\nnet/9p/client.c:1227: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 13 has type \u0027u64\u0027\nnet/9p/client.c:1252: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 7 has type \u0027u64\u0027\nnet/9p/client.c:1252: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 12 has type \u0027u64\u0027\nnet/9p/client.c:1252: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 8 has type \u0027u64\u0027\nnet/9p/client.c:1252: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 13 has type \u0027u64\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "9f3e9bbe62b0bdbbaa7c689a68a22a7d3c1670f0",
      "tree": "bec9f1b0880c5d1b89d3dc297d53951c5da4231b",
      "parents": [
        "1558c6214904c636d5a37f05f84202d6cdd9cff8"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Oct 28 14:22:43 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Nov 05 13:19:07 2008 -0600"
      },
      "message": "unsigned fid-\u003efid cannot be negative\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "1558c6214904c636d5a37f05f84202d6cdd9cff8",
      "tree": "32f9693181e2690912961f5c8cf0edbe28e5f9a7",
      "parents": [
        "45abdf1c7be80d6ec3b0b14e59ee75a0d5d9fb37"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Mon Oct 27 13:15:16 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Nov 05 13:19:07 2008 -0600"
      },
      "message": "9p: rdma: remove duplicated #include\n\nRemoved duplicated #include \u003crdma/ib_verbs.h\u003e in\nnet/9p/trans_rdma.c.\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "45abdf1c7be80d6ec3b0b14e59ee75a0d5d9fb37",
      "tree": "34a5ea23b63df0da422ff161ec580f9b2ca54680",
      "parents": [
        "82b189eaaf6186b7694317632255fa87460820a0"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Thu Oct 23 16:33:25 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Nov 05 13:19:06 2008 -0600"
      },
      "message": "p9: Fix leak of waitqueue in request allocation path\n\nIf a T or R fcall cannot be allocated, the function returns an error\nbut neglects to free the wait queue that was successfully allocated.\n\nIf it comes through again a second time this wq will be overwritten\nwith a new allocation and the old allocation will be leaked.\n\nAlso, if the client is subsequently closed, the close path will\nattempt to clean up these allocations, so set the req fields to\nNULL to avoid duplicate free.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "82b189eaaf6186b7694317632255fa87460820a0",
      "tree": "06b6e37183b7ab4a0e7e9202cdb83c36504b10c5",
      "parents": [
        "cac23d6505546f4cfa42d949ec46d431a44bd39c"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Thu Oct 23 16:32:28 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Nov 05 13:19:06 2008 -0600"
      },
      "message": "9p: Remove unneeded free of fcall for Flush\n\nT and R fcall are reused until the client is destroyed. There does\nnot need to be a special case for Flush\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "cac23d6505546f4cfa42d949ec46d431a44bd39c",
      "tree": "bdeec0c970ef4cb1ebcb6e479eff0429f6381fed",
      "parents": [
        "517ac45af4b55913587279d89001171c222f22e7"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Thu Oct 23 16:31:02 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Nov 05 13:19:06 2008 -0600"
      },
      "message": "9p: Make all client spin locks IRQ safe\n\nThe client lock must be IRQ safe. Some of the lock acquisition paths\ntook regular spin locks.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "517ac45af4b55913587279d89001171c222f22e7",
      "tree": "b3f30f82d27c7b0df885152ce34e9f475f6470dd",
      "parents": [
        "75fa67706cce5272bcfc51ed646f2da21f3bdb6e"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Thu Oct 23 16:30:13 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Nov 05 13:19:06 2008 -0600"
      },
      "message": "9p: rdma: Set trans prior to requesting async connection ops\n\nThe RDMA connection manager is fundamentally asynchronous.\nSince the async callback context is the client pointer, the\ntransport in the client struct needs to be set prior to calling\nthe first async op.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "e45c5405e12c7cef93940cb7a541ab459ec0096a",
      "tree": "9855f49330da6658e505f6f51995aa216cddcdb5",
      "parents": [
        "fc79d4b104f0eb8c2a7242150eaf8756ced4c344"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Oct 22 18:54:47 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@opteron.(none)",
        "time": "Wed Oct 22 18:54:47 2008 -0500"
      },
      "message": "9p: fix sparse warnings\n\nSeveral sparse warnings were introduced by patches accepted during the merge\nwindow which weren\u0027t caught.  This patch fixes those warnings.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n"
    },
    {
      "commit": "fc79d4b104f0eb8c2a7242150eaf8756ced4c344",
      "tree": "b8e9974570ca194acc3ebd24ba7a864bba80c477",
      "parents": [
        "ea2e7996fc892e9becfed9145fdcefd59f697718"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Wed Oct 22 18:47:39 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@opteron.(none)",
        "time": "Wed Oct 22 18:47:39 2008 -0500"
      },
      "message": "9p: rdma: RDMA Transport Support for 9P\n\nThis patch implements the RDMA transport provider for 9P. It allows\nmounts to be performed over iWARP and IB capable network interfaces.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Latchesar Ionkov \u003clionkov@lanl.gov\u003e\n\n\n"
    },
    {
      "commit": "0b15a3a5285bac2a2caa4ef970410674b6dd2de5",
      "tree": "219c22a3cc1ab961bff46308e64288ed63ff034d",
      "parents": [
        "2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Oct 22 18:47:40 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@opteron.(none)",
        "time": "Wed Oct 22 18:47:40 2008 -0500"
      },
      "message": "9p: fix debug build error\n\nFixes build problem with 9p when building with debug disabled.\nAlso contains some fixes for warnings which pop up when \nCONFIG_NET_9P_DEBUG is disabled.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n"
    },
    {
      "commit": "7eb923b80c8ce16697129fb2dcdfaeabf83f0dbc",
      "tree": "0bd70a738587c58b7029e46c9508c21949601d6c",
      "parents": [
        "f0a0ac2ee50c62cf4ad9b06cf8a12435cc5ac44d"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 12:45:40 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 12:45:40 2008 -0500"
      },
      "message": "9p: add more conservative locking\n\nDuring the reorganization some of the multi-theaded locking assumptions were\naccidently relaxed.  This patch moves us back towards a more conservative \nlocking strategy.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "f0a0ac2ee50c62cf4ad9b06cf8a12435cc5ac44d",
      "tree": "6d1b42f61f3a7fc069d100b73579e42418c1ec8a",
      "parents": [
        "57c7b4e68edf3b4fe7f977db9ad437e0f7f7c382"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 12:45:23 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 12:45:23 2008 -0500"
      },
      "message": "9p: fix oops in protocol stat parsing error path.\n\nWhen we get an error on parsing a stat due to a protocol bug, \nwe can generate an oops during cleanup because we didn\u0027t \ninitialize the string pointers in the stat structure.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n"
    },
    {
      "commit": "e7f4b8f1a5893ff8296b5b581e16a0b96f60a3b5",
      "tree": "dcf52d5919d2ba1a5f7af7449839c4ada85e11cd",
      "parents": [
        "02da398b950c5d079c20afaa23f322383e96070a"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 16:20:07 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 16:20:07 2008 -0500"
      },
      "message": "9p: Improve debug support\n\nThe new debug support lacks some of the information that the previous fcprint\ncode provided -- this patch focuses on better presentation of debug data along\nwith more helpful debug along error paths.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n\n\n"
    },
    {
      "commit": "02da398b950c5d079c20afaa23f322383e96070a",
      "tree": "cbc49a6ef8a175df705e6e66627a800a26995af9",
      "parents": [
        "51a87c552dfd428e304c865e24ecbe091556f226"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 16 08:29:30 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:06:57 2008 -0500"
      },
      "message": "9p: eliminate depricated conv functions\n\nRemove depricated conv functions which have been replaced with new \nprotocol routines.\n\nThis patch also reworks the one instance of the file-system code which\ndirectly calls conversion routines (to accomplish unpacking dirreads).\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n"
    },
    {
      "commit": "51a87c552dfd428e304c865e24ecbe091556f226",
      "tree": "6e9012962e6601b559dcf15ae3228647a8581a31",
      "parents": [
        "cb198131b0e7aba755ac164744536d461e86ab82"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 16 08:30:07 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:45 2008 -0500"
      },
      "message": "9p: rework client code to use new protocol support functions\n\nNow that the new protocol functions are in place, this patch switches\nthe client code to using the new support code.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n"
    },
    {
      "commit": "cb198131b0e7aba755ac164744536d461e86ab82",
      "tree": "b6396ab16839bf2e87833c3a0cb32d710fdaa8f4",
      "parents": [
        "51d71f9f7a639c8a39401de1ec5ce9b0b6476c99"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 16 08:29:31 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:45 2008 -0500"
      },
      "message": "9p: remove unnecessary tag field from p9_req_t structure\n\nThis removes the vestigial tag field from the p9_req_t structure.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n\n\n"
    },
    {
      "commit": "51d71f9f7a639c8a39401de1ec5ce9b0b6476c99",
      "tree": "a4030ff517c58c3a3ab027417d7299daca61bbf9",
      "parents": [
        "ace51c4dd2f968f427c4627023759ae7e3786cba"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 16 08:29:31 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:44 2008 -0500"
      },
      "message": "9p: remove 9p fcall debug prints\n\nOne of the current debug options allows users to get a verbose dump of fcalls.\nThis isn\u0027t really necessary as correctly parsed protocol frames can be printed\nas part of the code in the client functions.  The consolidated printfcalls\nstructure would require new entries to be added for every extension.  This\npatch removes the debug print methods and their use.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n\n\n"
    },
    {
      "commit": "ace51c4dd2f968f427c4627023759ae7e3786cba",
      "tree": "5d3b82a8a3deb4496a40a2440305c5ace145c5c7",
      "parents": [
        "6936bf60d2c407449c09e3f28ec0301e1f937106"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 20:40:27 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:44 2008 -0500"
      },
      "message": "9p: add new protocol support code\n\nThis adds a new protocol processing support code based on Anthony Liguori\u0027s\n9p library code.  This code performs protocol marshalling/unmarshalling using\nprintf like strings to represent protocol elements.  It is my intent to use\nthem to replace the current functions in conv.c as well as the \np9_create_* functions.\n\nThis should make the client implementation much more clear, and also make it\nmuch easier to add new protocol extensions by limiting the number of places\nin which changes need to be made.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n"
    },
    {
      "commit": "6936bf60d2c407449c09e3f28ec0301e1f937106",
      "tree": "222ca66d663958ff44e7d196f17d1ed0d2cb37d6",
      "parents": [
        "06b55b464ee5b305aca75cb7d9424b184bf07f68"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 20:36:14 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:43 2008 -0500"
      },
      "message": "9p: encapsulate version function\n\nAlsmot all 9P client wire functions have their own (set of) functions.\nTversion is an exception as its encapsulated into the client_create code.\n\nThis patch moves the protocol specifics of this to a function to match the\nrest of the code.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n\n"
    },
    {
      "commit": "06b55b464ee5b305aca75cb7d9424b184bf07f68",
      "tree": "fb2bba4546ad4b800f1e49a75774b01fc6fcdb6b",
      "parents": [
        "dfb0ec2e13a906ff19a0bbfa9208caab50cfc2e3"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 20:36:15 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:43 2008 -0500"
      },
      "message": "9p: move dirread to fs layer\n\nCurrently reading a directory is implemented in the client code.\nThis function is not actually a wire operation, but a meta operation \nwhich calls read operations and processes the results.\n\nThis patch moves this functionality to the fs layer and calls component\nwire operations instead of constructing their packets.  This provides a \ncleaner separation and will help when we reorganize the client functions\nand protocol processing methods.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n\n"
    },
    {
      "commit": "fbedadc16e5c888e4df9df3b1757de4993508d35",
      "tree": "c477daf52f7a8aa2c2a0c9902b1711b6c2d32833",
      "parents": [
        "0fc9655ec67ec5d4dfd08e469e0e9f0a494bf5bc"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 20:36:16 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:43 2008 -0500"
      },
      "message": "9p: move readn meta-function from client to fs layer\n\nThere are a couple of methods in the client code which aren\u0027t actually\nwire operations.  To keep things organized cleaner, these operations are\nbeing moved to the fs layer.\n\nThis patch moves the readn meta-function (which executes multiple wire\nreads until a buffer is full) to the fs layer.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n\n"
    },
    {
      "commit": "0fc9655ec67ec5d4dfd08e469e0e9f0a494bf5bc",
      "tree": "fc67e000acb43601a0dcb9c0288a94a3d737b6a2",
      "parents": [
        "95820a36516d12dcb49d066dd3d5b187a2557612"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 20:36:17 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:42 2008 -0500"
      },
      "message": "9p: consolidate read/write functions\n\nCurrently there are two separate versions of read and write.  One for\ndealing with user buffers and the other for dealing with kernel buffers.\nThere is a tremendous amount of code duplication in the otherwise\nidentical versions of these functions.  This patch adds an additional\nuser buffer parameter to read and write and conditionalizes handling of\nthe buffer on whether the kernel buffer or the user buffer is populated.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n\n\n"
    },
    {
      "commit": "95820a36516d12dcb49d066dd3d5b187a2557612",
      "tree": "84ba5869e9f68b3c943e75feb7c634da1c61f47a",
      "parents": [
        "91b8534fa8f5e01f249b1bf8df0a2540053549ad"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 13 18:45:20 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:42 2008 -0500"
      },
      "message": "9p: drop broken unused error path from p9_conn_create()\n\nPost p9_fd_poll() error path which checks m-\u003epoll_waddr[i] for PTR_ERR\nvalue has the following problems.\n\n* It\u0027s completely unused.  Error value is set iff NULL @wait_address\n  has been specified to p9_pollwait() which is guaranteed not to\n  happen.\n\n* It dereferences @m after deallocating it (introduced by 571ffeaf and\n  spotted by Raja R Harinath.\n\n* It returned the wrong value on error.  It should return\n  poll_waddr[i] but it returnes poll_waddr (introduced by 571ffeaf).\n\n* p9_mux_poll_stop() doesn\u0027t handle PTR_ERR value.  It will try to\n  operate on the PTR_ERR value as if it\u0027s a normal pointer and cause\n  oops.\n\nAs the error path is bogus in the first place, there\u0027s no reason to\nhold onto it.  Kill it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\nCc: Raja R Harinath \u003charinath@hurrynot.org\u003e\n\n"
    },
    {
      "commit": "91b8534fa8f5e01f249b1bf8df0a2540053549ad",
      "tree": "fde6b3b63dad229108106553106995889b4f0fa7",
      "parents": [
        "1b0a763bdd5ed467d0e03b88e045000c749303fb"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 18:45:21 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:42 2008 -0500"
      },
      "message": "9p: make rpc code common and rework flush code\n\nThis code moves the rpc function to the common client base,\nreorganizes the flush code to be more simple and stable, and\nmakes the necessary adjustments to the underlying transports\nto adapt to the new structure.\n\nThis reduces the overall amount of code duplication between the\ntransports and should make adding new transports more straightforward.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "1b0a763bdd5ed467d0e03b88e045000c749303fb",
      "tree": "a0a51b999322b9e75f6a5c076420b064df71aebd",
      "parents": [
        "673d62cdaac6ffbce980a349d3174b3929ceb9e5"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 18:45:22 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:42 2008 -0500"
      },
      "message": "9p: use the rcall structure passed in the request in trans_fd read_work\n\nThis patch reworks the read_work function to enable it to directly use a passed\nin rcall structure.  This should help allow us to remove unnecessary copies\nin the future.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "673d62cdaac6ffbce980a349d3174b3929ceb9e5",
      "tree": "2917ded31ef9b3ab004c3a5575537643b34269e9",
      "parents": [
        "ff683452f7bc52d7fd653cf5e67b1134555734c7"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 18:45:22 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:42 2008 -0500"
      },
      "message": "9p: apply common request code to trans_fd\n\nApply the now common p9_req_t structure to the fd transport.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "ff683452f7bc52d7fd653cf5e67b1134555734c7",
      "tree": "b8265741ed4cb8a0e48b6ce8e696c5c8f99a85d7",
      "parents": [
        "fea511a644fb0fb938309c6ab286725ac31b87e2"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 18:45:22 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:42 2008 -0500"
      },
      "message": "9p: apply common tagpool handling to trans_fd\n\nSimplify trans_fd by using new common client tagpool structure.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "fea511a644fb0fb938309c6ab286725ac31b87e2",
      "tree": "fc9cdf7af5ad05435ea85fd52070a487930f824c",
      "parents": [
        "044c7768841f1ef39f951972d3c1e6537a535030"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 18:45:23 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:42 2008 -0500"
      },
      "message": "9p: move request management to client code\n\nThe virtio transport uses a simplified request management system\nthat I want to use for all transports.  This patch adapts and moves the\nexisiting code for managing requests to the client common code.\nLater patches will apply these mechanisms to the other transports.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "044c7768841f1ef39f951972d3c1e6537a535030",
      "tree": "daf783f7b345fe34fb1c9ee5b921c111deadc143",
      "parents": [
        "21c003687e2d1c589cf177a3ba17fd439af94850"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 18:45:23 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:41 2008 -0500"
      },
      "message": "9p: eliminate callback complexity\n\nThe current trans_fd rpc mechanisms use a dynamic callback mechanism which\nintroduces a lot of complexity which only accomodates a single special case.\nThis patch removes much of that complexity in favor of a simple exception\nmechanism to deal with flushes.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "21c003687e2d1c589cf177a3ba17fd439af94850",
      "tree": "de699ee9fe179710308b3dc20a060919b13796c6",
      "parents": [
        "5503ac565998837350f3ee1cc344c36143ea2386"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 13 18:45:24 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:41 2008 -0500"
      },
      "message": "9p: consolidate mux_rpc and request structure\n\nCurrently, trans_fd has two structures (p9_req and p9_mux-rpc)\nwhich contain mostly duplicate data.\n\nThis patch consolidates these two structures and removes p9_mux_rpc.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "5503ac565998837350f3ee1cc344c36143ea2386",
      "tree": "27144bbbc281b890b76ab75e322b3e0432442e21",
      "parents": [
        "bead27f0a87f4055f6a0fd69ded9eacced485618"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@ericvh-desktop.austin.ibm.com",
        "time": "Mon Oct 13 18:45:24 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:41 2008 -0500"
      },
      "message": "9p: remove unnecessary prototypes\n\nCleanup files by reordering functions in order to remove need for\nunnecessary function prototypes.\n\nThere are no code changes here, just functions being moved around and\nprototypes being eliminated.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "bead27f0a87f4055f6a0fd69ded9eacced485618",
      "tree": "22e4631f9b07cdcb5d520ba30a5843e859d00c47",
      "parents": [
        "8b81ef589ad1483dd977ef47fe00d4ce4d91a0ab"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@ericvh-desktop.austin.ibm.com",
        "time": "Mon Oct 13 18:45:24 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Oct 17 11:04:41 2008 -0500"
      },
      "message": "9p: remove duplicate client state\n\nNow that we are passing client state into the transport modules, remove\nduplicate state which is present in transport private structures.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    }
  ],
  "next": "8b81ef589ad1483dd977ef47fe00d4ce4d91a0ab"
}
