)]}'
{
  "log": [
    {
      "commit": "4065c802da7484fa36f8cdf10f18d087233ecb88",
      "tree": "a81d1dae07945ce0e6afb22e87c65fe9a0d44be1",
      "parents": [
        "84f30c66c3689745abbd3b9ce39816caeb9bec3b"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon May 17 07:18:58 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon May 17 20:59:21 2010 +0000"
      },
      "message": "cifs: fix noserverino handling when unix extensions are enabled\n\nThe uniqueid field sent by the server when unix extensions are enabled\nis currently used sometimes when it shouldn\u0027t be. The readdir codepath\nis correct, but most others are not. Fix it.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "84f30c66c3689745abbd3b9ce39816caeb9bec3b",
      "tree": "16b40caa4f940d7fe3f723b34f296873aced6db4",
      "parents": [
        "db19272edc93661835bf6ec9736cfd0754aa3c62"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon May 17 07:18:57 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon May 17 20:57:27 2010 +0000"
      },
      "message": "cifs: don\u0027t update uniqueid in cifs_fattr_to_inode\n\nWe use this value to find an inode within the hash bucket, so we can\u0027t\nchange this without re-hashing the inode. For now, treat this value\nas immutable.\n\nEventually, we should probably use an inode number change on a path\nbased operation to indicate that the lookup cache is invalid, but that\u0027s\na bit more code to deal with.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "db19272edc93661835bf6ec9736cfd0754aa3c62",
      "tree": "5de9dccbf2a234db5c5ba3e7c49d3ccf4af50536",
      "parents": [
        "ade275c4b6db98ae7b197cc7c6bdd73567a975c2"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon May 17 14:51:49 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon May 17 20:55:58 2010 +0000"
      },
      "message": "cifs: always revalidate hardlinked inodes when using noserverino\n\nThe old cifs_revalidate logic always revalidated hardlinked inodes.\nThis hack allowed CIFS to pass some connectathon tests when server inode\nnumbers aren\u0027t used (basic test7, in particular).\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "baa456331738b4e76a92318b62b354377a30ad80",
      "tree": "75c828a7c8a9f1b5f7f41b2e53271eafb7e561ef",
      "parents": [
        "aa3e5572c538d753dce11bf93532a75f95d22b40",
        "4462dc02842698f173f518c1f5ce79c0fb89395a"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu May 13 22:19:32 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu May 13 22:19:32 2010 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of /pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\tfs/cifs/inode.c\n"
    },
    {
      "commit": "3d69438031b00c601c991ab447cafb7d5c3c59a6",
      "tree": "f40d66a255c4169b43079252a4c96868c097ddab",
      "parents": [
        "05ce7bfe547c9fa967d9cab6c37867a9cb6fb3fa"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue May 11 14:59:55 2010 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 11 20:57:50 2010 +0000"
      },
      "message": "cifs: guard against hardlinking directories\n\nWhen we made serverino the default, we trusted that the field sent by the\nserver in the \"uniqueid\" field was actually unique. It turns out that it\nisn\u0027t reliably so.\n\nSamba, in particular, will just put the st_ino in the uniqueid field when\nunix extensions are enabled. When a share spans multiple filesystems, it\u0027s\nquite possible that there will be collisions. This is a server bug, but\nwhen the inodes in question are a directory (as is often the case) and\nthere is a collision with the root inode of the mount, the result is a\nkernel panic on umount.\n\nFix this by checking explicitly for directory inodes with the same\nuniqueid. If that is the case, then we can assume that using server inode\nnumbers will be a problem and that they should be disabled.\n\nFixes Samba bugzilla 7407\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCC: Stable \u003cstable@kernel.org\u003e\nReviewed-and-Tested-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "f19159dc5ab9ec28c3b8230689101335d98e2d68",
      "tree": "dbfe881035d52e3fb578e253a9d27d56cbb09c2f",
      "parents": [
        "b6b38f704a8193daba520493ebdaf7e819962fc8"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Apr 21 04:12:10 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Apr 21 04:12:10 2010 +0000"
      },
      "message": "[CIFS] Cleanup various minor breakage in previous cFYI cleanup\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "b6b38f704a8193daba520493ebdaf7e819962fc8",
      "tree": "c38f4557b51b33573e36817888afa2accf3da9ca",
      "parents": [
        "315e995c63a15cb4d4efdbfd70fe2db191917f7a"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Apr 21 03:50:45 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Apr 21 03:50:45 2010 +0000"
      },
      "message": "[CIFS] Neaten cERROR and cFYI macros, reduce text space\n\nNeaten cERROR and cFYI macros, reduce text space\n~2.5K\n\nConvert \u0027__FILE__ \": \" fmt\u0027 to \u0027\"%s: \" fmt\u0027, __FILE__\u0027 to save text space\nSurround macros with do {} while\nAdd parentheses to macros\nMake statement expression macro from macro with assign\nRemove now unnecessary parentheses from cFYI and cERROR uses\n\ndefconfig with CIFS support old\n$ size fs/cifs/built-in.o\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n 156012\t   1760\t    148\t 157920\t  268e0\tfs/cifs/built-in.o\n\ndefconfig with CIFS support old\n$ size fs/cifs/built-in.o\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n 153508\t   1760\t    148\t 155416\t  25f18\tfs/cifs/built-in.o\n\nallyesconfig old:\n$ size fs/cifs/built-in.o\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n 309138\t   3864\t  74824\t 387826\t  5eaf2\tfs/cifs/built-in.o\n\nallyesconfig new\n$ size fs/cifs/built-in.o\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n 305655\t   3864\t  74824\t 384343\t  5dd57\tfs/cifs/built-in.o\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "ff215713eb33c56301cf6bfec0143ddc7f22c138",
      "tree": "6b155e7d1b36b79d72f2cc67225744953e122117",
      "parents": [
        "abab095d1fd25986b910d3c46289d8fa3582cdc5"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Mar 09 20:30:42 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Mar 09 20:30:42 2010 +0000"
      },
      "message": "[CIFS] checkpatch cleanup\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "abab095d1fd25986b910d3c46289d8fa3582cdc5",
      "tree": "2b70291e5159f9a8332cbeb17b21999962eadad0",
      "parents": [
        "c8634fd3115497ac311f57be9c12f993437745cf"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Feb 12 07:44:18 2010 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Mar 09 20:22:53 2010 +0000"
      },
      "message": "cifs: add cifs_revalidate_file\n\n...to allow updating inode attributes on an existing inode by\nfilehandle. Change mmap and llseek codepaths to use that\ninstead of cifs_revalidate_dentry since they have a filehandle\nreadily available.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "df2cf170c823ba779ca339e3ede347c87f4dc6a9",
      "tree": "9ea1ababe413a518afb3de89dadeba73db082850",
      "parents": [
        "64ba9926759792cf7b95f823402e2781edd1b5d4"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Feb 12 07:44:16 2010 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sat Mar 06 04:37:05 2010 +0000"
      },
      "message": "cifs: overhaul cifs_revalidate and rename to cifs_revalidate_dentry\n\ncifs_revalidate is renamed to cifs_revalidate_dentry as a later patch\nwill add a by-filehandle variant.\n\nAdd a new \"invalid_mapping\" flag to the cifsInodeInfo that indicates\nthat the pagecache is considered invalid. Add a new routine to check\ninode attributes whenever they\u0027re updated and set that flag if the inode\nhas changed on the server.\n\ncifs_revalidate_dentry is then changed to just update the attrcache if\nneeded and then to zap the pagecache if it\u0027s not valid.\n\nThere are some other behavior changes in here as well. Open files are\nnow allowed to have their caches invalidated. I see no reason why we\u0027d\nwant to keep stale data around just because a file is open. Also,\ncifs_revalidate_cache uses the server_eof for revalidating the file\nsize since that should more closely match the size of the file on the\nserver.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "835a36ca4a4cd9da557318c0e213346644a4b2c8",
      "tree": "4e8f1231fd3f235628a77dd7bf3ce561a8b01abf",
      "parents": [
        "96c03bccc7defb1f0d486165af5c0b8590f56c11"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Feb 10 16:21:33 2010 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Feb 23 23:28:43 2010 +0000"
      },
      "message": "cifs: set server_eof in cifs_fattr_to_inode\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "31c0519f7af99ae60fd39f7f1c1f7ae1efb56760",
      "tree": "d27678094c2b077756e148024d0d3fa5891afa93",
      "parents": [
        "0cd126b504cede8a74acf7583a44eba32f9a1da1"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Feb 10 16:18:26 2010 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Feb 23 20:47:32 2010 +0000"
      },
      "message": "cifs: merge CIFSSMBQueryEA with CIFSSMBQAllEAs\n\nAdd an \"ea_name\" parameter to CIFSSMBQAllEAs. When it\u0027s set make it\nbehave like CIFSSMBQueryEA does now. The current callers of\nCIFSSMBQueryEA are converted to use CIFSSMBQAllEAs, and the old\nCIFSSMBQueryEA function is removed.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ccd4bb1beb3316de4611de24d223ad761b5a7e95",
      "tree": "9b61040312a7ef2012e27bd0db2a614fd6e3a68c",
      "parents": [
        "301a6a317797ca362951ea21da397c05236f0070"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Feb 08 17:39:58 2010 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Feb 08 17:39:58 2010 +0000"
      },
      "message": "[CIFS] Don\u0027t cache timestamps on utimes due to coarse granularity\n\nforce revalidate of the file when any of the timestamps are set since\nsome filesytem types do not have finer granularity timestamps and\nwe can not always detect which file systems round timestamps down\nto determine whether we can cache the mtime on setattr\nsamba bugzilla 3775\n\nAcked-by: Shirish Pargaonkar \u003csharishp@us.ibm.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "d014d043869cdc591f3a33243d3481fa4479c2d0",
      "tree": "63626829498e647ba058a1ce06419fe7e4d5f97d",
      "parents": [
        "6ec22f9b037fc0c2e00ddb7023fad279c365324d",
        "6070d81eb5f2d4943223c96e7609a53cdc984364"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Dec 07 18:36:35 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Dec 07 18:36:35 2009 +0100"
      },
      "message": "Merge branch \u0027for-next\u0027 into for-linus\n\nConflicts:\n\n\tkernel/irq/chip.c\n"
    },
    {
      "commit": "af901ca181d92aac3a7dc265144a9081a86d8f39",
      "tree": "380054af22521144fbe1364c3bcd55ad24c9bde4",
      "parents": [
        "972b94ffb90ea6d20c589d9a47215df103388ddd"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Nov 14 13:09:05 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:55 2009 +0100"
      },
      "message": "tree-wide: fix assorted typos all over the place\n\nThat is \"success\", \"unknown\", \"through\", \"performance\", \"[re|un]mapping\"\n, \"access\", \"default\", \"reasonable\", \"[con]currently\", \"temperature\"\n, \"channel\", \"[un]used\", \"application\", \"example\",\"hierarchy\", \"therefore\"\n, \"[over|under]flow\", \"contiguous\", \"threshold\", \"enough\" and others.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "ec06aedd44541129840ed52e6165afa3796a27bf",
      "tree": "3099a49ef7aac9ea14a921559ba067b230e33948",
      "parents": [
        "7c9abfb884b8737f0afdc8a88bcea77526f0da87"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Nov 06 14:18:29 2009 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Nov 06 22:04:37 2009 +0000"
      },
      "message": "cifs: clean up handling when server doesn\u0027t consistently support inode numbers\n\nIt\u0027s possible that a server will return a valid FileID when we query the\nFILE_INTERNAL_INFO for the root inode, but then zeroed out inode numbers\nwhen we do a FindFile with an infolevel of\nSMB_FIND_FILE_ID_FULL_DIR_INFO.\n\nIn this situation turn off querying for server inode numbers, generate a\nwarning for the user and just generate an inode number using iunique.\nOnce we generate any inode number with iunique we can no longer use any\nserver inode numbers or we risk collisions, so ensure that we don\u0027t do\nthat in cifs_get_inode_info either.\n\nCc: Stable \u003cstable@kernel.org\u003e\nReported-by: Timothy Normand Miller \u003ctheosib@gmail.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "c08d3b0e33edce28e9cfa7b64f7fe5bdeeb29248",
      "tree": "6c161cc57a2873e6f91335113192a99531901cd8",
      "parents": [
        "25d9e2d15286281ec834b829a4aaf8969011f1cd"
      ],
      "author": {
        "name": "npiggin@suse.de",
        "email": "npiggin@suse.de",
        "time": "Fri Aug 21 02:35:06 2009 +1000"
      },
      "committer": {
        "name": "al",
        "email": "al@dizzy.pdmi.ras.ru",
        "time": "Thu Sep 24 08:41:47 2009 -0400"
      },
      "message": "truncate: use new helpers\n\nUpdate some fs code to make use of new helper functions introduced\nin the previous patch. Should be no significant change in behaviour\n(except CIFS now calls send_sig under i_lock, via inode_newsize_ok).\n\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nCc: linux-nfs@vger.kernel.org\nCc: Trond.Myklebust@netapp.com\nCc: linux-cifs-client@lists.samba.org\nCc: sfrench@samba.org\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6ab409b53dcaf28f83d518a6702f904b7cee3f41",
      "tree": "050bfb690ac9df049343034681478a5bb174a823",
      "parents": [
        "1b49c5566136455764a8d17ead25784f534c202d"
      ],
      "author": {
        "name": "Dave Kleikamp",
        "email": "shaggy@linux.vnet.ibm.com",
        "time": "Mon Aug 31 11:07:12 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 01 22:35:01 2009 +0000"
      },
      "message": "cifs: Replace wrtPending with a real reference count\n\nCurrently, cifs_close() tries to wait until all I/O is complete and then\nfrees the file private data.  If I/O does not completely in a reasonable\namount of time it frees the structure anyway, leaving a potential use-\nafter-free situation.\n\nThis patch changes the wrtPending counter to a complete reference count and\nlets the last user free the structure.\n\nSigned-off-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nTested-by: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "f1230c97978f52268d8c66e6f88e54c3d2092a75",
      "tree": "3ec132331d1eb944b464be772469b464a8c6a26d",
      "parents": [
        "03aa3a49ad3592a9e4e1ab19c6da3e852288caf1"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jul 22 23:13:01 2009 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jul 22 23:13:01 2009 +0000"
      },
      "message": "[CIFS] fix sparse warning\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ce6e7fcd43aab1f77e56aa36936dd7d2d05a1ffa",
      "tree": "d76654cd10a30f12117211924fc4abf68b4fcf3d",
      "parents": [
        "aea1f7964ae6cba5eb419a958956deb9016b3341"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Jul 22 15:08:58 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jul 22 21:07:51 2009 +0000"
      },
      "message": "cifs: disable serverino if server doesn\u0027t support it\n\nA recent regression when dealing with older servers. This bug was\nintroduced when we made serverino the default...\n\nWhen the server can\u0027t provide inode numbers, disable it for the mount.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "d0c280d26de9422c9c943f8f486b9830cd9bea70",
      "tree": "1f2a3471b6d22ace11d954ddd480db539ff69939",
      "parents": [
        "aeaaf253c4dee7ff9af2f3f0595f3bb66964e944"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jul 09 01:46:44 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jul 09 23:06:04 2009 +0000"
      },
      "message": "cifs: when ATTR_READONLY is set, only clear write bits on non-directories\n\ncifs: when ATTR_READONLY is set, only clear write bits on non-directories\n\nOn windows servers, ATTR_READONLY apparently either has no meaning or\nserves as some sort of queue to certain applications for unrelated\nbehavior. This MS kbase article has details:\n\nhttp://support.microsoft.com/kb/326549/\n\nDon\u0027t clear the write bits directory mode when ATTR_READONLY is set.\n\nReported-by: pouchat@peewiki.net\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0b8f18e358384a52c1ed7fa7129c08e7eaf86bb6",
      "tree": "ba5292a38d8910c6b3a3303a3c7f88491e1708af",
      "parents": [
        "b77863bfa153e886f9f8faf1a791ba57a36efed0"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jul 09 01:46:37 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jul 09 23:05:48 2009 +0000"
      },
      "message": "cifs: convert cifs_get_inode_info and non-posix readdir to use cifs_iget\n\ncifs: convert cifs_get_inode_info and non-posix readdir to use cifs_iget\n\nRather than allocating an inode and filling it out, have\ncifs_get_inode_info fill out a cifs_fattr and call cifs_iget. This means\na pretty hefty reorganization of cifs_get_inode_info.\n\nFor the readdir codepath, add a couple of new functions for filling out\ncifs_fattr\u0027s from different FindFile response infolevels.\n\nFinally, remove cifs_new_inode since there are no more callers.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "3bbeeb3c93a961bd01b969dd4395ecac0c09db8d",
      "tree": "57f003be4cb7a78094a3806df463844371329a85",
      "parents": [
        "654cf14ac0a71c56c1f0032140c3403382ca076b"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jul 09 20:02:50 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jul 09 21:15:10 2009 +0000"
      },
      "message": "cifs: add and use CIFSSMBUnixSetFileInfo for setattr calls\n\ncifs: add and use CIFSSMBUnixSetFileInfo for setattr calls\n\nWhen there\u0027s an open filehandle, SET_FILE_INFO is apparently preferred\nover SET_PATH_INFO. Add a new variant that sets a FILE_UNIX_INFO_BASIC\ninfolevel via SET_FILE_INFO and switch cifs_setattr_unix to use the\nnew call when there\u0027s an open filehandle available.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "01ea95e3b6b16573a491ef98ad63f7a1bdcb504f",
      "tree": "a060a54d4a3fc1b08534569e2afb8d7c8d5fff37",
      "parents": [
        "c4c1bff64dfff4e6dd0936a0340f56b9284512c8"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jul 09 20:02:49 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jul 09 21:15:02 2009 +0000"
      },
      "message": "cifs: rename CIFSSMBUnixSetInfo to CIFSSMBUnixSetPathInfo\n\ncifs: rename CIFSSMBUnixSetInfo to CIFSSMBUnixSetPathInfo\n\n...in preparation of adding a SET_FILE_INFO variant.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "cc0bad7552308e8905d6ea56e6b7811fa67e716d",
      "tree": "c02a91f13a502f444330b91b36ab12f55f352268",
      "parents": [
        "d960eea974f5e500c0dcb95a934239cc1f481cfd"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Jun 25 00:56:52 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jul 01 21:26:42 2009 +0000"
      },
      "message": "cifs: add new cifs_iget function and convert unix codepath to use it\n\ncifs: add new cifs_iget function and convert unix codepath to use it\n\nIn order to unify some codepaths, introduce a common cifs_fattr struct\nfor storing inode attributes. The different codepaths (unix, legacy,\nnormal, etc...) can fill out this struct with inode info. It can then be\npassed as an arg to a common set of routines to get and update inodes.\n\nAdd a new cifs_iget function that uses iget5_locked to identify inodes.\nThis will compare inodes based on the uniqueid value in a cifs_fattr\nstruct.\n\nRather than filling out an already-created inode, have\ncifs_get_inode_info_unix instead fill out cifs_fattr and hand that off\nto cifs_iget. cifs_iget can then properly look for hardlinked inodes.\n\nOn the readdir side, add a new cifs_readdir_lookup function that spawns\npopulated dentries. Redefine FILE_UNIX_INFO so that it\u0027s basically a\nFILE_UNIX_BASIC_INFO that has a few fields wrapped around it. This\nallows us to more easily use the same function for filling out the fattr\nas the non-readdir codepath.\n\nWith this, we should then have proper hardlink detection and can\neventually get rid of some nasty CIFS-specific hacks for handing them.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0f3bc09ee1b7fcadd5bfdc5ed2e1643f658fe23d",
      "tree": "fdbbdeeefcc1b480990cb6a687387c1e232a39e0",
      "parents": [
        "f46c7234e472ceee39afea4fb5a4365843e1850a"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Thu Jun 25 18:12:34 2009 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jun 25 19:12:57 2009 +0000"
      },
      "message": "cifs: Fix incorrect return code being printed in cFYI messages\n\nFreeXid() along with freeing Xid does add a cifsFYI debug message that\nprints rc (return code) as well. In some code paths where we set/return\nerror code after calling FreeXid(), incorrect error code is being\nprinted when cifsFYI is enabled.\n\nThis could be misleading in few cases. For eg.\nIn cifs_open() if cifs_fill_filedata() returns a valid pointer to\ncifsFileInfo, FreeXid() prints rc\u003d-13 whereas 0 is actually being\nreturned. Fix this by setting rc before calling FreeXid().\n\nBasically convert\n\nFreeXid(xid);\t\t\trc \u003d -ERR;\nreturn -ERR;\t\t\u003d\u003e\tFreeXid(xid);\n\t\t\t\treturn rc;\n\n[Note that Christoph would like to replace the GetXid/FreeXid\ncalls, which are primarily used for debugging.  This seems\nlike a good longer term goal, but although there is an\nalternative tracing facility, there are no examples yet\navailable that I know of that we can use (yet) to\nconvert this cifs function entry/exit logging, and for\ncreating an identifier that we can use to correlate\nall dmesg log entries for a particular vfs operation\n(ie identify all log entries for a particular vfs\nrequest to cifs: e.g. a particular close or read or write\nor byte range lock call ... and just using the thread id\nis harder).  Eventually when a replacement\nfor this is available (e.g. when NFS switches over and various\nsamples to look at in other file systems) we can remove the\nGetXid/FreeXid macro but in the meantime multiple people\nuse this run time configurable logging all the time\nfor debugging, and Suresh\u0027s patch fixes a problem\nwhich made it harder to notice some low\nmemory problems in the log so it is worthwhile\nto fix this problem until a better logging\napproach is able to be used]\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "1bf4072da67c14d6b02cfeef02212aa5a6211df2",
      "tree": "610f12379929abda22be85fda824efc55626f60b",
      "parents": [
        "c5077ec42303e07c2c685b0f6cb8eee0f2c7751c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed May 27 09:37:33 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu May 28 17:08:02 2009 +0000"
      },
      "message": "cifs: reorganize get_cifs_acl\n\nThus spake Christoph:\n\n\"But this whole set_cifs_acl function is a real mess anyway and needs\nsome splitting up.\"\n\nWith this change too, it\u0027s possible to call acl_to_uid_mode() with a\nNULL inode pointer. That (or something close to it) will eventually be\nnecessary when cifs_get_inode_info is reorganized.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "bd433d4cf4d8593a5f1764776b91f1794fce5a77",
      "tree": "49656dd0ef08792dfd86db25216a4d04211b923f",
      "parents": [
        "c4a2c08db7d976c2e23a97da5d69ec7c9701034d"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed May 27 09:37:34 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu May 28 14:57:29 2009 +0000"
      },
      "message": "cifs: rename cifs_iget to cifs_root_iget\n\nThe current cifs_iget isn\u0027t suitable for anything but the root inode.\nRename it with a more appropriate name.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "07119a4df8c8c77d888f2f46964ea9512ea84ff8",
      "tree": "546a3c2e66b60db890421c83106d5f6329e9ffce",
      "parents": [
        "f55ed1a83d099f275c9560ad7d4c4700d1e54bdd"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed May 27 09:37:33 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu May 28 14:32:31 2009 +0000"
      },
      "message": "cifs: have cifs_NTtimeToUnix take a little-endian arg\n\n...and just have the function call le64_to_cpu.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ff6945279d45edd8f6b0a5ddb1ef16cecce3ea9c",
      "tree": "dc27dca04c8a1b97e94aba02d5708a8cb20cda82",
      "parents": [
        "ff54250a0ebab7f90a5f848a0ba63f999830c872"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Apr 20 19:45:13 2009 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Apr 20 19:45:13 2009 +0000"
      },
      "message": "[CIFS] Make cifs_unlink consistent in checks for null inode\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "fc6f394332ef1bf6ff5fbeaba0f2cd7a3c7971b6",
      "tree": "86cccb6f28f84355d348bad27fa55d5c377d6660",
      "parents": [
        "22c9d52bc03b880045ab1081890a38f11b272ae7"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Apr 17 11:45:30 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 17 21:08:15 2009 +0000"
      },
      "message": "cifs: when renaming don\u0027t try to unlink negative dentry\n\nWhen attempting to rename a file on a read-only share, the kernel can\ncall cifs_unlink on a negative dentry, which causes an oops. Only try\nto unlink the file if it\u0027s a positive dentry.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nTested-by: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\nCC: Stable \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "fbec9ab952d4810960e620035c8e95f0fbbae4be",
      "tree": "e4d8ef8e0fbe2703d98390d96151cbf40d32f434",
      "parents": [
        "d036f50fc202e1a851a25dc5edc215ebd0086201"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Apr 03 13:44:00 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 17 01:26:49 2009 +0000"
      },
      "message": "cifs: vary timeout on writes past EOF based on offset (try #5)\n\nThis is the fourth version of this patch:\n\nThe first three generated a compiler warning asking for explicit curly\nbraces.\n\nThe first two didn\u0027t handle update the size correctly when writes that\ndidn\u0027t start at the eof were done.\n\nThe first patch also didn\u0027t update the size correctly when it explicitly\nset via truncate().\n\nThis patch adds code to track the client\u0027s current understanding of the\nsize of the file on the server separate from the i_size, and then to use\nthis info to semi-intelligently set the timeout for writes past the EOF.\n\nThis helps prevent timeouts when trying to write large, sparse files on\nwindows servers.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "85a6dac54a7e28112488b02523202985edc7e639",
      "tree": "141a35196516dc428fe2891b7c7da02d0133ecad",
      "parents": [
        "74496d365ad171d11f21da4a8be71c945f6ec825"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Apr 01 05:22:00 2009 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 17 01:26:48 2009 +0000"
      },
      "message": "[CIFS] Endian convert UniqueId when reporting inode numbers from server files\n\nJeff made a good point that we should endian convert the UniqueId when we use\nit to set i_ino Even though this value is opaque to the client, when comparing\nthe inode numbers of the same server file from two different clients (one\nbig endian, one little endian) or when we compare a big endian client\u0027s view\nof i_ino with what the server thinks - we should get the same value\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0f4d634c59a4e062bef81c00d9e63333f2a83b46",
      "tree": "b71dbcddf45eee405ea9bb615ef621b9a09a9994",
      "parents": [
        "20d9207849d5abe60461841b3c3724f6e7c9d33e"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Mar 26 13:35:37 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 17 01:26:48 2009 +0000"
      },
      "message": "cifs: flush data on any setattr\n\nWe already flush all the dirty pages for an inode before doing\nATTR_SIZE and ATTR_MTIME changes. There\u0027s another problem though -- if\nwe change the mode so that the file becomes read-only then we may not\nbe able to write data to it after a reconnect.\n\nFix this by just going back to flushing all the dirty data on any\nsetattr call. There are probably some cases that can be optimized out,\nbut I\u0027m not sure they\u0027re worthwhile and we need to consider them more\ncarefully to make sure that we don\u0027t cause regressions if we have\nto reconnect before writeback occurs.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ce3b0f8d5c2203301fc87f3aaaed73e5819e2a48",
      "tree": "ab952affafe18e604f6aaf6b13315b9435588e60",
      "parents": [
        "f1191b50ec11c8e2ca766d6d99eb5bb9d2c084a3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 29 19:08:22 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 31 23:00:26 2009 -0400"
      },
      "message": "New helper - current_umask()\n\ncurrent-\u003efs-\u003eumask is what most of fs_struct users are doing.\nPut that into a helper function.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1adcb71092f6461c4002ccf29d316f6da3e1f39b",
      "tree": "bc2238c4e473542f0b18bec7433f92d58d53b216",
      "parents": [
        "4717bed6806dab0270e5bfbc45e9f999e63ededd"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Feb 25 14:19:56 2009 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Mar 12 01:36:21 2009 +0000"
      },
      "message": "[CIFS] add extra null attr check\n\nAlthough attr \u003d\u003d NULL can not happen, this makes cifs_set_file_info safer\nin the future since it may not be obvious that the caller can not set\nattr to NULL.\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "44f68fadd865bb288ebdcea2b602f0b1cab27a0c",
      "tree": "5b8a7bc718bf9cbb0ae53dd48c95ceaaa98873ce",
      "parents": [
        "950ec52880fab89b957c7dc45e8b8476dd63741f"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Feb 11 08:08:28 2009 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sat Feb 21 03:37:08 2009 +0000"
      },
      "message": "cifs: posix fill in inode needed by posix open\n\nfunction needed to prepare for posix open\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "950ec52880fab89b957c7dc45e8b8476dd63741f",
      "tree": "dfb8bd4bdf0e455fefd453c4e899276641a60394",
      "parents": [
        "132ac7b77cc95a22d6118d327c96586759fbf006"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Feb 11 08:08:26 2009 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sat Feb 21 03:37:08 2009 +0000"
      },
      "message": "cifs: properly handle case where CIFSGetSrvInodeNumber fails\n\n...if it does then we pass a pointer to an unintialized variable for\nthe inode number to cifs_new_inode. Have it pass a NULL pointer instead.\n\nAlso tweak the function prototypes to reduce the amount of casting.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "132ac7b77cc95a22d6118d327c96586759fbf006",
      "tree": "37e1211723408f2aef2b71bfdaf34a596e675d8d",
      "parents": [
        "e4cce94c9c8797b08faf6a79396df4d175e377fa"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Feb 10 07:33:57 2009 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sat Feb 21 03:37:07 2009 +0000"
      },
      "message": "cifs: refactor new_inode() calls and inode initialization\n\nMove new inode creation into a separate routine and refactor the\ncallers to take advantage of it.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "e4cce94c9c8797b08faf6a79396df4d175e377fa",
      "tree": "6eb306603652bf08ca10fef4f899332f30d71e09",
      "parents": [
        "e1f81c8a417be466e85a38b61679aa6860ec7331"
      ],
      "author": {
        "name": "Igor Mammedov",
        "email": "niallain@gmail.com",
        "time": "Tue Feb 10 14:10:26 2009 +0300"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sat Feb 21 03:36:21 2009 +0000"
      },
      "message": "[CIFS] Prevent OOPs when mounting with remote prefixpath.\n\nFixes OOPs with message \u0027kernel BUG at fs/cifs/cifs_dfs_ref.c:274!\u0027.\nChecks if the prefixpath in an accesible while we are still in cifs_mount\nand fails with reporting a error if we can\u0027t access the prefixpath\n\nShould fix Samba bugs 6086 and 5861 and kernel bug 12192\n\nSigned-off-by: Igor Mammedov \u003cniallain@gmail.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "42c245447c8c3f998dfe880aba18b6e5129d2976",
      "tree": "430af06da69c1d518d9e6af0d577742ec27ed63d",
      "parents": [
        "6a7f8d36c00ab7adef5fb633f7805c91e8c1e139"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Jan 13 22:03:55 2009 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Jan 29 03:32:12 2009 +0000"
      },
      "message": "[CIFS] revalidate parent inode when rmdir done within that directory\n\nWhen a search is pending of a parent directory, and a child directory\nwithin it is removed, we need to reset the parent directory\u0027s time\nso that we don\u0027t reuse the (now stale) search results.\n\nThanks to Gunter Kukkukk for reporting this:\n\n\u003e got the following failure notification on irc #samba:\n\u003e\n\u003e A user was updating from subversion 1.4 to 1.5, where the\n\u003e repository is located on a samba share (independent of\n\u003e unix extensions \u003d Yes or No).\n\u003e svn 1.4 did work, 1.5 does not.\n\u003e\n\u003e The user did a lot of stracing of subversion - and wrote a\n\u003e testapplet to simulate the failing behaviour.\n\u003e I\u0027ve converted the C++ source to C and added some error cases.\n\u003e\n\u003e When using \"./testdir\" on a local file system, \"result2\"\n\u003e is always (nil) as expected - cifs vfs behaves different here!\n\u003e\n\u003e   ./testdir /mnt/cifs/mounted/share\n\u003e\n\u003e returns a (failing) valid pointer.\n\nAcked-by: Dave Kleikamp \u003cshaggy@us.ibm.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "acfa4380efe77e290d3a96b11cd4c9f24f4fbb18",
      "tree": "d656232c7ef39c83681c2de4c8e28ba439242f66",
      "parents": [
        "9742df331deb3fce95b321f38d4ea0c4e75edb63"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 04 10:06:33 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:28 2009 -0500"
      },
      "message": "inode-\u003ei_op is never NULL\n\nWe used to have rather schizophrenic set of checks for NULL -\u003ei_op even\nthough it had been eliminated years ago.  You\u0027d need to go out of your\nway to set it to NULL explicitly _and_ a bunch of code would die on\nsuch inodes anyway.  After killing two remaining places that still\ndid that bogosity, all that crap can go away.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "54a696bd07c14d3b1192d03ce7269bc59b45209a",
      "tree": "2da3a0ce28e08bde17a0fba8bb807480849cf410",
      "parents": [
        "1d248b2593e92db6c51ca07235985a95c625a93f",
        "359d67d6ad054ae11ad459665fdfb883aca87782"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:37:14 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:37:14 2008 -0800"
      },
      "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: (31 commits)\n  [CIFS] Remove redundant test\n  [CIFS] make sure that DFS pathnames are properly formed\n  Remove an already-checked error condition in SendReceiveBlockingLock\n  Streamline SendReceiveBlockingLock: Use \"goto out:\" in an error condition\n  Streamline SendReceiveBlockingLock: Use \"goto out:\" in an error condition\n  [CIFS] Streamline SendReceive[2] by using \"goto out:\" in an error condition\n  Slightly streamline SendReceive[2]\n  Check the return value of cifs_sign_smb[2]\n  [CIFS] Cleanup: Move the check for too large R/W requests\n  [CIFS] Slightly simplify wait_for_free_request(), remove an unnecessary \"else\" branch\n  Simplify allocate_mid() slightly: Remove some unnecessary \"else\" branches\n  [CIFS] In SendReceive, move consistency check out of the mutexed region\n  cifs: store password in tcon\n  cifs: have calc_lanman_hash take more granular args\n  cifs: zero out session password before freeing it\n  cifs: fix wait_for_response to time out sleeping processes correctly\n  [CIFS] Can not mount with prefixpath if root directory of share is inaccessible\n  [CIFS] various minor cleanups pointed out by checkpatch script\n  [CIFS] fix typo\n  [CIFS] remove sparse warning\n  ...\n\nFix trivial conflict in fs/cifs/cifs_fs_sb.h due to comment changes for\nthe CIFS_MOUNT_xyz bit definitions between cifs updates and security\nupdates.\n"
    },
    {
      "commit": "8be0ed44c2fa4afcf2c6d2fb3102c926e9f989df",
      "tree": "d0d003c8c9f12b865f0bf8f2015134d7b7031ee5",
      "parents": [
        "61e748015866e48aff91284e3d300c6e3035a87a"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Dec 05 19:14:12 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Dec 26 02:29:11 2008 +0000"
      },
      "message": "[CIFS] Can not mount with prefixpath if root directory of share is inaccessible\n\nWindows allows you to deny access to the top of a share, but permit access to\na directory lower in the path.  With the prefixpath feature of cifs\n(ie mounting \\\\server\\share\\directory\\subdirectory\\etc.) this should have\nworked if the user specified a prefixpath which put the root of the mount\nat a directory to which he had access, but we still were doing a lookup\non the root of the share (null path) when we should have been doing it on\nthe prefixpath subdirectory.\n\nThis fixes Samba bug # 5925\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "a001e5b558f25eb1e588522d73ac949b643b7a37",
      "tree": "96370a4535bd0d7b3e9908f04b58a8b3e94ed908",
      "parents": [
        "1109b07b7dcb938de7a0d65efc1b4739dc4e9787"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:38:47 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:38:47 2008 +1100"
      },
      "message": "CRED: Wrap task credential accesses in the CIFS filesystem\n\nWrap access to task credentials so that they can be separated more easily from\nthe task_struct during the introduction of COW creds.\n\nChange most current-\u003e(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id().\n\nChange some task-\u003ee?[ug]id to task_e?[ug]id().  In some places it makes more\nsense to use RCU directly rather than a convenient wrapper; these will be\naddressed by later patches.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Steve French \u003csfrench@samba.org\u003e\nCc: linux-cifs-client@lists.samba.org\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "ae6884a9da56f8921e432e663b4ccb4a1851b2ea",
      "tree": "ec80aca419ad61b7585ef0da64fac4d968ced224",
      "parents": [
        "61de800d33af585cb7e6f27b5cdd51029c6855cb"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Nov 03 14:05:08 2008 -0500"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Nov 03 18:31:05 2008 +0000"
      },
      "message": "cifs: fix renaming one hardlink on top of another\n\ncifs: fix renaming one hardlink on top of another\n\nPOSIX says that renaming one hardlink on top of another to the same\ninode is a no-op. We had the logic mostly right, but forgot to clear\nthe return code.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "8d281efb67463fe8aac8f6e10b31492fc218bf2b",
      "tree": "72b5642a48725656f2d1edac506ab5d2152de648",
      "parents": [
        "84210e9120a8c01a14379ba1f9a9b0f963641d94"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 22 13:57:01 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Oct 23 04:50:17 2008 +0000"
      },
      "message": "cifs: fix unlinking of rename target when server doesn\u0027t support open file renames\n\ncifs: fix unlinking of rename target when server doesn\u0027t support open file renames\n\nThe patch to make cifs_rename undoable broke renaming one file on top of\nanother when the server doesn\u0027t support busy file renames. Remove the\ncode that uses busy file renames to unlink the target file, and just\nhave it call cifs_unlink. If the rename of the source file fails, then\nthe unlink won\u0027t be undoable, but hopefully that\u0027s rare enough that it\nwon\u0027t be a problem.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "14121bdccc17b8c0e4368a9c0e4f82c3dd47f240",
      "tree": "78489a5a1bd99c542bd5f187c999e6be53691198",
      "parents": [
        "413460980ea7796582bce672be85879be0865ada"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Oct 20 14:45:22 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Oct 20 18:44:13 2008 +0000"
      },
      "message": "cifs: make cifs_rename handle -EACCES errors\n\ncifs: make cifs_rename handle -EACCES errors\n\nSome servers seem to return -EACCES when attempting to rename one\nopen file on top of another. Refactor the cifs_rename logic to\nattempt to rename the target file out of the way in this situation.\n\nThis also fixes the \"unlink_target\" logic to be undoable if the\nsubsequent rename fails.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "413460980ea7796582bce672be85879be0865ada",
      "tree": "5b71f8c043c06fcf87504ff8434b9aaa824a8c1a",
      "parents": [
        "3270958b717a13d0228803254609c19184854b9b"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Oct 20 18:24:42 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Oct 20 18:24:42 2008 +0000"
      },
      "message": "[CIFS] fix build error\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "3270958b717a13d0228803254609c19184854b9b",
      "tree": "50d1affc68add3e89798f647bb6abc7532f62e51",
      "parents": [
        "9a8165fce724d1aba21e2c713ac6ba11dbfecafa"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Oct 20 00:44:19 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Oct 20 00:44:19 2008 +0000"
      },
      "message": "[CIFS] undo changes in cifs_rename_pending_delete if it errors out\n\nThe cifs_rename_pending_delete process involves multiple steps. If it\nfails and we\u0027re going to return error, we don\u0027t want to leave things in\na half-finished state. Add code to the function to undo changes if\na call fails.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "9a8165fce724d1aba21e2c713ac6ba11dbfecafa",
      "tree": "b3c359a5d0428f3fccf6da73a59210f6514f4c7c",
      "parents": [
        "dd1db2dedc4f6ad736fbba5aa6ecfe6e7c8ee0f4"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Oct 17 21:03:20 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Oct 20 00:33:52 2008 +0000"
      },
      "message": "cifs: track DeletePending flag in cifsInodeInfo\n\ncifs: track DeletePending flag in cifsInodeInfo\n\nThe QPathInfo call returns a flag that indicates whether DELETE_ON_CLOSE\nis set. Track it in the cifsInodeInfo.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "dd1db2dedc4f6ad736fbba5aa6ecfe6e7c8ee0f4",
      "tree": "5585ad01c207b5cf0e45857255bceb4e1efee3ce",
      "parents": [
        "469ee614aaa367d9cde01cbdd2027212f56c6cc6"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Oct 16 19:27:12 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Oct 17 14:47:13 2008 +0000"
      },
      "message": "cifs: don\u0027t use CREATE_DELETE_ON_CLOSE in cifs_rename_pending_delete\n\ncifs: don\u0027t use CREATE_DELETE_ON_CLOSE in cifs_rename_pending_delete\n\nCREATE_DELETE_ON_CLOSE apparently has different semantics than when you\nset the DELETE_ON_CLOSE bit after opening the file. Setting it in the\nopen says \"delete this file as soon as this filehandle is closed\". That\u0027s\nnot what we want for cifs_rename_pending_delete.\n\nDon\u0027t set this bit in the CreateFlags. Experimentation shows that\nsetting this flag in the SET_FILE_INFO call has no effect.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "6050247d8089037d6d8ea0f3c62fe4a931c1ab14",
      "tree": "0be9729efe33be16bb12ccb289ec5992c450fcd9",
      "parents": [
        "6b37faa175311128dc920aaa57a5f7fab85537d7"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Oct 07 18:42:52 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Oct 07 18:42:52 2008 +0000"
      },
      "message": "[CIFS]  clean up error handling in cifs_unlink\n\nCurrently, if a standard delete fails and we end up getting -EACCES\nwe try to clear ATTR_READONLY and try the delete again. If that\nthen fails with -ETXTBSY then we try a rename_pending_delete. We\naren\u0027t handling other errors appropriately though.\n\nAnother client could have deleted the file in the meantime and\nwe get back -ENOENT, for instance. In that case we wouldn\u0027t do a\nd_drop. Instead of retrying in a separate call, simply goto the\noriginal call and use the error handling from that.\n\nAlso, we weren\u0027t properly undoing any attribute changes that\nwere done before returning an error back to the caller.\n\nCC: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "6b37faa175311128dc920aaa57a5f7fab85537d7",
      "tree": "b01a801464cfbb0749efa712bea857fe4a11b915",
      "parents": [
        "dfd15c46a6c2cafb006183c0c14f07e59eee4ac0"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Oct 06 21:54:41 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Oct 06 21:54:41 2008 +0000"
      },
      "message": "[CIFS] fix some settings of cifsAttrs after calling SetFileInfo and SetPathInfo\n\nWe only need to set them when we call SetFileInfo or SetPathInfo\ndirectly, and as soon as possible after then. We had one place setting\nit where it didn\u0027t need to be, and another place where it was missing.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "d388908ec40ada0001dfe05134de31d0cc62907c",
      "tree": "4c4d6c8bf2185bfa4677bd64ee463a3d70a851e9",
      "parents": [
        "391e575556109744ae0aa198c1e245588a3ea76a"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 24 19:22:52 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 24 19:22:52 2008 +0000"
      },
      "message": "[CIFS] update DOS attributes in cifsInode if we successfully changed them\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "7ce86d5a93ffe2542e6558a97ab055377df8cde3",
      "tree": "14b2e450aef89019dbbdcedaaed2383977aeb9c6",
      "parents": [
        "74553b1b6a8556e08757b4bce537fd8332b93898"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Sep 24 11:32:59 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 24 18:59:20 2008 +0000"
      },
      "message": "cifs: work around samba returning -ENOENT on SetFileDisposition call\n\ncifs: work around samba returning -ENOENT on SetFileDisposition call\n\nSamba seems to return STATUS_OBJECT_NAME_NOT_FOUND when we try to set\nthe delete on close bit after doing a rename by filehandle. This looks\nlike a samba bug to me, but a lot of servers will do this. For now,\npretend an -ENOENT return is a success.\n\nSamba does however seem to respect the CREATE_DELETE_ON_CLOSE bit\nwhen opening files that already exist. Windows will ignore it, but\nso adding it to the open flags should be harmless.\n\nWe\u0027re also currently ignoring the return code on the rename by\nfilehandle, so no need to set rc based on it.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "74553b1b6a8556e08757b4bce537fd8332b93898",
      "tree": "84513606c9902e7969886f2389d4fb7da2272a8a",
      "parents": [
        "9d81523480c8c5b07a4899a084b3f4264a575184"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Sep 24 14:55:51 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Sep 24 18:55:11 2008 +0000"
      },
      "message": "cifs: fix inverted NULL check after kmalloc\n\ncifs: fix inverted NULL check after kmalloc\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ee2fd967fb23c5eecabc8a660ec66fcd79acbd47",
      "tree": "8a1922499e0775d4849d6ed8d4e3027800d7242d",
      "parents": [
        "6d22f09896c0d62c003ffa25fff25323e3ed608b"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 23 18:23:33 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 23 18:23:33 2008 +0000"
      },
      "message": "[CIFS]  fix busy-file renames and refactor cifs_rename logic\n\nBreak out the code that does the actual renaming into a separate\nfunction and have cifs_rename call that. That function will attempt a\npath based rename first and then do a filehandle based one if it looks\nlike the source is busy.\n\nThe existing logic tried a path based rename first, but if we needed to\nremove the destination then it only attempted a filehandle based rename\nafterward. Not all servers support renaming by filehandle, so we need to\nalways attempt path rename first and fall back to filehandle rename if\nit doesn\u0027t work.\n\nThis also fixes renames of open files on windows servers (at least when\nthe source and destination directories are the same).\n\nCC: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "6d22f09896c0d62c003ffa25fff25323e3ed608b",
      "tree": "ae324f22f3e2f4a4b5e5b7bf5f4f6d84e4f95ee0",
      "parents": [
        "7c9c3760b3a5ae87ee4d661703b6d5de3999fe46"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Sep 23 11:48:35 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 23 17:39:28 2008 +0000"
      },
      "message": "cifs: add function to set file disposition\n\ncifs: add function to set file disposition\n\nThe proper way to set the delete on close bit on an already existing\nfile is to use SET_FILE_INFO with an infolevel of\nSMB_FILE_DISPOSITION_INFO. Add a function to do that and have the\nsilly-rename code use it.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "a12a1ac7a474b3680b9cce9f64a4f78123aecf37",
      "tree": "ea56c96d7c0b0a81a8629779359ec06eaf922c3d",
      "parents": [
        "2846d3864738dd6e290755d0692cf377e09ba79f"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Sep 23 11:48:35 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 23 17:11:03 2008 +0000"
      },
      "message": "cifs: move rename and delete-on-close logic into helper function\n\ncifs: move rename and delete-on-close logic into helper function\n\nWhen a file is still open on the server, we attempt to set the\nDELETE_ON_CLOSE bit and rename it to a new filename. When the\nlast opener closes the file, the server should delete it.\n\nThis patch moves this mechanism into a helper function and has\nthe two places in cifs_unlink that do this procedure call it. It\nalso fixes the open flags to be correct.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "388e57b2759672a3e3ede0d2f7e95124b417b0a3",
      "tree": "19ed097fb752aec1983435f43e3a64612939beb1",
      "parents": [
        "5f0319a79043457d2555f059fac68c1d840ce381"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 16 23:50:58 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 16 23:50:58 2008 +0000"
      },
      "message": "[CIFS] use common code for turning off ATTR_READONLY in cifs_unlink\n\nWe already have a cifs_set_file_info function that can flip DOS\nattribute bits. Have cifs_unlink call it to handle turning ATTR_HIDDEN\non and ATTR_READONLY off when an unlink attempt returns -EACCES.\n\nThis also removes a level of indentation from cifs_unlink.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "5f0319a79043457d2555f059fac68c1d840ce381",
      "tree": "0c469c74ae2125ba24aec681834364ea24bd7ce6",
      "parents": [
        "6bfb09a1005193be5c81ebac9f3ef85210142650"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Sep 16 14:05:16 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Sep 16 20:14:34 2008 +0000"
      },
      "message": "cifs: clean up variables in cifs_unlink\n\nChange parameters to cifs_unlink to match the ones used in the generic\nVFS. Add some local variables to cut down on the amount of struct\ndereferencing that needs to be done, and eliminate some unneeded NULL\npointer checks on the parent directory inode. Finally, rename pTcon\nto \"tcon\" to more closely match standard kernel coding style.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "aab3a8c7a3a6a001dd439ed00d4db17a1059803e",
      "tree": "45e156bc129f9d6276dad3d54d66cfbf3d3ac3d5",
      "parents": [
        "1fca25427482387689fa27594c992a961d98768f"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Tue Aug 19 14:23:37 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 19 14:23:37 2008 +0000"
      },
      "message": "[CIFS] reindent misindented statement\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ad661334b8ae421154b121ee6ad3b56807adbf11",
      "tree": "64570259dc200d76616acc62aeca5fad8d474dc8",
      "parents": [
        "54b4602d5fe50571362e101138d24edb9cf82d29"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 12 14:14:40 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 14 03:55:14 2008 +0000"
      },
      "message": "[CIFS] mount of IPC$ breaks with iget patch\n\nIn looking at network named pipe support on cifs, I noticed that\nDave Howell\u0027s iget patch:\n\n    iget: stop CIFS from using iget() and read_inode()\n\nbroke mounts to IPC$ (the interprocess communication share), and don\u0027t\nhandle the error case (when getting info on the root inode fails).\n\nThanks to Gunter who noted a typo in a debug line in the original\nversion of this patch.\n\nCC: David Howells \u003cdhowells@redhat.com\u003e\nCC: Gunter Kukkukk \u003clinux@kukkukk.com\u003e\nCC: Stable Kernel \u003cstable@kernel.org\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0510eeb7367aca017c6320d04cfd9cbc3b5dd992",
      "tree": "4f05e9be032508707dcb29679d637902931533cc",
      "parents": [
        "feb3e20cee25729447e1abdcb40c040b691d457a"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Aug 02 07:26:12 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 06 22:39:46 2008 +0000"
      },
      "message": "turn cifs_setattr into a multiplexor that calls the correct function\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "feb3e20cee25729447e1abdcb40c040b691d457a",
      "tree": "fab58147a5fc0fb88f757c97700dba11ff142038",
      "parents": [
        "3fe5c1dd0a8bf3756c447a28a578593176949d1d"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Aug 02 07:26:12 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 06 22:28:06 2008 +0000"
      },
      "message": "move file time and dos attribute setting logic into new function\n\nBreak up cifs_setattr further by moving the logic that sets file times\nand dos attributes into a separate function. This patch also refactors\nthe logic a bit so that when the file is already open then we go ahead\nand do a SetFileInfo call. SetPathInfo seems to be unreliable when\nsetting times on open files.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "3fe5c1dd0a8bf3756c447a28a578593176949d1d",
      "tree": "a0c71c7b5f4c618496381d64c8fab456c95b76c6",
      "parents": [
        "26b994fad6a062697846a861ecc008447409dfb6"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Aug 02 07:26:12 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 06 22:14:52 2008 +0000"
      },
      "message": "spin off cifs_setattr with unix extensions to its own function\n\nCreate a new cifs_setattr_unix function to handle a setattr when unix\nextensions are enabled and have cifs_setattr call it. Also, clean up\nvariable declarations in cifs_setattr.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "95089910933e10768cfef1ab0bab0c55b962aacb",
      "tree": "c80dd73d46196aff3e6c12a12bfb6b6f20aac08c",
      "parents": [
        "2dd2dfa060650118661422d4e666ac804c388751"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Aug 06 04:39:02 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 06 04:39:02 2008 +0000"
      },
      "message": "[CIFS] cifs_mkdir and cifs_create should respect the setgid bit on parent dir\n\nIf a server supports unix extensions but does not support POSIX create\nroutines, then the client will create a new inode with a standard SMB\nmkdir or create/open call and then will set the mode. When it does this,\nit does not take the setgid bit on the parent directory into account.\n\nThis patch has CIFS flip on the setgid bit when the parent directory has\nit. If the share is mounted with \"setuids\" then also change the group\nowner to the gid of the parent.\n\nThis patch should apply cleanly on top of the setattr cleanup patches\nthat I sent a few weeks ago.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "2dd2dfa060650118661422d4e666ac804c388751",
      "tree": "6dd3fb4e1dbe9a6119f17bf0defb12660f2be9a5",
      "parents": [
        "6fc000e5190234c7e5b244d1e2095d50b630d63f"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Aug 02 07:26:12 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 06 04:24:50 2008 +0000"
      },
      "message": "Rename CIFSSMBSetFileTimes to CIFSSMBSetFileInfo and add PID arg\n\nThe new name is more clear since this is also used to set file\nattributes. We\u0027ll need the pid_of_opener arg so that we can\npass in filehandles of other pids and spare ourselves an open\ncall.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "6fc000e5190234c7e5b244d1e2095d50b630d63f",
      "tree": "e572820b5565e75f55391ea6e8d3d17c65b63f35",
      "parents": [
        "063ea27925d70b1d9dd4343d685f722f0274bfd1"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Aug 02 07:26:12 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 06 04:24:01 2008 +0000"
      },
      "message": "change CIFSSMBSetTimes to CIFSSMBSetPathInfo\n\nCIFSSMBSetTimes is a deceptive name. This function does more that just\nset file times. Change it to CIFSSMBSetPathInfo, which is closer to its\nreal purpose.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4e1e7fb9e879d48011a887715d7966484d9644ea",
      "tree": "fd00305c34e71a6454144c8c65390245c698fdbc",
      "parents": [
        "9e96af8525264973d8d1f800b0ddce0289fc0bdd"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Aug 02 07:26:12 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 06 04:17:20 2008 +0000"
      },
      "message": "bundle up Unix SET_PATH_INFO args into a struct and change name\n\nWe\u0027d like to be able to use the unix SET_PATH_INFO_BASIC args to set\nfile times as well, but that makes the argument list rather long. Bundle\nup the args for unix SET_PATH_INFO call into a struct. For now, we don\u0027t\nactually use the times fields anywhere. That will be done in a follow-on\npatch.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "9e96af8525264973d8d1f800b0ddce0289fc0bdd",
      "tree": "4c48c85bcef749ed5aa27629276aeec0f377672e",
      "parents": [
        "93d0ec851820688ef5b21a84e7460d3cf405f5c5"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Tue Aug 05 14:38:40 2008 +0530"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 05 16:51:53 2008 +0000"
      },
      "message": "Fix missing braces in cifs_revalidate()\n\nFix missing braces introduced during commit\ncea218054ad277d6c126890213afde07b4eb1602.  Though setting wbrc to 0\nkeeps this from causing real bug, this should have been there.\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "8efdbde647f542ce0d303273df7ad4157caa03d0",
      "tree": "d672ae108f45a0288c43605b5b39652a441aa996",
      "parents": [
        "09e50d55a9490e9b7a6fdfbf8fc078924b25ecb5"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Jul 23 21:28:12 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Jul 23 21:28:12 2008 +0000"
      },
      "message": "[CIFS] break ATTR_SIZE changes out into their own function\n\nMove the code that handles ATTR_SIZE changes to its own function. This\nmakes for a smaller function and reduces the level of indentation.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "e911d0cc877ff027d5bd09fc33148ab76f0fdf0e",
      "tree": "c2549fb1caa266f17d25c20e0c499db823578372",
      "parents": [
        "d3297a644a0ab784e0c810ceca6bf35a67868ad9"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Sat Jul 12 13:47:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 12 14:33:42 2008 -0700"
      },
      "message": "cifs: fix inode leak in cifs_get_inode_info_unix\n\nTry this:\n\n    mount a share with unix extensions\n    create a file on it\n    umount the share\n\nYou\u0027ll get the following message in the ring buffer:\n\nVFS: Busy inodes after unmount of cifs. Self-destruct in 5 seconds.  Have a\nnice day...\n\n...the problem is that cifs_get_inode_info_unix is creating and hashing\na new inode even when it\u0027s going to return error anyway. The first\nlookup when creating a file returns an error so we end up leaking this\ninode before we do the actual create. This appears to be a regression\ncaused by commit 0e4bbde94fdc33f5b3d793166b21bf768ca3e098.\n\nThe following patch seems to fix it for me, and fixes a minor\nformatting nit as well.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Steven French \u003csfrench@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5132861a7a44498ebb18357473f8b8d4cdc70e9f",
      "tree": "7a1efb101645878623a73f380113fd29f43aeae4",
      "parents": [
        "b7206153f61bb63ee2cffa63905b57ec01d20e6e"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu May 22 09:33:34 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sun May 25 00:33:58 2008 +0000"
      },
      "message": "disable most mode changes on non-unix/non-cifsacl mounts\n\nCIFS currently allows you to change the mode of an inode on a share that\ndoesn\u0027t have unix extensions enabled, and isn\u0027t using cifsacl. The inode\nin this case *only* has its mode changed in memory on the client. This\nis problematic since it can change any time the inode is purged from the\ncache.\n\nThis patch makes cifs_setattr silently ignore most mode changes when\nunix extensions and cifsacl support are not enabled, and when the share\nis not mounted with the \"dynperm\" option. The exceptions are:\n\nWhen a mode change would remove all write access to an inode we turn on\nthe ATTR_READONLY bit on the server and remove all write bits from the\ninode\u0027s mode in memory.\n\nWhen a mode change would add a write bit to an inode that previously had\nthem all turned off, it turns off the ATTR_READONLY bit on the server,\nand resets the mode back to what it would normally be (generally, the\nfile_mode or dir_mode of the share).\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4ca691a892e8ab4f79583de1394f17a7dcfa2b57",
      "tree": "7c049eb1898ad1668f8d148b2d68d36213ce0841",
      "parents": [
        "4e94a105ed0df78e25b20ff8ed6761f5937662b1"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu May 22 09:33:34 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri May 23 18:25:17 2008 +0000"
      },
      "message": "silently ignore ownership changes unless unix extensions are enabled or we\u0027re faking uid changes\n\nCIFS currently allows you to change the ownership of a file, but unless\nunix extensions are enabled this change is not passed off to the server.\n\nHave CIFS silently ignore ownership changes that can\u0027t be persistently\nstored on the server unless the \"setuids\" option is explicitly\nspecified.\n\nWe could return an error here (-EOPNOTSUPP or something), but this is\nhow most disk-based windows filesystems on behave on Linux (e.g.  VFAT,\nNTFS, etc). With cifsacl support and proper Windows to Unix idmapping\nsupport, we may be able to do this more properly in the future.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4e94a105ed0df78e25b20ff8ed6761f5937662b1",
      "tree": "575486162100bb702fcd0f3333b1b6f44af4be2c",
      "parents": [
        "b0fd30d3e7e768aad5e398caaea6ae5a5c814eab"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri May 23 18:22:46 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri May 23 18:22:46 2008 +0000"
      },
      "message": "[CIFS] remove trailing whitespace\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "b0fd30d3e7e768aad5e398caaea6ae5a5c814eab",
      "tree": "2841fce1397664445adad84225486d40f8c8ba97",
      "parents": [
        "4468eb3fd102cad559e51594a01cbc65b994d264"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu May 22 09:33:34 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri May 23 18:17:16 2008 +0000"
      },
      "message": "when creating new inodes, use file_mode/dir_mode exclusively on mount without unix extensions\n\nWhen CIFS creates a new inode on a mount without unix extensions, it\ntemporarily assigns the mode that was passed to it in the create/mkdir\ncall. Eventually, when the inode is revalidated, it changes to have the\nfile_mode or dir_mode for the mount. This is confusing to users who\nexpect that the mode shouldn\u0027t change this way. It\u0027s also problematic\nsince only the mode is treated this way, not the uid or gid. Suppose you\nhave a CIFS mount that\u0027s mounted with:\n\nuid\u003d0,gid\u003d0,file_mode\u003d0666,dir_mode\u003d0777\n\n...if an unprivileged user comes along and does this on the mount:\n\nmkdir -m 0700 foo\ntouch foo/bar\n\n...there is a period of time where the touch will fail, since the dir\nwill initially be owned by root and have mode 0700. If the user waits\nlong enough, then \"foo\" will be revalidated and will get the correct\ndir_mode permissions.\n\nThis patch changes cifs_mkdir and cifs_create to not overwrite the\nmode found by the initial cifs_get_inode_info call after the inode is\ncreated on the server. Legacy behavior can be reenabled with the\nnew \"dynperm\" mount option.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4468eb3fd102cad559e51594a01cbc65b994d264",
      "tree": "247fe6ab216b047e3f48aee07e845b17d2447ed7",
      "parents": [
        "aaa9bbe039febf1d3a0f3a374deea0680d9f5758"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu May 22 09:31:40 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri May 23 18:17:09 2008 +0000"
      },
      "message": "on non-posix shares, clear write bits in mode when ATTR_READONLY is set\n\nWhen mounting a share with posix extensions disabled,\ncifs_get_inode_info turns off all the write bits in the mode for regular\nfiles if ATTR_READONLY is set. Directories and other inode types,\nhowever, can also have ATTR_READONLY set, but the mode gives no\nindication of this.\n\nThis patch makes this apply to other inode types besides regular files.\nIt also cleans up how modes are set in cifs_get_inode_info for both the\n\"normal\" and \"dynperm\" cases.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0a891adccc867c28b022128bc342a779e476c816",
      "tree": "adfed2b6389835cc213274278d0a13f69399d3aa",
      "parents": [
        "e4058245ac0c4d9a517cda688a35aef065cb7f4e"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu May 22 14:20:21 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu May 22 14:20:21 2008 +0000"
      },
      "message": "[CIFS] Fix reversed memset arguments\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "397d71ddfda5b11b85e396d6ea822011c132b962",
      "tree": "53209f2d568e8b2da19c465a8e81809d729e043f",
      "parents": [
        "5651ced3ab196b5e7dc485c5777f210aa41e2d8d"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed May 21 03:49:46 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed May 21 03:49:46 2008 +0000"
      },
      "message": "[CIFS] Remove debug statement\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "b9a3260f25ab5d2ba5c8b9508e7952848b9d704b",
      "tree": "2c50578e713b4b519635a13cc568bae86729d17e",
      "parents": [
        "0e4bbde94fdc33f5b3d793166b21bf768ca3e098"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 20 21:52:32 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 20 21:52:32 2008 +0000"
      },
      "message": "[CIFS] Enable DFS support for Windows query path info\n\nFinal piece for handling DFS in query_path_info, constructing a\nfake inode for the junction directory which the submount will cover.\n\nThis handles the non-Unix (Windows etc.) code path.\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0e4bbde94fdc33f5b3d793166b21bf768ca3e098",
      "tree": "858cc58dcd5b49de3611826cf5e57ae5d54345ed",
      "parents": [
        "89562b777c50d100d1694db7b1b023279839b9ae"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 20 19:50:46 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 20 19:50:46 2008 +0000"
      },
      "message": "[CIFS] Enable DFS support for Unix query path info\n\nFinal piece for handling DFS in unix_query_path_info, constructing a\nfake inode for the junction directory which the submount will cover.\n\nAcked-by: Igor Mammedov \u003cniallain@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "646dd539878a194bc14b104621c0b2b33587e40f",
      "tree": "ba3e9a8a9565e66ea53905b209438fae6d413853",
      "parents": [
        "35fc37d5175091c36d034a28c057da0f9594ee7e"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu May 15 01:50:56 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu May 15 01:50:56 2008 +0000"
      },
      "message": "[CIFS] Fix paths when share is in DFS to include proper prefix\n\nSome versions of Samba (3.2-pre e.g.) are stricter about checking to make sure that\npaths in DFS name spaces are sent in the form \\\\server\\share\\dir\\subdir ...\ninstead of \\dir\\subdir\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "35fc37d5175091c36d034a28c057da0f9594ee7e",
      "tree": "d28ee6f3000fd0c3a03fc95f044544b1d6413c08",
      "parents": [
        "e10f7b551d2a79b113d5ce66b5dc9f3657035445"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed May 14 10:22:03 2008 -0700"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed May 14 18:45:30 2008 +0000"
      },
      "message": "add function to convert access flags to legacy open mode\n\nSMBLegacyOpen always opens a file as r/w. This could be problematic\nfor files with ATTR_READONLY set. Have it interpret the access_mode\ninto a sane open mode.\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "67750fb9e07940c078d1edb16fd736ccc92a4a4e",
      "tree": "e0f2f224e6b06f02fc7961f7e0e64263a826e8fa",
      "parents": [
        "02eadeffda169a45946c79270ec19f45eeafb8e7"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri May 09 22:28:02 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sun May 11 17:45:43 2008 +0000"
      },
      "message": "[CIFS] when not using unix extensions, check for and set ATTR_READONLY on create and mkdir\n\nWhen creating a directory on a CIFS share without POSIX extensions,\nand the given mode has no write bits set, set the ATTR_READONLY bit.\n\nWhen creating a file, set ATTR_READONLY if the create mode has no write\nbits set and we\u0027re not using unix extensions.\n\nThere are some comments about this being problematic due to the VFS\nsplitting creates into 2 parts. I\u0027m not sure what that\u0027s actually\ntalking about, but I\u0027m assuming that it has something to do with how\nmknod is implemented. In the simple case where we have no unix\nextensions and we\u0027re just creating a regular file, there\u0027s no reason\nwe can\u0027t set ATTR_READONLY.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "02eadeffda169a45946c79270ec19f45eeafb8e7",
      "tree": "b416ae6cd3d48b4188716cfd7fe7b90808bb28ac",
      "parents": [
        "1b20d672188bf80baef60d515a123f556871a5ce"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri May 09 21:26:11 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sun May 11 17:45:43 2008 +0000"
      },
      "message": "[CIFS]  add local struct inode pointer to cifs_setattr\n\nClean up cifs_setattr a bit by adding a local inode pointer, and\nchanging all of the direntry-\u003ed_inode references to it. This also adds a\nbit of micro-optimization. d_inode shouldn\u0027t change over the life of\nthis function, so we only need to dereference it once.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "5ade9deaaa3e1f7291467d97b238648e43eae15e",
      "tree": "e1e5b82a78aa062f66336c5a11f3eecf8dac36cd",
      "parents": [
        "9b1ec9eceabe0c90d12116871f692263b69d476d"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri May 02 20:56:23 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri May 02 20:56:23 2008 +0000"
      },
      "message": "[CIFS] fix typo\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "9b1ec9eceabe0c90d12116871f692263b69d476d",
      "tree": "2c6dcd244a7874ed18b049dec176dbf61fa922f9",
      "parents": [
        "4b18f2a9c3964f7612b7403dddc1d1ba5443ae24"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Apr 29 20:15:43 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Apr 29 20:15:43 2008 +0000"
      },
      "message": "[CIFS] Remove duplicate call to mode_to_acl\n\nThe current logic in cifs_setattr calls mode_to_acl twice on mode\nchanges if cifsacl is enabled. Remove the duplicate call.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCC: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4b18f2a9c3964f7612b7403dddc1d1ba5443ae24",
      "tree": "6deaca1844706e70e235be6fe502269e4f15355f",
      "parents": [
        "e9f20d6f03e8df393b001dab6dc5226c2a5daf57"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Apr 29 00:06:05 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Apr 29 00:06:05 2008 +0000"
      },
      "message": "[CIFS] convert usage of implicit booleans to bool\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "076d8423a98659a92837b07aa494cb74bfefe77c",
      "tree": "ed6776db97202bac41f8a1f4ff68188e16373eec",
      "parents": [
        "2302aca8508ee727a0c5edde3a7518a4ee03da1b"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 18 23:26:26 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 18 23:26:26 2008 +0000"
      },
      "message": "[CIFS] Fix UNC path prefix on QueryUnixPathInfo to have correct slash\n\nWhen a share was in DFS and the server was Unix/Linux, we were sending paths of the form\n    \\\\server\\share/dir/file\nrather than\n    //server/share/dir/file\n\nThere was some discussion between me and jra over whether we should use\n    /server/share/dir/file\nas MS sometimes says - but the documentation for this claims it should be\ndoubleslash for this type of UNC-like path format and that works, so leaving\nit as doubleslash but converting the \\ to / in the the //server/share portion.\n\nThis gets Samba to now correctly return STATUS_PATH_NOT_COVERED when it is\nsupposed to (Windows already did since the direction of the slash was not an issue\nfor them).  Still need another minor change to fully enable DFS (need to finish\nsome chages to SMBGetDFSRefer\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "04b6e6ec1a9340ab77637cae9b51b984d9d706d8",
      "tree": "50d555030ba63ca2ca2b6a889a412b0b9a5943ef",
      "parents": [
        "8b1327f6ed957030a64ccdb17131955bfea2d3fe"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sat Mar 22 22:57:44 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sat Mar 22 22:57:44 2008 +0000"
      },
      "message": "[CIFS] Fix mem leak on dfs referral\n\nSigned-off-by: Igor Mammedov \u003cniallain@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "8b1327f6ed957030a64ccdb17131955bfea2d3fe",
      "tree": "075ff00b4c333ef333aff5927eac45bde16d8d53",
      "parents": [
        "ebe8912be214662c8289977fb416c1f015df4a0b"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Mar 14 22:37:16 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Mar 14 22:37:16 2008 +0000"
      },
      "message": "[CIFS] file create with acl support enabled is slow\n\nShirish Pargaonkar noted:\nWith cifsacl mount option, when a file is created on the Windows server,\nexclusive oplock is broken right away because the get cifs acl code\nagain opens the file to obtain security descriptor.\nThe client does not have the newly created file handle or inode in any\nof its lists yet so it does not respond to oplock break and server waits for\nits duration and then responds to the second open. This slows down file\ncreation signficantly.  The fix is to pass the file descriptor to the get\ncifsacl code wherever available so that get cifs acl code does not send\nsecond open (NT Create ANDX) and oplock is not broken.\n\nCC: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "50531444fac593c8c8e3ff2e41944d9507bb4665",
      "tree": "da888faac8dffd99b651d9bb64cd10871bffa097",
      "parents": [
        "bc5b6e24a17f90c7d096d857650f4739cc95c941"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Mar 14 19:21:31 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Mar 14 19:21:31 2008 +0000"
      },
      "message": "[CIFS] Fix mtime on cp -p when file data cached but written out too late\n\nKukks noticed that cp -p can write out file data too late, after the timestamp\nis already set.  This was introduced as an unintentional sideeffect of the change\nin an earlier patch (see below) which fixed some delayed return code propagation.\n\ncea218054ad277d6c126890213afde07b4eb1602\nAuthor: Jeff Layton \u003cjlayton@redhat.com\u003e\nDate:   Tue Nov 20 23:19:03 2007 +0000\n\nAcked-by: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "bc5b6e24a17f90c7d096d857650f4739cc95c941",
      "tree": "31f4c2e7fc352c0365b83576cc341974c7e41be4",
      "parents": [
        "5b4d4771e2a56671c7f1c94edda427a1e3d6f111"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Mar 11 21:07:48 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Mar 11 21:07:48 2008 +0000"
      },
      "message": "[CIFS] Fix build problem\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "7962670e648a0431338a7ce73847c24bc023d095",
      "tree": "48c311837feef12cc3818a5c9b0c01c77b60a089",
      "parents": [
        "84c6f6046c5a2189160a8f0dca8b90427bf690ea"
      ],
      "author": {
        "name": "Igor Mammedov",
        "email": "niallain@gmail.com",
        "time": "Sun Mar 09 03:44:18 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sun Mar 09 03:44:18 2008 +0000"
      },
      "message": "[CIFS]  DFS patch that connects inode with dfs handling ops\n if DFS junction point\n\nSigned-off-by: Igor Mammedov \u003cniallain@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0b442d2c28479332610c46e1a74e5638ab63a97d",
      "tree": "0924b4247ecca2714f41129f2c15d70ef37c5119",
      "parents": [
        "75f12983d9949fef67ecc133ef4727d93d42b25a"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Feb 26 03:44:02 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Feb 26 03:44:02 2008 +0000"
      },
      "message": "[CIFS] remove unused variable\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "75f12983d9949fef67ecc133ef4727d93d42b25a",
      "tree": "81ebb40589193fd8e6366cda2a64961d1de6e1cb",
      "parents": [
        "e086fcea861f82f2086a97e401a15e1ba07e8566"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Feb 25 20:25:21 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Feb 25 20:25:21 2008 +0000"
      },
      "message": "[CIFS] consolidate duplicate code in posix/unix inode handling\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0a3abcf75bf391fec4e32356ab5ddb8f5d2e6b41",
      "tree": "b80b1d344ec24cad28b057ef803cebac9434be01",
      "parents": [
        "70eff55d2d979cca700aa6906494f0c474f3f7ff",
        "101142c37be8e5af9b847860219217e6b958c739"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Feb 15 21:06:08 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Feb 15 21:06:08 2008 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of /pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    }
  ],
  "next": "70eff55d2d979cca700aa6906494f0c474f3f7ff"
}
