Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 236241 Details for
Bug 241545
smbfs mountpoint hangs after network transfer error on massive reads
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
set of upstream patches that may or may not help this
upstream-smbfs-patches (text/plain), 5.00 KB, created by
Jeff Layton
on 2007-10-24 14:34:26 UTC
(
hide
)
Description:
set of upstream patches that may or may not help this
Filename:
MIME Type:
Creator:
Jeff Layton
Created:
2007-10-24 14:34:26 UTC
Size:
5.00 KB
patch
obsolete
>commit 21bf08380dd9543a8599ff9b363e9cced2b838b4 >Author: Andrew Morton <akpm@osdl.org> >Date: Wed Feb 1 03:04:39 2006 -0800 > > smbfs readdir vs signal fix > > An old patch designed to fix http://bugme.osdl.org/show_bug.cgi?id=4497, > "getdents gives empty/random result upon signal". > > If smbfs's readdir() is interupted by a signal, smb_readdir() failed to > noticed that and proceeded to treat the unread-into page as valid directory > contents. Fix that up by handling the -ERESTARTSYS. > > Thanks to Stian Skjelstad for reporting and testing. > > Cc: Stian Skjelstad <stian@nixia.no> > Signed-off-by: Andrew Morton <akpm@osdl.org> > Signed-off-by: Linus Torvalds <torvalds@osdl.org> > >diff --git a/fs/smbfs/dir.c b/fs/smbfs/dir.c >index 6bf7f6f..c9af38f 100644 >--- a/fs/smbfs/dir.c >+++ b/fs/smbfs/dir.c >@@ -209,6 +209,8 @@ init_cache: > ctl.valid = 1; > read_really: > result = server->ops->readdir(filp, dirent, filldir, &ctl); >+ if (result == -ERESTARTSYS && page) >+ ClearPageUptodate(page); > if (ctl.idx == -1) > goto invalid_cache; /* retry */ > ctl.head.end = ctl.fpos - 1; >@@ -217,7 +219,8 @@ finished: > if (page) { > cache->head = ctl.head; > kunmap(page); >- SetPageUptodate(page); >+ if (result != -ERESTARTSYS) >+ SetPageUptodate(page); > unlock_page(page); > page_cache_release(page); > } > >commit be49eda53efb575192023bfacaf5f6e890d8e094 >Author: Davi Arnaut <davi.arnaut@gmail.com> >Date: Mon Nov 7 00:59:37 2005 -0800 > > smbfs: 'names_cache' memory leak > > Data allocated with "__getname()" should always be free'd with "__putname()" > because of the AUDITSYSCALL code. > > Signed-off-by: Davi Arnaut <davi.arnaut@gmail.com> > Cc: Urban Widmark <urban@teststation.com> > Signed-off-by: Andrew Morton <akpm@osdl.org> > Signed-off-by: Linus Torvalds <torvalds@osdl.org> > >diff --git a/fs/smbfs/symlink.c b/fs/smbfs/symlink.c >index 8b069e0..5eec624 100644 >--- a/fs/smbfs/symlink.c >+++ b/fs/smbfs/symlink.c >@@ -45,7 +45,7 @@ static int smb_follow_link(struct dentry *dentry, struct nameidata *nd) > int len = smb_proc_read_link(server_from_dentry(dentry), > dentry, link, PATH_MAX - 1); > if (len < 0) { >- putname(link); >+ __putname(link); > link = ERR_PTR(len); > } else { > link[len] = 0; >@@ -59,7 +59,7 @@ static void smb_put_link(struct dentry *dentry, struct nameidata *nd) > { > char *s = nd_get_link(nd); > if (!IS_ERR(s)) >- putname(s); >+ __putname(s); > } > > struct inode_operations smb_link_inode_operations = > >commit 2e4f49a3a6a225b8ed57bef7f5490d4ae31b516a >Author: tvrtko.ursulin <tvrtko.ursulin> >Date: Wed Jan 5 05:31:12 2005 +0000 > > smb_file_open() retval fix > > Correctly propagate the return value from smb_open(). > > Signed-off-by: Andrew Morton <akpm@osdl.org> > Signed-off-by: Linus Torvalds <torvalds@osdl.org> > > BKrev: 41db7ba0gZkJ6x1QYcVJjsm-djxP_g > >diff --git a/fs/smbfs/file.c b/fs/smbfs/file.c >index e97fc58..19159dd 100644 >--- a/fs/smbfs/file.c >+++ b/fs/smbfs/file.c >@@ -362,7 +362,7 @@ smb_file_open(struct inode *inode, struct file * file) > SMB_I(inode)->openers++; > out: > unlock_kernel(); >- return 0; >+ return result; > } > > static int > >commit 52a72c8def82f4f706be6dde06b710c7e21b374d >Author: Adrian Bunk <bunk@stusta.de> >Date: Mon Nov 7 00:59:23 2005 -0800 > > fs/smbfs/request.c: turn NULL dereference into BUG() > > In a case documented as > > We should never be called with any of these states > > BUG() in a case that would later result in a NULL pointer dereference. > > Signed-off-by: Adrian Bunk <bunk@stusta.de> > Signed-off-by: Andrew Morton <akpm@osdl.org> > Signed-off-by: Linus Torvalds <torvalds@osdl.org> > >diff --git a/fs/smbfs/request.c b/fs/smbfs/request.c >index ca1155e..45ccc20 100644 >--- a/fs/smbfs/request.c >+++ b/fs/smbfs/request.c >@@ -789,8 +789,7 @@ int smb_request_recv(struct smb_sb_info *server) > /* We should never be called with any of these states */ > case SMB_RECV_END: > case SMB_RECV_REQUEST: >- server->rstate = SMB_RECV_END; >- break; >+ BUG(); > } > > if (result < 0) { > >commit 7bf6d7b75bcf67c3eeec7a09791037ba6b2e541d >Author: Maciej W. Rozycki <macro@linux-mips.org> >Date: Sun Jan 8 01:04:50 2006 -0800 > > fs/smbfs/proc.c: fix data corruption in smb_proc_setattr_unix() > > This patch fixes a data corruption in smb_proc_setattr_unix() > (smb_filetype_from_mode() returns an u32, and there are only four bytes > reserved for it in data. > > Signed-off-by: Adrian Bunk <bunk@stusta.de> > Signed-off-by: Andrew Morton <akpm@osdl.org> > Signed-off-by: Linus Torvalds <torvalds@osdl.org> > >diff --git a/fs/smbfs/proc.c b/fs/smbfs/proc.c >index 4df0c1d..79acb5c 100644 >--- a/fs/smbfs/proc.c >+++ b/fs/smbfs/proc.c >@@ -3112,7 +3112,7 @@ smb_proc_setattr_unix(struct dentry *d, struct iattr *attr, > LSET(data, 32, SMB_TIME_NO_CHANGE); > LSET(data, 40, SMB_UID_NO_CHANGE); > LSET(data, 48, SMB_GID_NO_CHANGE); >- LSET(data, 56, smb_filetype_from_mode(attr->ia_mode)); >+ DSET(data, 56, smb_filetype_from_mode(attr->ia_mode)); > LSET(data, 60, major); > LSET(data, 68, minor); > LSET(data, 76, 0);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 241545
: 236241 |
239561
|
249001