Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] fix sparse warning cifs: fix sb->s_maxbytes so that it casts properly to a signed value cifs: disable serverino if server doesn't support it
This commit is contained in:
commit
c7425eb481
2 changed files with 10 additions and 7 deletions
|
@ -2452,10 +2452,10 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||||
tcon->local_lease = volume_info->local_lease;
|
tcon->local_lease = volume_info->local_lease;
|
||||||
}
|
}
|
||||||
if (pSesInfo) {
|
if (pSesInfo) {
|
||||||
if (pSesInfo->capabilities & CAP_LARGE_FILES) {
|
if (pSesInfo->capabilities & CAP_LARGE_FILES)
|
||||||
sb->s_maxbytes = (u64) 1 << 63;
|
sb->s_maxbytes = MAX_LFS_FILESIZE;
|
||||||
} else
|
else
|
||||||
sb->s_maxbytes = (u64) 1 << 31; /* 2 GB */
|
sb->s_maxbytes = MAX_NON_LFS;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* BB FIXME fix time_gran to be larger for LANMAN sessions */
|
/* BB FIXME fix time_gran to be larger for LANMAN sessions */
|
||||||
|
|
|
@ -212,7 +212,7 @@ cifs_unix_basic_to_fattr(struct cifs_fattr *fattr, FILE_UNIX_BASIC_INFO *info,
|
||||||
* junction to the new submount (ie to setup the fake directory
|
* junction to the new submount (ie to setup the fake directory
|
||||||
* which represents a DFS referral).
|
* which represents a DFS referral).
|
||||||
*/
|
*/
|
||||||
void
|
static void
|
||||||
cifs_create_dfs_fattr(struct cifs_fattr *fattr, struct super_block *sb)
|
cifs_create_dfs_fattr(struct cifs_fattr *fattr, struct super_block *sb)
|
||||||
{
|
{
|
||||||
struct cifs_sb_info *cifs_sb = CIFS_SB(sb);
|
struct cifs_sb_info *cifs_sb = CIFS_SB(sb);
|
||||||
|
@ -388,7 +388,7 @@ static int cifs_sfu_mode(struct cifs_fattr *fattr, const unsigned char *path,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Fill a cifs_fattr struct with info from FILE_ALL_INFO */
|
/* Fill a cifs_fattr struct with info from FILE_ALL_INFO */
|
||||||
void
|
static void
|
||||||
cifs_all_info_to_fattr(struct cifs_fattr *fattr, FILE_ALL_INFO *info,
|
cifs_all_info_to_fattr(struct cifs_fattr *fattr, FILE_ALL_INFO *info,
|
||||||
struct cifs_sb_info *cifs_sb, bool adjust_tz)
|
struct cifs_sb_info *cifs_sb, bool adjust_tz)
|
||||||
{
|
{
|
||||||
|
@ -513,9 +513,12 @@ int cifs_get_inode_info(struct inode **pinode,
|
||||||
cifs_sb->mnt_cifs_flags &
|
cifs_sb->mnt_cifs_flags &
|
||||||
CIFS_MOUNT_MAP_SPECIAL_CHR);
|
CIFS_MOUNT_MAP_SPECIAL_CHR);
|
||||||
if (rc1) {
|
if (rc1) {
|
||||||
/* BB EOPNOSUPP disable SERVER_INUM? */
|
|
||||||
cFYI(1, ("GetSrvInodeNum rc %d", rc1));
|
cFYI(1, ("GetSrvInodeNum rc %d", rc1));
|
||||||
fattr.cf_uniqueid = iunique(sb, ROOT_I);
|
fattr.cf_uniqueid = iunique(sb, ROOT_I);
|
||||||
|
/* disable serverino if call not supported */
|
||||||
|
if (rc1 == -EINVAL)
|
||||||
|
cifs_sb->mnt_cifs_flags &=
|
||||||
|
~CIFS_MOUNT_SERVER_INUM;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
fattr.cf_uniqueid = iunique(sb, ROOT_I);
|
fattr.cf_uniqueid = iunique(sb, ROOT_I);
|
||||||
|
|
Loading…
Add table
Reference in a new issue