[linux-cifs-client] Re: "fix some settings of cifsAttrs"

Steve French smfrench at gmail.com
Mon Oct 6 18:59:41 GMT 2008


I merged the "cifsAttrs after calling SetFileInfo and SetPathInfo" fix
into cifs-2.6.git

On Tue, Sep 30, 2008 at 2:22 PM, Jeff Layton <jlayton at redhat.com> wrote:
> On Tue, 30 Sep 2008 07:02:10 -0400
> Jeff Layton <jlayton at redhat.com> wrote:
>
>> On Mon, 29 Sep 2008 14:40:57 -0500
>> "Steve French" <smfrench at gmail.com> wrote:
>>
>> > It looks like the "fix some settings of cifsAttrs" patch below, is
>> > missing some locations.  In cifs_set_file_info we don't seem to record
>> > the newly modified dosattrs in the inode except in one path - so we
>> > can't remove the "cifsInode->cifsAttrs = dosattr;" statement from
>> > cifs_unlink or else we will reset the attributes again in
>> > cifs_rename_pending_delete    We need to scan every call to
>> > setpathinfo and setfileinfo again to make sure that we reset cifsattrs
>> > in the inode if we succeed - looks like we are missing two places that
>> > would need to be fixed before Jeff's patch should apply
>>
>> Good catch. When I did the original patch, I focused on SetFileInfo
>> calls, and forgot that we need to do the same with SetPathInfo calls.
>> I've pushed a new stack of patches to my cifs-next branch. Please have
>> a look and let me know if I've missed any places with this one:
>>
>
> Here's a new pull request. In addition to the other changes that I
> pushed to this tree last night, this one also contains a patch to fix
> problems with directory seeks. We weren't saving off the resume info
> before calling CIFSFindNext and that was making directory seeks not
> work as intended.
>
> ---------------[snip]---------------
> The following changes since commit dfd15c46a6c2cafb006183c0c14f07e59eee4ac0:
>  Jeff Layton (1):
>        cifs: explicitly revoke SPNEGO key after session setup
>
> are available in the git repository at:
>
>  git://git.samba.org/jlayton/cifs.git cifs-next
>
> Jeff Layton (7):
>      cifs: don't use CREATE_DELETE_ON_CLOSE in cifs_rename_pending_delete
>      cifs: fix some settings of cifsAttrs after calling SetFileInfo and SetPathInfo
>      cifs: no need to use rcu_assign_pointer on immutable keys
>      cifs: undo changes in cifs_rename_pending_delete if it errors out
>      cifs: clean up error handling in cifs_unlink
>      cifs: make cifs_rename handle -EACCES errors
>      cifs: make sure we have the right resume info before calling CIFSFindNext
>
>  fs/cifs/cifs_spnego.c |    2 +-
>  fs/cifs/cifsglob.h    |    1 +
>  fs/cifs/cifssmb.c     |    4 +
>  fs/cifs/dns_resolve.c |    2 +-
>  fs/cifs/inode.c       |  308 +++++++++++++++++++++++++++++++++----------------
>  fs/cifs/readdir.c     |  128 +++++++++++----------
>  6 files changed, 281 insertions(+), 164 deletions(-)
>
> --
> Jeff Layton <jlayton at redhat.com>
>



-- 
Thanks,

Steve


More information about the linux-cifs-client mailing list