This is try #2 of the patchset to clean up cifs_unlink and fix up the silly-rename scheme. The main difference between this one and the original patchset is the renaming of some variables in cifs_unlink to more closely match generic VFS code and kernel coding style. It also fixes a bug -- misspelled flag name in the open flags in the third patch. This patchset is a cleanup of the cifs_unlink() code. It moves most of the "silly-rename" logic into a helper function and has cifs_unlink call it. It also fixes the silly-rename logic, which didn't work quite right in some cases and also adds a new function to properly set the DELETE_ON_CLOSE bit on files that already exist. With this patchset, CIFS VFS can now pass the op_chmod test in the Connectathon test suite when tested against a win2k3 server. The patchset is a little larger than the resulting code. I attempted to preserve bisectability with it, so I suggest applying them in order. If everything looks OK, this patchset is probably appropriate for 2.6.28. Jeff Layton (4): cifs: clean up variables in cifs_unlink cifs: use common code for turning off ATTR_READONLY in cifs_unlink cifs: move silly-rename logic into helper function cifs: add function to set file disposition fs/cifs/cifsfs.h | 2 +- fs/cifs/cifsproto.h | 2 + fs/cifs/cifssmb.c | 55 ++++++++++++ fs/cifs/inode.c | 235 ++++++++++++++++++++++++-------------------------- 4 files changed, 171 insertions(+), 123 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html