)]}'
{
  "log": [
    {
      "commit": "78417334b5cb6e1f915b8fdcc4fce3f1a1b4420c",
      "tree": "8e3fce9f27fd058904c0a3247a5c5ebb8df9fbe8",
      "parents": [
        "cd816a0d84377c4e87f55cbe934a23417f9f5743",
        "5f202bd5ca64132cdd7f186656bc0221f257733d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:06:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:06:54 2010 -0700"
      },
      "message": "Merge branch \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing\n\n* \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing:\n  do_coredump: Do not take BKL\n  init: Remove the BKL from startup code\n"
    },
    {
      "commit": "0d9f9e122c74583de15a86d1c660c08dc298f2c8",
      "tree": "a04ad387e231db43db112753fa2eae23754189a9",
      "parents": [
        "df44f9f4f9b5d362b5a2d1c8444fe7e6d4c42653",
        "998db52c03cd293d16a457f1b396cea932244147"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 14:24:41 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 14:24:41 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.36\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.36\u0027 of git://linux-nfs.org/~bfields/linux: (34 commits)\n  nfsd4: fix file open accounting for RDWR opens\n  nfsd: don\u0027t allow setting maxblksize after svc created\n  nfsd: initialize nfsd versions before creating svc\n  net: sunrpc: removed duplicated #include\n  nfsd41: Fix a crash when a callback is retried\n  nfsd: fix startup/shutdown order bug\n  nfsd: minor nfsd read api cleanup\n  gcc-4.6: nfsd: fix initialized but not read warnings\n  nfsd4: share file descriptors between stateid\u0027s\n  nfsd4: fix openmode checking on IO using lock stateid\n  nfsd4: miscellaneous process_open2 cleanup\n  nfsd4: don\u0027t pretend to support write delegations\n  nfsd: bypass readahead cache when have struct file\n  nfsd: minor nfsd_svc() cleanup\n  nfsd: move more into nfsd_startup()\n  nfsd: just keep single lockd reference for nfsd\n  nfsd: clean up nfsd_create_serv error handling\n  nfsd: fix error handling in __write_ports_addxprt\n  nfsd: fix error handling when starting nfsd with rpcbind down\n  nfsd4: fix v4 state shutdown error paths\n  ...\n"
    },
    {
      "commit": "df44f9f4f9b5d362b5a2d1c8444fe7e6d4c42653",
      "tree": "cb27a80199e4730a98ed6fc93411d52df0001d37",
      "parents": [
        "5df6b8e65ad0f2eaee202ff002ac00d1ac605315"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Aug 06 17:26:48 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 14:23:37 2010 -0700"
      },
      "message": "AFS: Fix the module init error handling\n\nFix the module init error handling.  There are a bunch of goto labels for\naborting the init procedure at different points and just undoing what needs\nundoing - they aren\u0027t all in the right places, however.\n\nThis can lead to an oops like the following:\n\n\tBUG: unable to handle kernel NULL pointer dereference at 0000000000000020\n\tIP: [\u003cffffffff81042a31\u003e] destroy_workqueue+0x17/0xc0\n\t...\n\tModules linked in: kafs(+) dns_resolver rxkad af_rxrpc fscache\n\n\tPid: 2171, comm: insmod Not tainted 2.6.35-cachefs+ #319 DG965RY/\n\t...\n\tProcess insmod (pid: 2171, threadinfo ffff88003ca6a000, task ffff88003dcc3050)\n\t...\n\tCall Trace:\n\t [\u003cffffffffa0055994\u003e] afs_callback_update_kill+0x10/0x12 [kafs]\n\t [\u003cffffffffa007d1c5\u003e] afs_init+0x190/0x1ce [kafs]\n\t [\u003cffffffffa007d035\u003e] ? afs_init+0x0/0x1ce [kafs]\n\t [\u003cffffffff810001ef\u003e] do_one_initcall+0x59/0x14e\n\t [\u003cffffffff8105f7ee\u003e] sys_init_module+0x9c/0x1de\n\t [\u003cffffffff81001eab\u003e] system_call_fastpath+0x16/0x1b\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5df6b8e65ad0f2eaee202ff002ac00d1ac605315",
      "tree": "2eff6606f8e39dc1fd7eb8a05feb2a9927151805",
      "parents": [
        "fe21ea18c742ab0eb8f6f8ebc543374839a02a87",
        "3dce9a5c3a39a664e372886ea86c42ae7ae33dfc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 13:19:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 13:19:36 2010 -0700"
      },
      "message": "Merge branch \u0027nfs-for-2.6.36\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027nfs-for-2.6.36\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (42 commits)\n  NFS: NFSv4.1 is no longer a \"developer only\" feature\n  NFS: NFS_V4 is no longer an EXPERIMENTAL feature\n  NFS: Fix /proc/mount for legacy binary interface\n  NFS: Fix the locking in nfs4_callback_getattr\n  SUNRPC: Defer deleting the security context until gss_do_free_ctx()\n  SUNRPC: prevent task_cleanup running on freed xprt\n  SUNRPC: Reduce asynchronous RPC task stack usage\n  SUNRPC: Move the bound cred to struct rpc_rqst\n  SUNRPC: Clean up of rpc_bindcred()\n  SUNRPC: Move remaining RPC client related task initialisation into clnt.c\n  SUNRPC: Ensure that rpc_exit() always wakes up a sleeping task\n  SUNRPC: Make the credential cache hashtable size configurable\n  SUNRPC: Store the hashtable size in struct rpc_cred_cache\n  NFS: Ensure the AUTH_UNIX credcache is allocated dynamically\n  NFS: Fix the NFS users of rpc_restart_call()\n  SUNRPC: The function rpc_restart_call() should return success/failure\n  NFSv4: Get rid of the bogus RPC_ASSASSINATED(task) checks\n  NFSv4: Clean up the process of renewing the NFSv4 lease\n  NFSv4.1: Handle NFS4ERR_DELAY on SEQUENCE correctly\n  NFS: nfs_rename() should not have to flush out writebacks\n  ...\n"
    },
    {
      "commit": "fe21ea18c742ab0eb8f6f8ebc543374839a02a87",
      "tree": "ce34b75b8b522331425b9c151cdd1e71226e8d9a",
      "parents": [
        "a57f9a3e811cf1246b394f0cc667c6bc5a52e099",
        "2d45ba381a74a743eeaa2b06c7c5c0d2bf73ba1a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 13:18:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 13:18:36 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:\n  fuse: add retrieve request\n  fuse: add store request\n  fuse: don\u0027t use atomic kmap\n"
    },
    {
      "commit": "a57f9a3e811cf1246b394f0cc667c6bc5a52e099",
      "tree": "488b4dd7cd061e7e0e059acb8443967e21051aab",
      "parents": [
        "09dc942c2a767e2d298f1cc9294bc19c7d7208c5",
        "89c0fd014d34d409a7b196667c2b9a4813b6c968"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 13:10:55 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 13:10:55 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: (45 commits)\n  nilfs2: reject filesystem with unsupported block size\n  nilfs2: avoid rec_len overflow with 64KB block size\n  nilfs2: simplify nilfs_get_page function\n  nilfs2: reject incompatible filesystem\n  nilfs2: add feature set fields to super block\n  nilfs2: clarify byte offset in super block format\n  nilfs2: apply read-ahead for nilfs_btree_lookup_contig\n  nilfs2: introduce check flag to btree node buffer\n  nilfs2: add btree get block function with readahead option\n  nilfs2: add read ahead mode to nilfs_btnode_submit_block\n  nilfs2: fix buffer head leak in nilfs_btnode_submit_block\n  nilfs2: eliminate inline keywords in btree implementation\n  nilfs2: get maximum number of child nodes from bmap object\n  nilfs2: reduce repetitive calculation of max number of child nodes\n  nilfs2: optimize calculation of min/max number of btree node children\n  nilfs2: remove redundant pointer checks in bmap lookup functions\n  nilfs2: get rid of nilfs_bmap_union\n  nilfs2: unify bmap set_target_v operations\n  nilfs2: get rid of nilfs_btree uses\n  nilfs2: get rid of nilfs_direct uses\n  ...\n"
    },
    {
      "commit": "09dc942c2a767e2d298f1cc9294bc19c7d7208c5",
      "tree": "d310c118467c90c264e953bdc320ae08394c662a",
      "parents": [
        "90e0c225968f0878e090c7ff3f88323973476cee",
        "6c7a120ac6c62316ab1fc78dfc0a7b13f3bfcbff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 13:03:53 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 13:03:53 2010 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (40 commits)\n  ext4: Adding error check after calling ext4_mb_regular_allocator()\n  ext4: Fix dirtying of journalled buffers in data\u003djournal mode\n  ext4: re-inline ext4_rec_len_(to|from)_disk functions\n  jbd2: Remove t_handle_lock from start_this_handle()\n  jbd2: Change j_state_lock to be a rwlock_t\n  jbd2: Use atomic variables to avoid taking t_handle_lock in jbd2_journal_stop\n  ext4: Add mount options in superblock\n  ext4: force block allocation on quota_off\n  ext4: fix freeze deadlock under IO\n  ext4: drop inode from orphan list if ext4_delete_inode() fails\n  ext4: check to make make sure bd_dev is set before dereferencing it\n  jbd2: Make barrier messages less scary\n  ext4: don\u0027t print scary messages for allocation failures post-abort\n  ext4: fix EFBIG edge case when writing to large non-extent file\n  ext4: fix ext4_get_blocks references\n  ext4: Always journal quota file modifications\n  ext4: Fix potential memory leak in ext4_fill_super\n  ext4: Don\u0027t error out the fs if the user tries to make a file too big\n  ext4: allocate stripe-multiple IOs on stripe boundaries\n  ext4: move aio completion after unwritten extent conversion\n  ...\n\nFix up conflicts in fs/ext4/inode.c as per Ted.\n\nFix up xfs conflicts as per earlier xfs merge.\n"
    },
    {
      "commit": "90e0c225968f0878e090c7ff3f88323973476cee",
      "tree": "30fff5a5cb18b08d40e4d496489be6ce714a6cde",
      "parents": [
        "938a73b959cf77aadc41bded3bf416b618aa20b3",
        "5f11e6a44059f728dddd8d0dbe5b4368ea93575b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:57:07 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:57:07 2010 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  ext3: Fix dirtying of journalled buffers in data\u003djournal mode\n  ext3: default to ordered mode\n  quota: Use mark_inode_dirty_sync instead of mark_inode_dirty\n  quota: Change quota error message to print out disk and function name\n  MAINTAINERS: Update entries of ext2 and ext3\n  MAINTAINERS: Update address of Andreas Dilger\n  ext3: Avoid filesystem corruption after a crash under heavy delete load\n  ext3: remove vestiges of nobh support\n  ext3: Fix set but unused variables\n  quota: clean up quota active checks\n  quota: Clean up the namespace in dqblk_xfs.h\n  quota: check quota reservation on remove_dquot_ref\n"
    },
    {
      "commit": "938a73b959cf77aadc41bded3bf416b618aa20b3",
      "tree": "812bdbf0d1dc219d55eaf0e66935a523669ca6c6",
      "parents": [
        "45480aa75b03d6705ab5ceebda9d09be22f4e928",
        "f70cb33b9c270f4f1a7f28327e7d35dbf1a6fc40"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:56:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:56:48 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:\n  fs/dlm: Drop unnecessary null test\n  dlm: use genl_register_family_with_ops()\n"
    },
    {
      "commit": "45480aa75b03d6705ab5ceebda9d09be22f4e928",
      "tree": "e8314360d01e4f2cea3a926f0f7f7d856d57c3cb",
      "parents": [
        "1fc7995d19139d6f99203b43c161968f3f554a15",
        "581b7e9fc00789782cb3bdca58db49f6f0f66608"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:56:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:56:27 2010 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6:\n  udf: super.c Fix warning: variable \u0027sbi\u0027 set but not used\n  udf: remove duplicated #include\n"
    },
    {
      "commit": "1fc7995d19139d6f99203b43c161968f3f554a15",
      "tree": "8ad219a60e85935df878f2f9927a58b84f63433e",
      "parents": [
        "3b7433b8a8a83c87972065b1852b7dcae691e464",
        "5227bbb008fa6d2efddd86170bdfac2020cf571d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:54:46 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:54:46 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  [DNS RESOLVER] Minor typo correction\n  DNS: Fixes for the DNS query module\n  cifs: Include linux/err.h for IS_ERR and PTR_ERR\n  DNS: Make AFS go to the DNS for AFSDB records for unknown cells\n  DNS: Separate out CIFS DNS Resolver code\n  cifs: account for new creduid\u003d0x%x parameter in spnego upcall string\n  cifs: reduce false positives with inode aliasing serverino autodisable\n  CIFS: Make cifs_convert_address() take a const src pointer and a length\n  cifs: show features compiled in as part of DebugData\n  cifs: update README\n\nFix up trivial conflicts in fs/cifs/cifsfs.c due to workqueue changes\n"
    },
    {
      "commit": "3b7433b8a8a83c87972065b1852b7dcae691e464",
      "tree": "93fa2c003f8baef5ab0733b53bac77961ed5240c",
      "parents": [
        "4a386c3e177ca2fbc70c9283d0b46537844763a0",
        "6ee0578b4daaea01c96b172c6aacca43fd9807a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (55 commits)\n  workqueue: mark init_workqueues() as early_initcall()\n  workqueue: explain for_each_*cwq_cpu() iterators\n  fscache: fix build on !CONFIG_SYSCTL\n  slow-work: kill it\n  gfs2: use workqueue instead of slow-work\n  drm: use workqueue instead of slow-work\n  cifs: use workqueue instead of slow-work\n  fscache: drop references to slow-work\n  fscache: convert operation to use workqueue instead of slow-work\n  fscache: convert object to use workqueue instead of slow-work\n  workqueue: fix how cpu number is stored in work-\u003edata\n  workqueue: fix mayday_mask handling on UP\n  workqueue: fix build problem on !CONFIG_SMP\n  workqueue: fix locking in retry path of maybe_create_worker()\n  async: use workqueue for worker pool\n  workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead\n  workqueue: implement unbound workqueue\n  workqueue: prepare for WQ_UNBOUND implementation\n  libata: take advantage of cmwq and remove concurrency limitations\n  workqueue: fix worker management invocation without pending works\n  ...\n\nFixed up conflicts in fs/cifs/* as per Tejun. Other trivial conflicts in\ninclude/linux/workqueue.h, kernel/trace/Kconfig and kernel/workqueue.c\n"
    },
    {
      "commit": "998db52c03cd293d16a457f1b396cea932244147",
      "tree": "6546b0752c402c458723242e3a03723e2083040b",
      "parents": [
        "7fa53cc872332b265bc5ba1266f39586f218ad4a"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@pad.home.fieldses.org",
        "time": "Sat Aug 07 09:21:41 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@pad.home.fieldses.org",
        "time": "Sat Aug 07 09:50:05 2010 -0400"
      },
      "message": "nfsd4: fix file open accounting for RDWR opens\n\nCommit f9d7562fdb9dc0ada3a7aba5dbbe9d965e2a105d \"nfsd4: share file\ndescriptors between stateid\u0027s\" didn\u0027t correctly account for O_RDWR opens.\nSymptoms include leaked files, resulting in failures to unmount and/or\nwarnings about orphaned inodes on reboot.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "7fa53cc872332b265bc5ba1266f39586f218ad4a",
      "tree": "0583a66f8665581a7a9b613f30000e9093c9ff84",
      "parents": [
        "e844a7b9805a2b74cfd34c8604f5bba3e0869305"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Aug 06 18:00:33 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Aug 06 18:00:33 2010 -0400"
      },
      "message": "nfsd: don\u0027t allow setting maxblksize after svc created\n\nIt\u0027s harmless to set this after the server is created, but also\nineffective, since the value is only used at the time of\nsvc_create_pooled().  So fail the attempt, in keeping with the pattern\nset by write_versions, write_{lease,grace}time and write_recoverydir.\n\n(This could break userspace that tried to write to nfsd/max_block_size\nbetween setting up sockets and starting the server.  However, such code\nwouldn\u0027t have worked anyway, and I don\u0027t know of any examples--rpc.nfsd\nin nfs-utils, probably the only user of the interface, doesn\u0027t do that.)\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "e844a7b9805a2b74cfd34c8604f5bba3e0869305",
      "tree": "f0270f65da19a0f6ebc50787dd9edce6a8def9d3",
      "parents": [
        "e2aa7f8304b3b5656ded8699216cc65138d03b64"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Aug 06 15:48:03 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Aug 06 17:05:40 2010 -0400"
      },
      "message": "nfsd: initialize nfsd versions before creating svc\n\nCommit 59db4a0c102e0de226a3395dbf25ea51bf845937 \"nfsd: move more into\nnfsd_startup()\" inadvertently moved nfsd_versions after\nnfsd_create_svc().  On older distributions using an rpc.nfsd that does\nnot explicitly set the list of nfsd versions, this results in\nsvc-create_pooled() being called with an empty versions array.  The\nresulting incomplete initialization leads to a NULL dereference in\nsvc_process_common() the first time a client accesses the server.\n\nMove nfsd_reset_versions() back before the svc_create_pooled(); this\ntime, put it closer to the svc_create_pooled() call, to make this\nmistake more difficult in the future.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "c18c821fd40ad0ffc199a55be874e556bf999416",
      "tree": "ba1830c90160a4f85a32552425a556b70e56bae1",
      "parents": [
        "774f8bbd9ef2e71d4ef4b89933d292091d31ca98"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Tue Jun 29 14:33:55 2010 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Aug 06 17:05:39 2010 -0400"
      },
      "message": "nfsd41: Fix a crash when a callback is retried\n\nIf a callback is retried at nfsd4_cb_recall_done() due to\nsome error, the returned rpc reply crashes here:\n\n@@ -514,6 +514,7 @@ decode_cb_sequence(struct xdr_stream *xdr, struct nfsd4_cb_sequence *res,\n \tu32 dummy;\n \t__be32 *p;\n\n +\tBUG_ON(!res);\n \tif (res-\u003ecbs_minorversion \u003d\u003d 0)\n \t\treturn 0;\n\n[BUG_ON added for demonstration]\n\nThis is because the nfsd4_cb_done_sequence() has NULLed out\nthe task-\u003etk_msg.rpc_resp pointer.\n\nAlso eventually the rpc would use the new slot without making\nsure it is free by calling nfsd41_cb_setup_sequence().\n\nThis problem was introduced by a 4.1 protocol addition patch:\n\t[0421b5c5] nfsd41: Backchannel: Implement cb_recall over NFSv4.1\n\nWhich was overlooking the possibility of an RPC callback retries.\nFor not-4.1 case redoing the _prepare is harmless.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "774f8bbd9ef2e71d4ef4b89933d292091d31ca98",
      "tree": "bbc4afb785f31727b61279b1a026768d5953d60f",
      "parents": [
        "039a87ca536a85bc169ce092e44bd57adfa1f563"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Aug 02 14:12:44 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Aug 06 17:05:30 2010 -0400"
      },
      "message": "nfsd: fix startup/shutdown order bug\n\nWe must create the server before we can call init_socks or check the\nnumber of threads.\n\nSymptoms were a NULL pointer dereference in nfsd_svc().  Problem\nidentified by Jeff Layton.\n\nAlso fix a minor cleanup-on-error case in nfsd_startup().\n\nReported-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "ab69bcd66fb4be64edfc767365cb9eb084961246",
      "tree": "f7623585aee58978fc7814460fff517ec39138f2",
      "parents": [
        "c513b67e68787eceafeede32bcd0edbee45c0006",
        "6937e8f8c0135f2325194c372ada6dc655499992"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:36:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:36:30 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (28 commits)\n  driver core: device_rename\u0027s new_name can be const\n  sysfs: Remove owner field from sysfs struct attribute\n  powerpc/pci: Remove owner field from attribute initialization in PCI bridge init\n  regulator: Remove owner field from attribute initialization in regulator core driver\n  leds: Remove owner field from attribute initialization in bd2802 driver\n  scsi: Remove owner field from attribute initialization in ARCMSR driver\n  scsi: Remove owner field from attribute initialization in LPFC driver\n  cgroupfs: create /sys/fs/cgroup to mount cgroupfs on\n  Driver core: Add BUS_NOTIFY_BIND_DRIVER\n  driver core: fix memory leak on one error path in bus_register()\n  debugfs: no longer needs to depend on SYSFS\n  sysfs: Fix one more signature discrepancy between sysfs implementation and docs.\n  sysfs: fix discrepancies between implementation and documentation\n  dcdbas: remove a redundant smi_data_buf_free in dcdbas_exit\n  dmi-id: fix a memory leak in dmi_id_init error path\n  sysfs: sysfs_chmod_file\u0027s attr can be const\n  firmware: Update hotplug script\n  Driver core: move platform device creation helpers to .init.text (if MODULE\u003dn)\n  Driver core: reduce duplicated code for platform_device creation\n  Driver core: use kmemdup in platform_device_add_resources\n  ...\n"
    },
    {
      "commit": "3dce9a5c3a39a664e372886ea86c42ae7ae33dfc",
      "tree": "064ff350d0249f9b60871e018ae17c3d32300913",
      "parents": [
        "b3edc2bc19b4856c705f4aea3f5472970b99f386"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Aug 04 14:39:16 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Aug 06 13:41:41 2010 -0400"
      },
      "message": "NFS: NFSv4.1 is no longer a \"developer only\" feature\n\nMark it as \u0027experimental\u0027 instead, since in practice, NFSv4.1 should now be\nrelatively stable.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b3edc2bc19b4856c705f4aea3f5472970b99f386",
      "tree": "07ec70d15a9658b8fdc48afb22dfba2f308d376f",
      "parents": [
        "d5eff1a3412f6d75bf28f423c5015ece8055407a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Aug 04 14:38:01 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Aug 06 13:41:40 2010 -0400"
      },
      "message": "NFS: NFS_V4 is no longer an EXPERIMENTAL feature\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d5eff1a3412f6d75bf28f423c5015ece8055407a",
      "tree": "a1e65a188bda702f93537fc3c9b92b30224ae190",
      "parents": [
        "761fe93cdfa29071879d882c92e966ae692c0048"
      ],
      "author": {
        "name": "Bryan Schumaker",
        "email": "bjschuma@netapp.com",
        "time": "Tue Aug 03 13:04:00 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Aug 06 13:41:39 2010 -0400"
      },
      "message": "NFS: Fix /proc/mount for legacy binary interface\n\nAdd a flag so we know if we mounted the NFS server using the legacy\nbinary interface.  If we used the legacy interface, then we should not\nshow the mountd options.\n\nSigned-off-by: Bryan Schumaker \u003cbjschuma@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "761fe93cdfa29071879d882c92e966ae692c0048",
      "tree": "7d4e3cbf0d17703bb3457f9a2c2cceb930e0f59d",
      "parents": [
        "0d8a374673c9bc62bc78a2d8fe64553a51542cb4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Aug 04 09:29:52 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Aug 06 13:41:39 2010 -0400"
      },
      "message": "NFS: Fix the locking in nfs4_callback_getattr\n\nThe delegation is protected by RCU now, so we need to replace the\nnfsi-\u003erwsem protection with an rcu protected section.\n\nReported-by: Fred Isaman \u003ciisaman@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4aed2fd8e3181fea7c09ba79cf64e7e3f4413bf9",
      "tree": "1f69733e5daab4915a76a41de0e4d1dc61e12cfb",
      "parents": [
        "3a3527b6461b1298cc53ce72f336346739297ac8",
        "fc9ea5a1e53ee54f681e226d735008e2a6f8f470"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (162 commits)\n  tracing/kprobes: unregister_trace_probe needs to be called under mutex\n  perf: expose event__process function\n  perf events: Fix mmap offset determination\n  perf, powerpc: fsl_emb: Restore setting perf_sample_data.period\n  perf, powerpc: Convert the FSL driver to use local64_t\n  perf tools: Don\u0027t keep unreferenced maps when unmaps are detected\n  perf session: Invalidate last_match when removing threads from rb_tree\n  perf session: Free the ref_reloc_sym memory at the right place\n  x86,mmiotrace: Add support for tracing STOS instruction\n  perf, sched migration: Librarize task states and event headers helpers\n  perf, sched migration: Librarize the GUI class\n  perf, sched migration: Make the GUI class client agnostic\n  perf, sched migration: Make it vertically scrollable\n  perf, sched migration: Parameterize cpu height and spacing\n  perf, sched migration: Fix key bindings\n  perf, sched migration: Ignore unhandled task states\n  perf, sched migration: Handle ignored migrate out events\n  perf: New migration tool overview\n  tracing: Drop cpparg() macro\n  perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call\n  ...\n\nFix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c\n"
    },
    {
      "commit": "3a3527b6461b1298cc53ce72f336346739297ac8",
      "tree": "30bea5dd7163f13d6c962888feaf53f50ead4cce",
      "parents": [
        "cc77b4db0017dab014ad7ea3d297e10f5b5bf028",
        "a53f4b61a76a7e95139b8e8abba02e9bfe87a58a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:23:07 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:23:07 2010 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  Revert \"net: Make accesses to -\u003ebr_port safe for sparse RCU\"\n  mce: convert to rcu_dereference_index_check()\n  net: Make accesses to -\u003ebr_port safe for sparse RCU\n  vfs: add fs.h to define struct file\n  lockdep: Add an in_workqueue_context() lockdep-based test function\n  rcu: add __rcu API for later sparse checking\n  rcu: add an rcu_dereference_index_check()\n  tree/tiny rcu: Add debug RCU head objects\n  mm: remove all rcu head initializations\n  fs: remove all rcu head initializations, except on_stack initializations\n  powerpc: remove all rcu head initializations\n"
    },
    {
      "commit": "31d1d48e199e99077fb30f6fb9a793be7bec756f",
      "tree": "7f9dddbd89030765f6544e5820c401849193dca8",
      "parents": [
        "1e456a124353a753e9d1fadfbf5cd459c2f197ae"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Aug 06 16:34:43 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:17:02 2010 -0700"
      },
      "message": "Fix init ordering of /dev/console vs callers of modprobe\n\nMake /dev/console get initialised before any initialisation routine that\ninvokes modprobe because if modprobe fails, it\u0027s going to want to open\n/dev/console, presumably to write an error message to.\n\nThe problem with that is that if the /dev/console driver is not yet\ninitialised, the chardev handler will call request_module() to invoke\nmodprobe, which will fail, because we never compile /dev/console as a\nmodule.\n\nThis will lead to a modprobe loop, showing the following in the kernel\nlog:\n\n\trequest_module: runaway loop modprobe char-major-5-1\n\trequest_module: runaway loop modprobe char-major-5-1\n\trequest_module: runaway loop modprobe char-major-5-1\n\trequest_module: runaway loop modprobe char-major-5-1\n\trequest_module: runaway loop modprobe char-major-5-1\n\nThis can happen, for example, when the built in md5 module can\u0027t find\nthe built in cryptomgr module (because the latter fails to initialise).\nThe md5 module comes before the call to tty_init(), presumably because\n\u0027crypto\u0027 comes before \u0027drivers\u0027 alphabetically.\n\nFix this by calling tty_init() from chrdev_init().\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "49c19400f60bbe362202d7e7b3e68cc66040d0fa",
      "tree": "c514cf3270a81a199bac36feee020a98d05db9c5",
      "parents": [
        "3317fad5e9c741e758707879c68e20de2cb08f87"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jul 02 16:54:05 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:34 2010 -0700"
      },
      "message": "sysfs: sysfs_chmod_file\u0027s attr can be const\n\nsysfs_chmod_file doesn\u0027t change the attribute it operates on, so this\nattribute can be marked const.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6c7a120ac6c62316ab1fc78dfc0a7b13f3bfcbff",
      "tree": "371f7d7050c42fbc8fb03a66233081a594df40b8",
      "parents": [
        "56d35a4cd13e7bc5eca5b2dba5a41794afb17e11"
      ],
      "author": {
        "name": "Aditya Kali",
        "email": "adityakali@google.com",
        "time": "Thu Aug 05 16:22:24 2010 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Aug 05 16:22:24 2010 -0400"
      },
      "message": "ext4: Adding error check after calling ext4_mb_regular_allocator()\n\nIf the bitmap block on disk is bad, ext4_mb_load_buddy() returns an\nerror. This error is returned to the caller,\next4_mb_regular_allocator() and then to ext4_mb_new_blocks().  But\next4_mb_new_blocks() did not check for the return value of\next4_mb_regular_allocator() and would repeatedly try to load the\nbitmap block. The fix simply catches the return value and exits out of\nthe \u0027repeat\u0027 loop after cleanup.\n\nWe also take the opportunity to clean up the error handling in\next4_mb_new_blocks().\n\nGoogle-Bug-Id: 2853530\n\nSigned-off-by: Aditya Kali \u003cadityakali@google.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "642b5123ac5ec40a28575e930a3e2ff595473e9d",
      "tree": "296d1e17f0ac7c1ef5d889a2754f26dd0aca9ba8",
      "parents": [
        "cdd854bc42b5e6c79bbbc40c6600d995ffe6e747"
      ],
      "author": {
        "name": "Satoru Takeuchi",
        "email": "takeuchi_satoru@jp.fujitsu.com",
        "time": "Thu Aug 05 11:23:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 05 13:21:23 2010 -0700"
      },
      "message": "aio: fix wrong subsystem comments\n\n - sys_io_destroy(): acutually return -EINVAL if the context pointed to\n   is invalidIndex: linux-2.6.33-rc4/fs/aio.c\n - sys_io_getevents(): An argument specifying timeout is not `when\u0027,\n   but `timeout\u0027.\n - sys_io_getevents(): Should describe what is returned if this syscall\n   succeeds.\n\nSigned-off-by: Satoru Takeuchi \u003ctakeuchi_satoru@jp.fujitsu.com\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nReviewed-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5f11e6a44059f728dddd8d0dbe5b4368ea93575b",
      "tree": "c66eed7a13b1de48d9a6539b9a7c7a27bda706c6",
      "parents": [
        "aa32a796389bedbcf1c7714385b18714a0743810"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 05 12:38:26 2010 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 05 21:28:28 2010 +0200"
      },
      "message": "ext3: Fix dirtying of journalled buffers in data\u003djournal mode\n\nIn data\u003djournal mode, we still use block_write_begin() to prepare page for\nwriting. This function can occasionally mark buffer dirty which violates\njournalling assumptions - when a buffer is part of a transaction, it should be\ndirty and a buffer can be already part of a forget list of some transaction\nwhen block_write_begin() gets called. This violation of journalling assumptions\nthen results in \"JBD: Spotted dirty metadata buffer...\" warnings.\n\nIn fact, temporary dirtying the buffer while the page is still locked does not\nreally cause problems to the journalling because we won\u0027t write the buffer\nuntil the page gets unlocked. So we just have to make sure to clear dirty bits\nbefore unlocking the page.\n\nReviewed-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "f70cb33b9c270f4f1a7f28327e7d35dbf1a6fc40",
      "tree": "92de2b2813bfcc99edff8e1eea2922227b86ca0d",
      "parents": [
        "a4d935bd97b9ccf40aa0ec59646612df8ed46640"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Tue Aug 03 23:34:16 2010 +0200"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 05 14:23:45 2010 -0500"
      },
      "message": "fs/dlm: Drop unnecessary null test\n\nhlist_for_each_entry binds its first argument to a non-null value, and thus\nany null test on the value of that argument is superfluous.\n\nThe semantic patch that makes this change is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\niterator I;\nexpression x,E,E1,E2;\nstatement S,S1,S2;\n@@\n\nI(x,...) { \u003c...\n- (x !\u003d NULL) \u0026\u0026\n  E\n  ...\u003e }\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "a4d935bd97b9ccf40aa0ec59646612df8ed46640",
      "tree": "b54f1179cb88227193fb7eeb278e82297fc68667",
      "parents": [
        "cdd854bc42b5e6c79bbbc40c6600d995ffe6e747"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Mon Jul 26 17:19:19 2010 +0800"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 05 14:22:01 2010 -0500"
      },
      "message": "dlm: use genl_register_family_with_ops()\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "56d35a4cd13e7bc5eca5b2dba5a41794afb17e11",
      "tree": "8173b2de9f0f2b596812a725ac1897efa0ba38fc",
      "parents": [
        "0cfc9255a1efb0467de2162950197750570ecec0"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 05 14:41:42 2010 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Aug 05 14:41:42 2010 -0400"
      },
      "message": "ext4: Fix dirtying of journalled buffers in data\u003djournal mode\n\nIn data\u003djournal mode, we still use block_write_begin() to prepare\npage for writing. This function can occasionally mark buffer dirty\nwhich violates journalling assumptions - when a buffer is part of\na transaction, it should be dirty and a buffer can be already part\nof a forget list of some transaction when block_write_begin()\ngets called. This violation of journalling assumptions then results\nin \"JBD: Spotted dirty metadata buffer...\" warnings.\n\nIn fact, temporary dirtying the buffer while the page is still locked\ndoes not really cause problems to the journalling because we won\u0027t write\nthe buffer until the page gets unlocked. So we just have to make sure\nto clear dirty bits before unlocking the page.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "07567a5509327bcbf2c867286eb1524447c9b954",
      "tree": "35e73b223c2def7ca130b6a58aef8e93aa2bd72a",
      "parents": [
        "1a4240f4764ac78adbf4b0ebb49b3bd8c72ffa11"
      ],
      "author": {
        "name": "Wang Lei",
        "email": "wang840925@gmail.com",
        "time": "Wed Aug 04 15:16:38 2010 +0100"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 05 17:17:51 2010 +0000"
      },
      "message": "DNS: Make AFS go to the DNS for AFSDB records for unknown cells\n\nAdd DNS query support for AFS so that it can get the IP addresses of Volume\nLocation servers from the DNS using an AFSDB record.\n\nThis requires userspace support.  /etc/request-key.conf must be configured to\ninvoke a helper for dns_resolver type keys with a subtype of \"afsdb:\" in the\ndescription.\n\nSigned-off-by: Wang Lei \u003cwang840925@gmail.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "1a4240f4764ac78adbf4b0ebb49b3bd8c72ffa11",
      "tree": "7d9de5b071e7ab8a8355bdf7902db4c0a0e812b1",
      "parents": [
        "ba5dadbf4e7b531bd7ccecffb4d3935c80a3372e"
      ],
      "author": {
        "name": "Wang Lei",
        "email": "wang840925@gmail.com",
        "time": "Wed Aug 04 15:16:33 2010 +0100"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 05 17:17:51 2010 +0000"
      },
      "message": "DNS: Separate out CIFS DNS Resolver code\n\nSeparate out the DNS resolver key type from the CIFS filesystem into its own\nmodule so that it can be made available for general use, including the AFS\nfilesystem module.\n\nThis facility makes it possible for the kernel to upcall to userspace to have\nit issue DNS requests, package up the replies and present them to the kernel\nin a useful form.  The kernel is then able to cache the DNS replies as keys\ncan be retained in keyrings.\n\nResolver keys are of type \"dns_resolver\" and have a case-insensitive\ndescription that is of the form \"[\u003ctype\u003e:]\u003cdomain_name\u003e\".  The optional \u003ctype\u003e\nindicates the particular DNS lookup and packaging that\u0027s required.  The\n\u003cdomain_name\u003e is the query to be made.\n\nIf \u003ctype\u003e isn\u0027t given, a basic hostname to IP address lookup is made, and the\nresult is stored in the key in the form of a printable string consisting of a\ncomma-separated list of IPv4 and IPv6 addresses.\n\nThis key type is supported by userspace helpers driven from /sbin/request-key\nand configured through /etc/request-key.conf.  The cifs.upcall utility is\ninvoked for UNC path server name to IP address resolution.\n\nThe CIFS functionality is encapsulated by the dns_resolve_unc_to_ip() function,\nwhich is used to resolve a UNC path to an IP address for CIFS filesystem.  This\npart remains in the CIFS module for now.\n\nSee the added Documentation/networking/dns_resolver.txt for more information.\n\nSigned-off-by: Wang Lei \u003cwang840925@gmail.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ba5dadbf4e7b531bd7ccecffb4d3935c80a3372e",
      "tree": "48b8f683464c147a2ac11c3fedda73fb66e9ef52",
      "parents": [
        "5acfec2502cf60a91dc1959e476b588ecb3a1b8a"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Aug 03 10:19:50 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 05 17:17:50 2010 +0000"
      },
      "message": "cifs: account for new creduid\u003d0x%x parameter in spnego upcall string\n\nThe commit that added the creduid\u003d0x%x parameter failed to increase the\nbuffer allocation to account for it.\n\nReported-by: J. Bruce Fields \u003cbfields@fieldses.org\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "5acfec2502cf60a91dc1959e476b588ecb3a1b8a",
      "tree": "52742d8c6643d534b37d60aad918cbe38c695665",
      "parents": [
        "67b7626a0512d12e34b38ff45e32c693cf9c79a1"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Aug 02 17:43:54 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 05 17:17:50 2010 +0000"
      },
      "message": "cifs: reduce false positives with inode aliasing serverino autodisable\n\nIt turns out that not all directory inodes with dentries on the\ni_dentry list are unusable here. We only consider them unusable if they\nare still hashed or if they have a root dentry attached.\n\nFull disclosure -- this check is inherently racy. There\u0027s nothing that\nstops someone from slapping a new dentry onto this inode just after\nthis check, or hashing an existing one that\u0027s already attached. So,\nthis is really a \"best effort\" thing to work around misbehaving servers.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "67b7626a0512d12e34b38ff45e32c693cf9c79a1",
      "tree": "b62f4274a09d0e7ceee6325c077f487c2bceca3b",
      "parents": [
        "f579903ef3e392251dc7e93cb521ddb622fbf8e0"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Jul 22 18:33:01 2010 +0100"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 05 17:17:50 2010 +0000"
      },
      "message": "CIFS: Make cifs_convert_address() take a const src pointer and a length\n\nMake cifs_convert_address() take a const src pointer and a length so that all\nthe strlen() calls in their can be cut out and to make it unnecessary to modify\nthe src string.\n\nAlso return the data length from dns_resolve_server_name_to_ip() so that a\nstrlen() can be cut out of cifs_compose_mount_options() too.\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "f579903ef3e392251dc7e93cb521ddb622fbf8e0",
      "tree": "289cbdd3b48ac5fe160ff10a62e2caee1c846884",
      "parents": [
        "95c99904f614f90797fc589c40c2050b8c1c42cb"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@novell.com",
        "time": "Fri Jul 30 18:25:56 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 05 17:17:50 2010 +0000"
      },
      "message": "cifs: show features compiled in as part of DebugData\n\nFixed the nit pointed out by Jeff.\n\nFrom: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSubject: [PATCH 1/2] cifs: show features compiled in as part of DebugData\n\nThis patch adds the features that are compiled in to the CIFS debugging data\nas shown below:\n\n\t$cat /proc/fs/cifs/DebugData\n\tDisplay Internal CIFS Data Structures for Debugging\n\t---------------------------------------------------\n\tCIFS Version 1.64\n\tFeatures: dfs fscache posix spnego xattr\n\tActive VFS Requests: 0\n\t...\n\nThis patch provides a definitive way to tell what features are currently\nenabled in the running kernel. This could also help debugging.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nCc: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "95c99904f614f90797fc589c40c2050b8c1c42cb",
      "tree": "96f9faa1b139787a098e10a5d815d187a2ede33f",
      "parents": [
        "cdd854bc42b5e6c79bbbc40c6600d995ffe6e747"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Fri Jul 30 18:01:17 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 05 17:17:50 2010 +0000"
      },
      "message": "cifs: update README\n\nUpdate the README file to reflect that now DebugData shows all\nthe features enabled.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nCc: Jeff Layton \u003cjlayton@redhat.com\u003e\n--\n fs/cifs/README |    5 +++--\n 1 files changed, 3 insertions(+), 2 deletions(-)\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0cfc9255a1efb0467de2162950197750570ecec0",
      "tree": "3bb2510d8b6d373d7db3a49bcda3cbbebd10330e",
      "parents": [
        "8dd420466c7bfc459fa04680bd5690bfc41a4553"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Aug 05 01:46:37 2010 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Aug 05 01:46:37 2010 -0400"
      },
      "message": "ext4: re-inline ext4_rec_len_(to|from)_disk functions\n\ncommit 3d0518f4, \"ext4: New rec_len encoding for very\nlarge blocksizes\" made several changes to this path, but from\na perf perspective, un-inlining ext4_rec_len_from_disk() seems\nmost significant.  This function is called from ext4_check_dir_entry(),\nwhich on a file-creation workload is called extremely often.\n\nI tested this with bonnie:\n\n# bonnie++ -u root -s 0 -f -x 200 -d /mnt/test -n 32\n\n(this does 200 iterations) and got this for the file creations:\n\next4 stock:   Average \u003d  21206.8 files/s\next4 inlined: Average \u003d  22346.7 files/s  (+5%)\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "3cfc2c42c1cbc8e238bb9c0612c0df4565e3a8b4",
      "tree": "5adc1ff2eaf64d450bf28bb6b2ce890db2567288",
      "parents": [
        "5cf65713f87775c548e3eb48dbafa32e12f28000",
        "0ea6e61122196509af82cc4f36cbdaacbefb8227"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits)\n  Documentation: update broken web addresses.\n  fix comment typo \"choosed\" -\u003e \"chosen\"\n  hostap:hostap_hw.c Fix typo in comment\n  Fix spelling contorller -\u003e controller in comments\n  Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -\u003e Fault\n  fs/Kconfig: Fix typo Userpace -\u003e Userspace\n  Removing dead MACH_U300_BS26\n  drivers/infiniband: Remove unnecessary casts of private_data\n  fs/ocfs2: Remove unnecessary casts of private_data\n  libfc: use ARRAY_SIZE\n  scsi: bfa: use ARRAY_SIZE\n  drm: i915: use ARRAY_SIZE\n  drm: drm_edid: use ARRAY_SIZE\n  synclink: use ARRAY_SIZE\n  block: cciss: use ARRAY_SIZE\n  comment typo fixes: charater \u003d\u003e character\n  fix comment typos concerning \"challenge\"\n  arm: plat-spear: fix typo in kerneldoc\n  reiserfs: typo comment fix\n  update email address\n  ...\n"
    },
    {
      "commit": "6ba74014c1ab0e37af7de6f64b4eccbbae3cb9e7",
      "tree": "8f3892fc44f1e403675a6d7e88fda5c70e56ee4c",
      "parents": [
        "5abd9ccced7a726c817dd6b5b96bc933859138d1",
        "3ff1c25927e3af61c6bf0e4ed959504058ae4565"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:47:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:47:58 2010 -0700"
      },
      "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: (1443 commits)\n  phy/marvell: add 88ec048 support\n  igb: Program MDICNFG register prior to PHY init\n  e1000e: correct MAC-PHY interconnect register offset for 82579\n  hso: Add new product ID\n  can: Add driver for esd CAN-USB/2 device\n  l2tp: fix export of header file for userspace\n  can-raw: Fix skb_orphan_try handling\n  Revert \"net: remove zap_completion_queue\"\n  net: cleanup inclusion\n  phy/marvell: add 88e1121 interface mode support\n  u32: negative offset fix\n  net: Fix a typo from \"dev\" to \"ndev\"\n  igb: Use irq_synchronize per vector when using MSI-X\n  ixgbevf: fix null pointer dereference due to filter being set for VLAN 0\n  e1000e: Fix irq_synchronize in MSI-X case\n  e1000e: register pm_qos request on hardware activation\n  ip_fragment: fix subtracting PPPOE_SES_HLEN from mtu twice\n  net: Add getsockopt support for TCP thin-streams\n  cxgb4: update driver version\n  cxgb4: add new PCI IDs\n  ...\n\nManually fix up conflicts in:\n - drivers/net/e1000e/netdev.c: due to pm_qos registration\n   infrastructure changes\n - drivers/net/phy/marvell.c: conflict between adding 88ec048 support\n   and cleaning up the IDs\n - drivers/net/wireless/ipw2x00/ipw2100.c: trivial ipw2100_pm_qos_req\n   conflict (registration change vs marking it static)\n"
    },
    {
      "commit": "e75aa85892b2ee78c79edac720868cbef16e62eb",
      "tree": "80b9ce187b207a1a817b9b4b172f86fa71d75212",
      "parents": [
        "d9b68e5e88248bb24fd4e455588bea1d56108fd6"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Aug 04 17:59:39 2010 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:17:10 2010 -0700"
      },
      "message": "block_dev: always serialize exclusive open attempts\n\nbd_prepare_to_claim() incorrectly allowed multiple attempts for\nexclusive open to progress in parallel if the attempting holders are\nidentical.  This triggered BUG_ON() as reported in the following bug.\n\n  https://bugzilla.kernel.org/show_bug.cgi?id\u003d16393\n\n__bd_abort_claiming() is used to finish claiming blocks and doesn\u0027t\nwork if multiple openers are inside a claiming block.  Allowing\nmultiple parallel open attempts to continue doesn\u0027t gain anything as\nthose are serialized down in the call chain anyway.  Fix it by always\nallowing only single open attempt in a claiming block.\n\nThis problem can easily be reproduced by adding a delay after\nbd_prepare_to_claim() and attempting to mount two partitions of a\ndisk.\n\nstable: only applicable to v2.6.35\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Markus Trippelsdorf \u003cmarkus@trippelsdorf.de\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7e6880951da86928c7f6cecf26dcb8e8d9f826da",
      "tree": "1ad8af6c52e06710f93847933c2720751100d668",
      "parents": [
        "3a09b1be53d23df780a0cd0e4087a05e2ca4a00c",
        "77c80e6b2fd049848bfd1bdab67899ad3ac407a7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 10:28:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 10:28:39 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: (90 commits)\n  AppArmor: fix build warnings for non-const use of get_task_cred\n  selinux: convert the policy type_attr_map to flex_array\n  AppArmor: Enable configuring and building of the AppArmor security module\n  TOMOYO: Use pathname specified by policy rather than execve()\n  AppArmor: update path_truncate method to latest version\n  AppArmor: core policy routines\n  AppArmor: policy routines for loading and unpacking policy\n  AppArmor: mediation of non file objects\n  AppArmor: LSM interface, and security module initialization\n  AppArmor: Enable configuring and building of the AppArmor security module\n  AppArmor: update Maintainer and Documentation\n  AppArmor: functions for domain transitions\n  AppArmor: file enforcement routines\n  AppArmor: userspace interfaces\n  AppArmor: dfa match engine\n  AppArmor: contexts used in attaching policy to system objects\n  AppArmor: basic auditing infrastructure.\n  AppArmor: misc. base functions and defines\n  TOMOYO: Update version to 2.3.0\n  TOMOYO: Fix quota check.\n  ...\n"
    },
    {
      "commit": "d790d4d583aeaed9fc6f8a9f4d9f8ce6b1c15c7f",
      "tree": "854ab394486288d40fa8179cbfaf66e8bdc44b0f",
      "parents": [
        "73b2c7165b76b20eb1290e7efebc33cfd21db1ca",
        "3a09b1be53d23df780a0cd0e4087a05e2ca4a00c"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 04 15:14:38 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 04 15:14:38 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "73b2c7165b76b20eb1290e7efebc33cfd21db1ca",
      "tree": "e16ac854bede528fde2dcf96903c9720056916ce",
      "parents": [
        "17964e9d086cd4cb15b54a71ccddd8bbacb4c00c"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Fri Jul 30 21:02:47 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 04 15:08:39 2010 +0200"
      },
      "message": "fix comment typo \"choosed\" -\u003e \"chosen\"\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "a17c2153d2e271b0cbacae9bed83b0eaa41db7e1",
      "tree": "3c5a73090987278e51aee1a9f185ebe40a00bd65",
      "parents": [
        "8572b8e2e3c5f3d990122348c4d2c64dad338611"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 31 14:29:08 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Aug 04 08:54:09 2010 -0400"
      },
      "message": "SUNRPC: Move the bound cred to struct rpc_rqst\n\nThis will allow us to save the original generic cred in rpc_message, so\nthat if we migrate from one server to another, we can generate a new bound\ncred without having to punt back to the NFS layer.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d05dd4e98f0dd30ee933e05ac9363614c47df83a",
      "tree": "1b117bc9ffae9cac6de629a85220593b718f4728",
      "parents": [
        "f1f88fc7e818c6678c6799a2edb8f1aeccc124aa"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 31 14:29:07 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 03 22:06:44 2010 -0400"
      },
      "message": "NFS: Fix the NFS users of rpc_restart_call()\n\nFix up those functions that depend on knowing whether or not\nrpc_restart_call is successful or not.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a6f03393ec86fd25523c79497a9a773bda170d1d",
      "tree": "7f13e1ebc1929fff17bda33c3bfb333979d03ac0",
      "parents": [
        "452e93523d9433f83670e7b42cbe75319c208762"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 31 14:29:07 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 03 22:06:43 2010 -0400"
      },
      "message": "NFSv4: Get rid of the bogus RPC_ASSASSINATED(task) checks\n\nThere is no real reason to have RPC_ASSASSINATED() checks in the NFS code.\nAs far as it is concerned, this is just an RPC error...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "452e93523d9433f83670e7b42cbe75319c208762",
      "tree": "343d79e89bb89db7152ff5e1c292ecf5b90d15bc",
      "parents": [
        "14516c3a30e256e8d4e7a9af271c8df644ac3222"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 31 14:29:06 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 03 22:06:42 2010 -0400"
      },
      "message": "NFSv4: Clean up the process of renewing the NFSv4 lease\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "14516c3a30e256e8d4e7a9af271c8df644ac3222",
      "tree": "ed8d43d6568fca893b7b1ebd7bc38244fc37a409",
      "parents": [
        "0a8ebba943dd89bdd57c5dab5a66932f690847d9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 31 14:29:06 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 03 22:06:42 2010 -0400"
      },
      "message": "NFSv4.1: Handle NFS4ERR_DELAY on SEQUENCE correctly\n\nIn RFC5661, an NFS4ERR_DELAY error on a SEQUENCE operation has the special\nmeaning that the server is not finished processing the request. In this\ncase we want to just retry the request without touching the slot.\n\nAlso fix a bug whereby we would fail to update the sequence id if the\nserver returned any error other than NFS_OK/NFS4ERR_DELAY.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0a8ebba943dd89bdd57c5dab5a66932f690847d9",
      "tree": "b7ef484c9ecb62ebae09c6739fe016d9954cf243",
      "parents": [
        "1b924e5f878e3cd62a20bd8dbf3b911a40185a99"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 31 14:29:06 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 03 22:06:41 2010 -0400"
      },
      "message": "NFS: nfs_rename() should not have to flush out writebacks\n\nWe don\u0027t really support nfs servers that invalidate the file handle after a\nrename, so precautions such as flushing out dirty data before renaming the\nfile are superfluous.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1b924e5f878e3cd62a20bd8dbf3b911a40185a99",
      "tree": "a24a76be037ee49900611eb9b3883adf22410236",
      "parents": [
        "af7fa16506bf9b6323e862a61e14c20555152bb3"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 31 14:29:06 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 03 22:06:40 2010 -0400"
      },
      "message": "NFS: Clean up the callers of nfs_wb_all()\n\nThere is no need to flush out writes before calling nfs_wb_all().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "af7fa16506bf9b6323e862a61e14c20555152bb3",
      "tree": "a9d5e5713d1d4662c0fb2097f506e60036404a37",
      "parents": [
        "77041ed9b49a9e10f374bfa6e482d30ee7a3d46e"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 31 14:29:06 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 03 22:06:07 2010 -0400"
      },
      "message": "NFS: Fix up the fsync code\n\nChristoph points out that the VFS will always flush out data before calling\nnfs_fsync(), so we can dispense with a full call to nfs_wb_all(), and\nreplace that with a simpler call to nfs_commit_inode().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8dd420466c7bfc459fa04680bd5690bfc41a4553",
      "tree": "6004eaaa7266979397a9d87e30066fc91d3650c3",
      "parents": [
        "a931da6ac9331a6c80dd91c199105806f2336188"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Aug 03 21:38:29 2010 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Aug 03 21:38:29 2010 -0400"
      },
      "message": "jbd2: Remove t_handle_lock from start_this_handle()\n\nThis should remove the last exclusive lock from start_this_handle(),\nso that we should now be able to start multiple transactions at the\nsame time on large SMP systems.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "a931da6ac9331a6c80dd91c199105806f2336188",
      "tree": "2d4ea766def9a98d21c2379f41e796b0e57ccd6b",
      "parents": [
        "a51dca9cd3bb4ec5a05bfb6feabf024a5c808a37"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Aug 03 21:35:12 2010 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Aug 03 21:35:12 2010 -0400"
      },
      "message": "jbd2: Change j_state_lock to be a rwlock_t\n\nLockstat reports have shown that j_state_lock is a major source of\nlock contention, especially on systems with more than 4 CPU cores.  So\nchange it to be a read/write spinlock.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "3a09b1be53d23df780a0cd0e4087a05e2ca4a00c",
      "tree": "16c4ee5593847cc96e44e95f94e3ca0e315dfb1d",
      "parents": [
        "7046e668d7973c470146fbe6635967a1b4a31bca",
        "0809f6ec18bbce54c996f5c36f4b9d371075c98b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 03 14:40:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 03 14:40:10 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw:\n  GFS2: Fix recovery stuck bug (try #2)\n  GFS2: Fix typo in stuffed file data copy handling\n  Revert \"GFS2: recovery stuck on transaction lock\"\n  GFS2: Make \"try\" lock not try quite so hard\n  GFS2: remove dependency on __GFP_NOFAIL\n  GFS2: Simplify gfs2_write_alloc_required\n  GFS2: Wait for journal id on mount if not specified on mount command line\n  GFS2: Use nobh_writepage\n"
    },
    {
      "commit": "c939f9f9d225972a60181c95df8a9aa50f8b1701",
      "tree": "06f7621294bab5862ca15fa8c3749edcfc1ead3c",
      "parents": [
        "b8b3e9058f0f1d5c5a81c7d3d46f373d5f59a82c",
        "c18de72fb3c72fdc5ca883910761af3f14d90d76"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 03 14:37:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 03 14:37:02 2010 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.infradead.org/ubifs-2.6\n\n* \u0027linux-next\u0027 of git://git.infradead.org/ubifs-2.6:\n  UBIFS: fix a memory leak on error path.\n  UBIFS: fix GC LEB recovery\n  UBIFS: use ERR_CAST\n  UBIFS: check return code\n"
    },
    {
      "commit": "b8b3e9058f0f1d5c5a81c7d3d46f373d5f59a82c",
      "tree": "1033085760392dc7e24a79bbeb276ce1a34314d0",
      "parents": [
        "51102ee5b8853d230e534cbcd0d888f0134738a3",
        "327aec03ac4c7bbf5e41ff03ac3a84c424589f27"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 03 14:36:16 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 03 14:36:16 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: (22 commits)\n  9p: fix sparse warnings in new xattr code\n  fs/9p: remove sparse warning in vfs_inode\n  fs/9p: destroy fid on failed remove\n  fs/9p: Prevent parallel rename when doing fid_lookup\n  fs/9p: Add support user. xattr\n  net/9p: Implement TXATTRCREATE 9p call\n  net/9p: Implement attrwalk 9p call\n  9p: Implement LOPEN\n  fs/9p: This patch implements TLCREATE for 9p2000.L protocol.\n  9p: Implement TMKDIR\n  9p: Implement TMKNOD\n  9p: Define and implement TSYMLINK for 9P2000.L\n  9p: Define and implement TLINK for 9P2000.L\n  9p: Define and implement TLINK for 9P2000.L\n  9p: Implement client side of setattr for 9P2000.L protocol.\n  9p: getattr client implementation for 9P2000.L protocol.\n  fs/9p: Pass the correct user credentials during attach\n  net/9p: Handle the server returned error properly\n  9p: readdir implementation for 9p2000.L\n  9p: Make use of iounit for read/write\n  ...\n"
    },
    {
      "commit": "51102ee5b8853d230e534cbcd0d888f0134738a3",
      "tree": "5a34844b3040dbc099dd0d3ebc2e6fca0bc65855",
      "parents": [
        "54161df1fb1469d66bce3a3b14d8281adbb69263",
        "6b0a2996a0c023d84bc27ec7528a6e54cb5ea264"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 03 14:33:38 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 03 14:33:38 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs: (49 commits)\n  xfs simplify and speed up direct I/O completions\n  xfs: move aio completion after unwritten extent conversion\n  direct-io: move aio_complete into -\u003eend_io\n  xfs: fix big endian build\n  xfs: clean up xfs_bmap_get_bp\n  xfs: simplify xfs_truncate_file\n  xfs: kill the b_strat callback in xfs_buf\n  xfs: remove obsolete osyncisosync mount option\n  xfs: clean up filestreams helpers\n  xfs: fix gcc 4.6 set but not read and unused statement warnings\n  xfs: Fix build when CONFIG_XFS_POSIX_ACL\u003dn\n  xfs: fix unsigned underflow in xfs_free_eofblocks\n  xfs: use GFP_NOFS for page cache allocation\n  xfs: fix memory reclaim recursion deadlock on locked inode buffer\n  xfs: fix xfs_trans_add_item() lockdep warnings\n  xfs: simplify and remove xfs_ireclaim\n  xfs: don\u0027t block on buffer read errors\n  xfs: move inode shrinker unregister even earlier\n  xfs: remove a dmapi leftover\n  xfs: writepage always has buffers\n  ...\n"
    },
    {
      "commit": "c18de72fb3c72fdc5ca883910761af3f14d90d76",
      "tree": "52a5a452b4c5ccafec443013dda03da8343eab0d",
      "parents": [
        "6fb4374f6b1b3932f3acfe9d353568d3d8599cad"
      ],
      "author": {
        "name": "Matthieu CASTET",
        "email": "matthieu.castet@parrot.com",
        "time": "Mon Aug 02 11:36:06 2010 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Aug 03 08:58:09 2010 +0300"
      },
      "message": "UBIFS: fix a memory leak on error path.\n\nIn \u0027mount_ubifs()\u0027, in case of \u0027ubifs_leb_unmap()\u0027 falure,\nfree allocated resources.\n\nSigned-off-by: Matthieu CASTET \u003cmatthieu.castet@parrot.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "327aec03ac4c7bbf5e41ff03ac3a84c424589f27",
      "tree": "60e5b49a28ea5dc3f0003961f2c6740b5bf3210b",
      "parents": [
        "ea1375333ef58298ba4d3c638f3cba982c76504d"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 11:36:18 2010 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:38 2010 -0500"
      },
      "message": "9p: fix sparse warnings in new xattr code\n\nfixes:\n\n  CHECK   fs/9p/xattr.c\n\tfs/9p/xattr.c:73:6: warning: Using plain integer as NULL pointer\n\tfs/9p/xattr.c:135:6: warning: Using plain integer as NULL pointer\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "ea1375333ef58298ba4d3c638f3cba982c76504d",
      "tree": "574814ebb504a61de0598a65bb63c242f2e81cc2",
      "parents": [
        "0b1208b1aa7a555d5ae4246bab4cd76ba3f32b2d"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Tue Jul 27 14:49:43 2010 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:37 2010 -0500"
      },
      "message": "fs/9p: remove sparse warning in vfs_inode\n\nmake v9fs_dentry_from_dir_inode static\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "a534c8d15b1f1d0f861fc2bb9e0529bd8486ec3f",
      "tree": "0451da7a61bd7e3eb5968d65beee3243f7f51b5d",
      "parents": [
        "ebf46264a004818fe5b23f0ac18ac7336897d807"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Wed Jun 30 19:18:50 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:35 2010 -0500"
      },
      "message": "fs/9p: Prevent parallel rename when doing fid_lookup\n\nDuring fid lookup we need to make sure that the dentry-\u003ed_parent doesn\u0027t\nchange so that we can safely walk the parent dentries. To ensure that\nwe need to prevent cross directory rename during fid_lookup. Add a\nper superblock rename_sem rw_semaphore to prevent parallel fid lookup and\nrename.\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": "ebf46264a004818fe5b23f0ac18ac7336897d807",
      "tree": "0b8ea6810a8e665e3b7bb97f1e85ebde7d0d9ee0",
      "parents": [
        "eda25e46161527845572131b37706a458d9270ef"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon May 31 13:22:56 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:35 2010 -0500"
      },
      "message": "fs/9p: Add support user. xattr\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": "09d34ee5f93b2e53b64ffba27bc18731e31154e1",
      "tree": "6a1abd891731247c270d42ba8d7c3b4e8b9fd4b3",
      "parents": [
        "87d7845aa0b157a62448dd3e339856f28befe1f4"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:09 2010 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:28:09 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": "9ffaf63e34821ea60b2e1c8593f968d73728f82b",
      "tree": "a2fa40eeb0cc9ae7bb1ac5dfbbd23231746290f8",
      "parents": [
        "69d4b4436b54c1a850d475697fda5ca117b09a5e"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Tue Jun 01 09:26:18 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:25:08 2010 -0500"
      },
      "message": "fs/9p: Pass the correct user credentials during attach\n\nWe need to make sure we pass the right uid value\nduring attach. dotl is similar to dotu in this regard.\nWithout this mapped security model on dotl doesn\u0027t work\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": "97e8442b0971ea6be9a495b3d03402985cfe5d6a",
      "tree": "2afd94c5c1afc34c65a28f45baa08a811479f1f0",
      "parents": [
        "cff6b8a9b81b404e8ce0257b26007c3afe625212"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Fri Jun 04 11:59:07 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 02 14:25:06 2010 -0500"
      },
      "message": "9p: Make use of iounit for read/write\n\nChange the v9fs_file_readn function to limit the maximum transfer size\nbased on the iounit or msize.\n\nAlso remove the redundant check for limiting the transfer size in\nv9fs_file_write. This check is done by p9_client_write.\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "6b0a2996a0c023d84bc27ec7528a6e54cb5ea264",
      "tree": "9fa9a85d5d871b3cb3c28daf57d8ef8f05becd66",
      "parents": [
        "209fb87a259ead17e966627b7f053d16a96898da",
        "9fe6206f400646a2322096b56c59891d530e8d51"
      ],
      "author": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon Aug 02 10:24:57 2010 -0500"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon Aug 02 10:24:57 2010 -0500"
      },
      "message": "Merge branch \u0027v2.6.35\u0027\n"
    },
    {
      "commit": "581b7e9fc00789782cb3bdca58db49f6f0f66608",
      "tree": "09760be83f7b3896a161c472083079d0a0964651",
      "parents": [
        "de67445f0e6009fd1e338eda023857b18b16e647"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Wed Jul 07 21:42:13 2010 -0700"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 02 14:57:40 2010 +0200"
      },
      "message": "udf: super.c Fix warning: variable \u0027sbi\u0027 set but not used\n\nThis fixes this warning when building the kernel:\n  CC      fs/udf/super.o\nfs/udf/super.c: In function \u0027udf_load_sequence\u0027:\nfs/udf/super.c:1582:22: warning: variable \u0027sbi\u0027 set but not used\nPlease have a look, when you have time and let me know.\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "de67445f0e6009fd1e338eda023857b18b16e647",
      "tree": "f8c350a99568ee47a3dacb47ce541798ce4a8a7b",
      "parents": [
        "9fe6206f400646a2322096b56c59891d530e8d51"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Sun May 23 01:13:09 2010 +0800"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 02 14:57:39 2010 +0200"
      },
      "message": "udf: remove duplicated #include\n\nRemove duplicated #include(\u0027s) in\n  fs/udf/file.c\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "a51dca9cd3bb4ec5a05bfb6feabf024a5c808a37",
      "tree": "31256b4fa3ec1d0e1e27196607499877c662ee86",
      "parents": [
        "8b67f04ab9de5d8f3a71aef72bf02c995a506db5"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Aug 02 08:43:25 2010 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Aug 02 08:43:25 2010 -0400"
      },
      "message": "jbd2: Use atomic variables to avoid taking t_handle_lock in jbd2_journal_stop\n\nBy using an atomic_t for t_updates and t_outstanding credits, this\nshould allow us to not need to take transaction t_handle_lock in\njbd2_journal_stop().\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "cb76d5e25008b76fb8e348c861d32659430ac3fa",
      "tree": "c3de6cdd116b1754c653b0fcb25d212b9dd69311",
      "parents": [
        "f67909cf80051e8510194a51f88c4de323b92071"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jul 26 14:25:08 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:41 2010 +0000"
      },
      "message": "cifs: fsc should not default to \"on\"\n\nI\u0027m not sure why this was merged with this flag hardcoded on, but it\nseems quite dangerous. Turn it off.\n\nAlso, mount.cifs hands unrecognized options off to the kernel so there\nshould be no need for changes there in order to support this.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "f67909cf80051e8510194a51f88c4de323b92071",
      "tree": "06a172ec4e51a4531acd810c1159dbd647036a48",
      "parents": [
        "f636a34802e3913415410c6e595df2bf84851cff"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Jul 26 18:20:16 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:40 2010 +0000"
      },
      "message": "[CIFS] remove redundant path walking in dfs_do_refmount\n\nReviewed-by: Dave Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Igor Mammedov \u003cniallain@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "f636a34802e3913415410c6e595df2bf84851cff",
      "tree": "d5d54cff34c91603f2ba17075f22dc4b57267986",
      "parents": [
        "3572d2857f61f720082740cc17e2d99b45e7af7f"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jul 26 10:29:58 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:40 2010 +0000"
      },
      "message": "cifs: ignore the \"mand\", \"nomand\" and \"_netdev\" mount options\n\nThese are all handled by the userspace mount programs, but older versions\nof mount.cifs also handed them off to the kernel. Ignore them.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "3572d2857f61f720082740cc17e2d99b45e7af7f",
      "tree": "9005ee297315f68a12d2b1c749a233300fb9807e",
      "parents": [
        "f30b9c11847cb6bf1f7aa65b5c436800621a07dd"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jul 26 10:29:57 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:40 2010 +0000"
      },
      "message": "cifs: map NT_STATUS_ERROR_WRITE_PROTECTED to -EROFS\n\nSeems like a more sensible mapping than -EIO.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "f30b9c11847cb6bf1f7aa65b5c436800621a07dd",
      "tree": "753905eaaa4999d7afc82f251f8db872753fbf1e",
      "parents": [
        "9f841593ff65d2f801c7f80c4ed0955d30103f50"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jul 19 18:00:17 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:39 2010 +0000"
      },
      "message": "cifs: don\u0027t allow cifs_iget to match inodes of the wrong type\n\nIf the type is different from what we think it should be, then don\u0027t\nmatch the existing inode.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "9f841593ff65d2f801c7f80c4ed0955d30103f50",
      "tree": "01fcebaf639b556df3fc9b42149890ba8c12f9ce",
      "parents": [
        "3e4b3e1f68c10510ec8d3076cffc5729b88f8de6"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Jul 23 20:37:53 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:39 2010 +0000"
      },
      "message": "[CIFS] relinquish fscache cookie before freeing CIFSTconInfo\n\nDoh, fix a use after free bug.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nReviewed-and-Tested-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "3e4b3e1f68c10510ec8d3076cffc5729b88f8de6",
      "tree": "bee962570f8a54547cfb67550f76874d82981fea",
      "parents": [
        "f55fdcca6bf1c17e86a270a8c0d81c6677c61222"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jul 19 18:00:17 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:39 2010 +0000"
      },
      "message": "cifs: add separate cred_uid field to sesInfo\n\nRight now, there\u0027s no clear separation between the uid that owns the\ncredentials used to do the mount and the overriding owner of the files\non that mount.\n\nAdd a separate cred_uid field that is set to the real uid\nof the mount user. Unlike the linux_uid, the uid\u003d option does not\noverride this parameter. The parm is sent to cifs.upcall, which can then\npreferentially use the creduid\u003d parm instead of the uid\u003d parm for\nfinding credentials.\n\nThis is not the only way to solve this. We could try to do all of this\nin kernel instead by having a module parameter that affects what gets\npassed in the uid\u003d field of the upcall. That said, we have a lot more\nflexibility to change things in userspace so I think it probably makes\nsense to do it this way.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "f55fdcca6bf1c17e86a270a8c0d81c6677c61222",
      "tree": "ee005fcd546b472375c5fb6c84929f1a1ce5d0e4",
      "parents": [
        "0ccd48025fe64cf01782ba3c7037654d25bd1950"
      ],
      "author": {
        "name": "Kulikov Vasiliy",
        "email": "segooon@gmail.com",
        "time": "Fri Jul 16 20:15:25 2010 +0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:39 2010 +0000"
      },
      "message": "fs: cifs: check kmalloc() result\n\nIf kmalloc() fails exit with -ENOMEM.\n\nSigned-off-by: Kulikov Vasiliy \u003csegooon@gmail.com\u003e\nAcked-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0ccd48025fe64cf01782ba3c7037654d25bd1950",
      "tree": "e264b9972c48f90bb247887ab38444be79cd0f73",
      "parents": [
        "d0e6f44e6cc3c7059e8717c452f0999aba507a38"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Jul 16 04:31:02 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:38 2010 +0000"
      },
      "message": "[CIFS] Missing ifdef\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "d0e6f44e6cc3c7059e8717c452f0999aba507a38",
      "tree": "f6195ce1ccd658fc95b60fd22e3e2c3f57d9033e",
      "parents": [
        "c5e04a3e4975d11d997528caf5d4880902fa90d8"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Jul 16 04:24:54 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:38 2010 +0000"
      },
      "message": "[CIFS] Missing line from previous commit\n\nCC: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "c5e04a3e4975d11d997528caf5d4880902fa90d8",
      "tree": "469a2f5684758cdca01face50bb392d2a6ec8bc7",
      "parents": [
        "fa1df75d4debde6d843e616df656f50a92958737"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Jul 16 04:18:36 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:38 2010 +0000"
      },
      "message": "[CIFS] Fix build break when CONFIG_CIFS_FSCACHE disabled\n\nCC: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "fa1df75d4debde6d843e616df656f50a92958737",
      "tree": "51ed23f935dcd4536417613cf88c2dcfc369fd08",
      "parents": [
        "56698236e1294848c63d4768673865ae5a9c69e0"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Mon Jul 05 18:13:36 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:37 2010 +0000"
      },
      "message": "cifs: add mount option to enable local caching\n\nAdd a mount option \u0027fsc\u0027 to enable local caching on CIFS.\n\nI considered adding a separate debug bit for caching, but it appears that\ndebugging would be relatively easier with the normal CIFS_INFO level.\n\nAs the cifs-utils (userspace) changes are not done yet, this patch enables\n\u0027fsc\u0027 by default to enable testing.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "56698236e1294848c63d4768673865ae5a9c69e0",
      "tree": "ce6d43104a236595763759fe68c26ca3089abdd1",
      "parents": [
        "9dc06558c223bbc08290917ac44c25963bc09e43"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Mon Jul 05 18:13:25 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:37 2010 +0000"
      },
      "message": "cifs: read pages from FS-Cache\n\nRead pages from a FS-Cache data storage object into a CIFS inode.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "9dc06558c223bbc08290917ac44c25963bc09e43",
      "tree": "7ffd7618faaa251c286637815db5f91d2d410467",
      "parents": [
        "85f2d6b44d7e83bdeab87df910127c6f296866cf"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Mon Jul 05 18:13:11 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:37 2010 +0000"
      },
      "message": "cifs: store pages into local cache\n\nStore pages from an CIFS inode into the data storage object associated with\nthat inode.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "85f2d6b44d7e83bdeab87df910127c6f296866cf",
      "tree": "238389c1726e212a80336551809b44b0bbedec38",
      "parents": [
        "9451a9a52f91a4c171cfaca2f6d7a2ce91867b8d"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Mon Jul 05 18:13:00 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:36 2010 +0000"
      },
      "message": "cifs: FS-Cache page management\n\nTakes care of invalidation and release of FS-Cache marked pages and also\ninvalidation of the FsCache page flag when the inode is removed.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "9451a9a52f91a4c171cfaca2f6d7a2ce91867b8d",
      "tree": "e447d252996e554a053890a75b55456b9926d602",
      "parents": [
        "d03382ce9a89dbe27cba25130f0b90c0d631d5c5"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Mon Jul 05 18:12:45 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:36 2010 +0000"
      },
      "message": "cifs: define inode-level cache object and register them\n\nDefine inode-level data storage objects (managed by cifsInodeInfo structs).\nEach inode-level object is created in a super-block level object and is itself\na data storage object in to which pages from the inode are stored.\n\nThe inode object is keyed by UniqueId. The coherency data being used is\nLastWriteTime, LastChangeTime and end of file reported by the server.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "d03382ce9a89dbe27cba25130f0b90c0d631d5c5",
      "tree": "f2561981a606a788259ad10f0ec57f9486f85da4",
      "parents": [
        "8913007e67106597fed4b9dd3787e8dca6915a83"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Mon Jul 05 18:12:27 2010 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:36 2010 +0000"
      },
      "message": "cifs: define superblock-level cache index objects and register them\n\nDefine superblock-level cache index objects (managed by cifsTconInfo structs).\nEach superblock object is created in a server-level index object and in itself\nan index into which inode-level objects are inserted.\n\nThe superblock object is keyed by sharename. The UniqueId/IndexNumber is used to\nvalidate that the exported share is the same since we accessed it last time.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "8913007e67106597fed4b9dd3787e8dca6915a83",
      "tree": "83fdd597cdf1a5a5871a5952c85d2c0766353091",
      "parents": [
        "4ff67b720c02c36e54d55b88c2931879b7db1cd2"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jul 06 20:43:08 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:35 2010 +0000"
      },
      "message": "cifs: remove unused cifsUidInfo struct\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4ff67b720c02c36e54d55b88c2931879b7db1cd2",
      "tree": "2a69a278edb4d80a9fb0760d188629fb6e8371fb",
      "parents": [
        "daf5b0b6f3f6d7b15c2600426cc6c60a0e155218"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jul 06 20:43:02 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:35 2010 +0000"
      },
      "message": "cifs: clean up cifs_find_smb_ses (try #2)\n\nThis patch replaces the earlier patch by the same name. The only\ndifference is that MAX_PASSWORD_SIZE has been increased to attempt to\nmatch the limits that windows enforces.\n\nDo a better job of matching sessions by authtype. Matching by username\nfor a Kerberos session is incorrect, and anonymous sessions need special\nhandling.\n\nAlso, in the case where we do match by username, we also need to match\nby password. That ensures that someone else doesn\u0027t \"borrow\" an existing\nsession without needing to know the password.\n\nFinally, passwords can be longer than 16 bytes. Bump MAX_PASSWORD_SIZE\nto 512 to match the size that the userspace mount helper allows.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "daf5b0b6f3f6d7b15c2600426cc6c60a0e155218",
      "tree": "9c6210671c489d493f02dd7ca1eb6799c21fd195",
      "parents": [
        "4515148ef72bfda4ce3c8754149711d9972867ce"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jul 06 20:43:02 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 02 12:40:35 2010 +0000"
      },
      "message": "cifs: match secType when searching for existing tcp session\n\nThe secType is a per-tcp session entity, but the current routine doesn\u0027t\nverify that it is acceptible when attempting to match an existing TCP\nsession.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    }
  ],
  "next": "4515148ef72bfda4ce3c8754149711d9972867ce"
}
