diff options
author | Steve French <sfrench@us.ibm.com> | 2005-09-01 00:50:37 -0400 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2005-09-01 00:50:37 -0400 |
commit | bfa0d75a1eee59f0577e3c1697ff570b77581a35 (patch) | |
tree | c5399d95379f71903c4f3e82160bd7b4d36bb42d /fs/cifs/readdir.c | |
parent | 1c9551878c4629ca78dfe12ed23b9dc8d97770cc (diff) |
[CIFS] Add support for legacy servers part 5
Handle small negotiated read sizes (under 4K) and finish up
read and write support.
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/readdir.c')
-rw-r--r-- | fs/cifs/readdir.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/fs/cifs/readdir.c b/fs/cifs/readdir.c index 9780f4ee7f12..a1e8dc901de4 100644 --- a/fs/cifs/readdir.c +++ b/fs/cifs/readdir.c | |||
@@ -200,7 +200,10 @@ static void fill_in_inode(struct inode *tmp_inode, | |||
200 | if(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_NO_BRL) | 200 | if(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_NO_BRL) |
201 | tmp_inode->i_fop->lock = NULL; | 201 | tmp_inode->i_fop->lock = NULL; |
202 | tmp_inode->i_data.a_ops = &cifs_addr_ops; | 202 | tmp_inode->i_data.a_ops = &cifs_addr_ops; |
203 | 203 | if((cifs_sb->tcon) && (cifs_sb->tcon->ses) && | |
204 | (cifs_sb->tcon->ses->server->maxBuf < | ||
205 | 4096 + MAX_CIFS_HDR_SIZE)) | ||
206 | tmp_inode->i_data.a_ops->readpages = NULL; | ||
204 | if(isNewInode) | 207 | if(isNewInode) |
205 | return; /* No sense invalidating pages for new inode | 208 | return; /* No sense invalidating pages for new inode |
206 | since have not started caching readahead file | 209 | since have not started caching readahead file |
@@ -306,6 +309,10 @@ static void unix_fill_in_inode(struct inode *tmp_inode, | |||
306 | if(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_NO_BRL) | 309 | if(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_NO_BRL) |
307 | tmp_inode->i_fop->lock = NULL; | 310 | tmp_inode->i_fop->lock = NULL; |
308 | tmp_inode->i_data.a_ops = &cifs_addr_ops; | 311 | tmp_inode->i_data.a_ops = &cifs_addr_ops; |
312 | if((cifs_sb->tcon) && (cifs_sb->tcon->ses) && | ||
313 | (cifs_sb->tcon->ses->server->maxBuf < | ||
314 | 4096 + MAX_CIFS_HDR_SIZE)) | ||
315 | tmp_inode->i_data.a_ops->readpages = NULL; | ||
309 | 316 | ||
310 | if(isNewInode) | 317 | if(isNewInode) |
311 | return; /* No sense invalidating pages for new inode since we | 318 | return; /* No sense invalidating pages for new inode since we |