2012/10/25 Dan Carpenter <dan.carpenter@xxxxxxxxxx>: > Hello Pavel Shilovsky, > > This is a semi-automatic email about new static checker warnings. > > The patch f9c6e234c3ca: "CIFS: Move readpage code to ops struct" from > Sep 18, 2012, leads to the following Smatch complaint: > > fs/cifs/file.c:2954 cifs_read() > warn: variable dereferenced before check 'tcon->ses' (see line 2932) > > fs/cifs/file.c > 2931 tcon = tlink_tcon(open_file->tlink); > 2932 server = tcon->ses->server; > ^^^^^^^^^^^ > New dereference. > > 2933 > 2934 if (!server->ops->sync_read) { > 2935 free_xid(xid); > 2936 return -ENOSYS; > 2937 } > 2938 > 2939 if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_RWPIDFORWARD) > 2940 pid = open_file->pid; > 2941 else > 2942 pid = current->tgid; > 2943 > 2944 if ((file->f_flags & O_ACCMODE) == O_WRONLY) > 2945 cFYI(1, "attempting read on write only file instance"); > 2946 > 2947 for (total_read = 0, cur_offset = read_data; read_size > total_read; > 2948 total_read += bytes_read, cur_offset += bytes_read) { > 2949 current_read_size = min_t(uint, read_size - total_read, rsize); > 2950 /* > 2951 * For windows me and 9x we do not want to request more than it > 2952 * negotiated since it will refuse the read then. > 2953 */ > 2954 if ((tcon->ses) && !(tcon->ses->capabilities & > ^^^^^^^^^ > Old check. > > 2955 tcon->ses->server->vals->cap_large_files)) { I don't think that tcon->ses can be NULL here - it seems that we can remove this check. Thoughts? > 2956 current_read_size = min_t(uint, current_read_size, > > regards, > dan carpenter > -- > 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 -- Best regards, Pavel Shilovsky. -- 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