tree: git://git.samba.org/sfrench/cifs-2.6.git for-next head: 45f4017ee6cabfe12161c1289fe06f9d9b16805a commit: 4d38952f6fe99138c0250136a1b59a6722819079 [23/27] cifs: Add support for failover in smb2_reconnect() config: i386-randconfig-x015-201849 (attached as .config) compiler: gcc-7 (Debian 7.3.0-1) 7.3.0 reproduce: git checkout 4d38952f6fe99138c0250136a1b59a6722819079 # save the attached .config to linux build tree make ARCH=i386 All warnings (new ones prefixed by >>): fs//cifs/smb2pdu.c: In function '__smb2_reconnect': >> fs//cifs/smb2pdu.c:220:1: warning: the frame size of 1328 bytes is larger than 1024 bytes [-Wframe-larger-than=] } ^ vim +220 fs//cifs/smb2pdu.c 157 158 #ifdef CONFIG_CIFS_DFS_UPCALL 159 static int __smb2_reconnect(const struct nls_table *nlsc, 160 struct cifs_tcon *tcon) 161 { 162 int rc; 163 struct dfs_cache_tgt_list tl; 164 struct dfs_cache_tgt_iterator *it = NULL; 165 char tree[MAX_TREE_SIZE + 1]; 166 const char *tcp_host; 167 size_t tcp_host_len; 168 const char *dfs_host; 169 size_t dfs_host_len; 170 171 if (tcon->ipc) { 172 snprintf(tree, sizeof(tree), "\\\\%s\\IPC$", 173 tcon->ses->server->hostname); 174 return SMB2_tcon(0, tcon->ses, tree, tcon, nlsc); 175 } 176 177 if (!tcon->dfs_path) 178 return SMB2_tcon(0, tcon->ses, tcon->treeName, tcon, nlsc); 179 180 rc = dfs_cache_noreq_find(tcon->dfs_path + 1, NULL, &tl); 181 if (rc) 182 return rc; 183 184 extract_unc_hostname(tcon->ses->server->hostname, &tcp_host, 185 &tcp_host_len); 186 187 for (it = dfs_cache_get_tgt_iterator(&tl); it; 188 it = dfs_cache_get_next_tgt(&tl, it)) { 189 const char *tgt = dfs_cache_get_tgt_name(it); 190 191 extract_unc_hostname(tgt, &dfs_host, &dfs_host_len); 192 193 if (dfs_host_len != tcp_host_len 194 || strncasecmp(dfs_host, tcp_host, dfs_host_len) != 0) { 195 cifs_dbg(FYI, "%s: skipping %.*s, doesn't match %.*s", 196 __func__, 197 (int)dfs_host_len, dfs_host, 198 (int)tcp_host_len, tcp_host); 199 continue; 200 } 201 202 snprintf(tree, sizeof(tree), "\\%s", tgt); 203 204 rc = SMB2_tcon(0, tcon->ses, tree, tcon, nlsc); 205 if (!rc) 206 break; 207 if (rc == -EREMOTE) 208 break; 209 } 210 211 if (!rc) { 212 if (it) 213 rc = dfs_cache_noreq_update_tgthint(tcon->dfs_path + 1, 214 it); 215 else 216 rc = -ENOENT; 217 } 218 dfs_cache_free_tgts(&tl); 219 return rc; > 220 } 221 #else 222 static inline int __smb2_reconnect(const struct nls_table *nlsc, 223 struct cifs_tcon *tcon) 224 { 225 return SMB2_tcon(0, tcon->ses, tcon->treeName, tcon, nlsc); 226 } 227 #endif 228 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip