Re: [PATCH 3/8] cifs: add CIFSCheckMFSymlink() as stub

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 08/04/2010 08:07 PM, Jeff Layton wrote:
> On Wed,  4 Aug 2010 16:11:44 +0200
> Stefan Metzmacher <metze@xxxxxxxxx> wrote:
> 
>> Signed-off-by: Stefan Metzmacher <metze@xxxxxxxxx>
>> ---
>>  fs/cifs/cifsproto.h |    3 +++
>>  fs/cifs/inode.c     |    7 +++++++
>>  fs/cifs/link.c      |    8 ++++++++
>>  3 files changed, 18 insertions(+), 0 deletions(-)
>>
>> diff --git a/fs/cifs/cifsproto.h b/fs/cifs/cifsproto.h
>> index 2eaebbd..e94e095 100644
>> --- a/fs/cifs/cifsproto.h
>> +++ b/fs/cifs/cifsproto.h
>> @@ -409,4 +409,7 @@ extern int CIFSSMBSetPosixACL(const int xid, struct cifsTconInfo *tcon,
>>  extern int CIFSGetExtAttr(const int xid, struct cifsTconInfo *tcon,
>>  			const int netfid, __u64 *pExtAttrBits, __u64 *pMask);
>>  extern void cifs_autodisable_serverino(struct cifs_sb_info *cifs_sb);
>> +extern int CIFSCheckMFSymlink(struct cifs_fattr *fattr,
>> +		const unsigned char *path,
>> +		struct cifs_sb_info *cifs_sb, int xid);
>>  #endif			/* _CIFSPROTO_H */
>> diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c
>> index a15b3a9..c4121de 100644
>> --- a/fs/cifs/inode.c
>> +++ b/fs/cifs/inode.c
>> @@ -661,6 +661,13 @@ int cifs_get_inode_info(struct inode **pinode,
>>  	if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_UNX_EMUL)
>>  		cifs_sfu_mode(&fattr, full_path, cifs_sb, xid);
>>  
>> +	/* query for SFU type info if supported and needed */
>> +	if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MF_SYMLINKS) {
>> +		tmprc = CIFSCheckMFSymlink(&fattr, full_path, cifs_sb, xid);
>> +		if (tmprc)
>> +			cFYI(1, "CIFSCheckMFSymlink: %d", tmprc);
>> +	}
>> +
> 
> 		^^^^^^^^^^^^^^
> 
> This only seems to touch the codepath without posix extensions. What
> about when unix extensions are enabled? The previous patch seems to
> indicate that the behavior is that mfsymlinks are always used when that
> mount option is used even if unix extensions are enabled. If so, then I
> think you'll need a similar change in cifs_get_inode_info_unix.
> 

I initially thought so. But, looking again - there is no point in
querying for SFU type info if unix extensions are enabled..?

Thanks,


-- 
Suresh Jayaraman
--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux