* [cifs:for-next 9/12] fs/cifs/smb2ops.c:2677:2: warning: Value stored to 'rc' is never read [clang-analyzer-deadcode.DeadStores]
@ 2022-03-23 19:33 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-03-23 19:33 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 24801 bytes --]
CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-cifs(a)vger.kernel.org
CC: samba-technical(a)lists.samba.org
TO: Ronnie Sahlberg <lsahlber@redhat.com>
CC: Steve French <stfrench@microsoft.com>
tree: git://git.samba.org/sfrench/cifs-2.6.git for-next
head: cf084b6b81ac0571021fa250d942c441d7f25265
commit: c7550868b2ed88725034be3ba78e38721b5747b9 [9/12] cifs: change smb2_query_info_compound to use a cached fid, if available
:::::: branch date: 15 hours ago
:::::: commit date: 21 hours ago
config: x86_64-randconfig-c007 (https://download.01.org/0day-ci/archive/20220324/202203240346.xr6vS8U9-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 902f4708fe1d03b0de7e5315ef875006a6adc319)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add cifs git://git.samba.org/sfrench/cifs-2.6.git
git fetch --no-tags cifs for-next
git checkout c7550868b2ed88725034be3ba78e38721b5747b9
# save the config file to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 clang-analyzer
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
clang-analyzer warnings: (new ones prefixed by >>)
^
drivers/net/arcnet/arcdevice.h:79:42: note: expanded from macro 'arc_printk'
#define arc_printk(x, dev, fmt, ...) \
^
drivers/net/arcnet/com20020.c:313:2: note: Taking false branch
arc_printk(D_DEBUG, dev, "%s: %d: %s\n", __FILE__, __LINE__, __func__);
^
drivers/net/arcnet/arcdevice.h:81:2: note: expanded from macro 'arc_printk'
if (BUGLVL(x)) { \
^
drivers/net/arcnet/com20020.c:313:2: note: Loop condition is false. Exiting loop
arc_printk(D_DEBUG, dev, "%s: %d: %s\n", __FILE__, __LINE__, __func__);
^
drivers/net/arcnet/arcdevice.h:79:42: note: expanded from macro 'arc_printk'
#define arc_printk(x, dev, fmt, ...) \
^
drivers/net/arcnet/com20020.c:315:2: note: Calling 'com20020_copy_from_card'
com20020_copy_from_card(dev, 0, 0, &inbyte, 1);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/arcnet/com20020.c:73:2: note: Taking false branch
TIME(dev, "insb", count,
^
drivers/net/arcnet/arcdevice.h:100:2: note: expanded from macro 'TIME'
if (BUGLVL(D_TIMING)) { \
^
drivers/net/arcnet/com20020.c:74:7: note: Calling 'insb'
arcnet_insb(ioaddr, COM20020_REG_RW_MEMDATA, buf, count));
^
drivers/net/arcnet/arcdevice.h:389:2: note: expanded from macro 'arcnet_insb'
insb((addr) + BUS_ALIGN * (offset), buffer, count)
^
arch/x86/include/asm/io.h:330:14: note: expanded from macro 'insb'
#define insb insb
^
drivers/net/arcnet/arcdevice.h:110:3: note: expanded from macro 'TIME'
call; \
^~~~
arch/x86/include/asm/io.h:320:1: note: Taking false branch
BUILDIO(b, b, char)
^
arch/x86/include/asm/io.h:306:2: note: expanded from macro 'BUILDIO'
if (cc_platform_has(CC_ATTR_GUEST_UNROLL_STRING_IO)) { \
^
arch/x86/include/asm/io.h:320:1: note: Returning without writing to '*addr'
BUILDIO(b, b, char)
^
arch/x86/include/asm/io.h:317:11: note: expanded from macro 'BUILDIO'
} \
^
drivers/net/arcnet/com20020.c:74:7: note: Returning from 'insb'
arcnet_insb(ioaddr, COM20020_REG_RW_MEMDATA, buf, count));
^
drivers/net/arcnet/arcdevice.h:389:2: note: expanded from macro 'arcnet_insb'
insb((addr) + BUS_ALIGN * (offset), buffer, count)
^
arch/x86/include/asm/io.h:330:14: note: expanded from macro 'insb'
#define insb insb
^
drivers/net/arcnet/arcdevice.h:110:3: note: expanded from macro 'TIME'
call; \
^~~~
drivers/net/arcnet/com20020.c:73:2: note: Loop condition is false. Exiting loop
TIME(dev, "insb", count,
^
drivers/net/arcnet/arcdevice.h:98:42: note: expanded from macro 'TIME'
#define TIME(dev, name, bytes, call) \
^
drivers/net/arcnet/com20020.c:75:1: note: Returning without writing to '*buf'
}
^
drivers/net/arcnet/com20020.c:315:2: note: Returning from 'com20020_copy_from_card'
com20020_copy_from_card(dev, 0, 0, &inbyte, 1);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/arcnet/com20020.c:316:2: note: Taking false branch
arc_printk(D_DEBUG, dev, "%s: %d: %s\n", __FILE__, __LINE__, __func__);
^
drivers/net/arcnet/arcdevice.h:81:2: note: expanded from macro 'arc_printk'
if (BUGLVL(x)) { \
^
drivers/net/arcnet/com20020.c:316:2: note: Loop condition is false. Exiting loop
arc_printk(D_DEBUG, dev, "%s: %d: %s\n", __FILE__, __LINE__, __func__);
^
drivers/net/arcnet/arcdevice.h:79:42: note: expanded from macro 'arc_printk'
#define arc_printk(x, dev, fmt, ...) \
^
drivers/net/arcnet/com20020.c:317:13: note: The left operand of '!=' is a garbage value
if (inbyte != TESTvalue) {
~~~~~~ ^
Suppressed 8 warnings (8 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
8 warnings generated.
Suppressed 8 warnings (8 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
8 warnings generated.
Suppressed 8 warnings (8 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
8 warnings generated.
Suppressed 8 warnings (8 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
12 warnings generated.
>> fs/cifs/smb2ops.c:2677:2: warning: Value stored to 'rc' is never read [clang-analyzer-deadcode.DeadStores]
rc = open_cached_dir(xid, tcon, path, cifs_sb, &cfid);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fs/cifs/smb2ops.c:2677:2: note: Value stored to 'rc' is never read
rc = open_cached_dir(xid, tcon, path, cifs_sb, &cfid);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fs/cifs/smb2ops.c:4252:3: warning: Call to function 'strcat' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcat'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy]
strcat(message, "R");
^~~~~~
fs/cifs/smb2ops.c:4252:3: note: Call to function 'strcat' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcat'. CWE-119
strcat(message, "R");
^~~~~~
fs/cifs/smb2ops.c:4256:3: warning: Call to function 'strcat' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcat'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy]
strcat(message, "H");
^~~~~~
fs/cifs/smb2ops.c:4256:3: note: Call to function 'strcat' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcat'. CWE-119
strcat(message, "H");
^~~~~~
fs/cifs/smb2ops.c:4260:3: warning: Call to function 'strcat' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcat'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy]
strcat(message, "W");
^~~~~~
fs/cifs/smb2ops.c:4260:3: note: Call to function 'strcat' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcat'. CWE-119
strcat(message, "W");
^~~~~~
Suppressed 8 warnings (8 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
8 warnings generated.
Suppressed 8 warnings (8 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
5 warnings generated.
lib/mpi/mpih-div.c:202:12: warning: Division by zero [clang-analyzer-core.DivideZero]
return 1 / dsize;
~~^~~~~~~
lib/mpi/mpih-div.c:194:2: note: Control jumps to 'case 0:' at line 195
switch (dsize) {
^
lib/mpi/mpih-div.c:202:12: note: Division by zero
return 1 / dsize;
~~^~~~~~~
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
4 warnings generated.
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
5 warnings generated.
drivers/i2c/algos/i2c-algo-pcf.c:322:3: warning: Value stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores]
ret = pcf_doAddress(adap, pmsg);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/i2c/algos/i2c-algo-pcf.c:322:3: note: Value stored to 'ret' is never read
ret = pcf_doAddress(adap, pmsg);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~
Suppressed 4 warnings (4 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
9 warnings generated.
Suppressed 9 warnings (9 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
8 warnings generated.
Suppressed 8 warnings (8 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
10 warnings generated.
net/core/skbuff.c:741:6: warning: Access to field 'head' results in a dereference of a null pointer (loaded from variable 'skb') [clang-analyzer-core.NullDereference]
if (likely(skb->head))
^
include/linux/compiler.h:77:39: note: expanded from macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
vim +/rc +2677 fs/cifs/smb2ops.c
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2636
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2637 /*
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2638 * Passes the query info response back to the caller on success.
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2639 * Caller need to free this with free_rsp_buf().
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2640 */
f9793b6fcc8ede Ronnie Sahlberg 2018-11-27 2641 int
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2642 smb2_query_info_compound(const unsigned int xid, struct cifs_tcon *tcon,
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2643 const char *path, u32 desired_access,
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2644 u32 class, u32 type, u32 output_len,
f9793b6fcc8ede Ronnie Sahlberg 2018-11-27 2645 struct kvec *rsp, int *buftype,
f9793b6fcc8ede Ronnie Sahlberg 2018-11-27 2646 struct cifs_sb_info *cifs_sb)
6fc05c25ca35e6 Pavel Shilovsky 2012-09-18 2647 {
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2648 struct cifs_ses *ses = tcon->ses;
352d96f3acc6e0 Aurelien Aptel 2020-05-31 2649 struct TCP_Server_Info *server = cifs_pick_channel(ses);
04ad69c342fc4d Paulo Alcantara 2021-03-08 2650 int flags = CIFS_CP_CREATE_CLOSE_OP;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2651 struct smb_rqst rqst[3];
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2652 int resp_buftype[3];
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2653 struct kvec rsp_iov[3];
4d8dfafc5cb88f Ronnie Sahlberg 2018-08-21 2654 struct kvec open_iov[SMB2_CREATE_IOV_SIZE];
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2655 struct kvec qi_iov[1];
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2656 struct kvec close_iov[1];
6fc05c25ca35e6 Pavel Shilovsky 2012-09-18 2657 u8 oplock = SMB2_OPLOCK_LEVEL_NONE;
064f6047a123d6 Pavel Shilovsky 2013-07-09 2658 struct cifs_open_parms oparms;
064f6047a123d6 Pavel Shilovsky 2013-07-09 2659 struct cifs_fid fid;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2660 int rc;
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2661 __le16 *utf16_path;
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2662 struct cached_fid *cfid = NULL;
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2663
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2664 if (!path)
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2665 path = "";
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2666 utf16_path = cifs_convert_path_to_utf16(path, cifs_sb);
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2667 if (!utf16_path)
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2668 return -ENOMEM;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2669
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2670 if (smb3_encryption_required(tcon))
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2671 flags |= CIFS_TRANSFORM_REQ;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2672
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2673 memset(rqst, 0, sizeof(rqst));
c5a5f38f075cf7 Ronnie Sahlberg 2018-09-03 2674 resp_buftype[0] = resp_buftype[1] = resp_buftype[2] = CIFS_NO_BUFFER;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2675 memset(rsp_iov, 0, sizeof(rsp_iov));
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2676
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 @2677 rc = open_cached_dir(xid, tcon, path, cifs_sb, &cfid);
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2678
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2679 memset(&open_iov, 0, sizeof(open_iov));
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2680 rqst[0].rq_iov = open_iov;
4d8dfafc5cb88f Ronnie Sahlberg 2018-08-21 2681 rqst[0].rq_nvec = SMB2_CREATE_IOV_SIZE;
064f6047a123d6 Pavel Shilovsky 2013-07-09 2682
064f6047a123d6 Pavel Shilovsky 2013-07-09 2683 oparms.tcon = tcon;
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2684 oparms.desired_access = desired_access;
064f6047a123d6 Pavel Shilovsky 2013-07-09 2685 oparms.disposition = FILE_OPEN;
0f060936e490c6 Amir Goldstein 2020-02-03 2686 oparms.create_options = cifs_create_options(cifs_sb, 0);
064f6047a123d6 Pavel Shilovsky 2013-07-09 2687 oparms.fid = &fid;
9cbc0b7339b054 Pavel Shilovsky 2013-07-09 2688 oparms.reconnect = false;
6fc05c25ca35e6 Pavel Shilovsky 2012-09-18 2689
352d96f3acc6e0 Aurelien Aptel 2020-05-31 2690 rc = SMB2_open_init(tcon, server,
352d96f3acc6e0 Aurelien Aptel 2020-05-31 2691 &rqst[0], &oplock, &oparms, utf16_path);
6fc05c25ca35e6 Pavel Shilovsky 2012-09-18 2692 if (rc)
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2693 goto qic_exit;
e77fe73c7e38c3 Ronnie Sahlberg 2018-12-31 2694 smb2_set_next_command(tcon, &rqst[0]);
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2695
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2696 memset(&qi_iov, 0, sizeof(qi_iov));
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2697 rqst[1].rq_iov = qi_iov;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2698 rqst[1].rq_nvec = 1;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2699
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2700 if (cfid) {
352d96f3acc6e0 Aurelien Aptel 2020-05-31 2701 rc = SMB2_query_info_init(tcon, server,
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2702 &rqst[1],
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2703 cfid->fid->persistent_fid,
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2704 cfid->fid->volatile_fid,
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2705 class, type, 0,
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2706 output_len, 0,
f5b05d622a3e99 Ronnie Sahlberg 2018-10-07 2707 NULL);
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2708 } else {
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2709 rc = SMB2_query_info_init(tcon, server,
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2710 &rqst[1],
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2711 COMPOUND_FID,
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2712 COMPOUND_FID,
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2713 class, type, 0,
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2714 output_len, 0,
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2715 NULL);
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2716 }
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2717 if (rc)
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2718 goto qic_exit;
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2719 if (!cfid) {
e77fe73c7e38c3 Ronnie Sahlberg 2018-12-31 2720 smb2_set_next_command(tcon, &rqst[1]);
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2721 smb2_set_related(&rqst[1]);
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2722 }
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2723
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2724 memset(&close_iov, 0, sizeof(close_iov));
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2725 rqst[2].rq_iov = close_iov;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2726 rqst[2].rq_nvec = 1;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2727
352d96f3acc6e0 Aurelien Aptel 2020-05-31 2728 rc = SMB2_close_init(tcon, server,
352d96f3acc6e0 Aurelien Aptel 2020-05-31 2729 &rqst[2], COMPOUND_FID, COMPOUND_FID, false);
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2730 if (rc)
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2731 goto qic_exit;
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2732 smb2_set_related(&rqst[2]);
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2733
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2734 if (cfid) {
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2735 rc = compound_send_recv(xid, ses, server,
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2736 flags, 1, &rqst[1],
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2737 &resp_buftype[1], &rsp_iov[1]);
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2738 } else {
352d96f3acc6e0 Aurelien Aptel 2020-05-31 2739 rc = compound_send_recv(xid, ses, server,
352d96f3acc6e0 Aurelien Aptel 2020-05-31 2740 flags, 3, rqst,
730928c8f4be88 Ronnie Sahlberg 2018-08-08 2741 resp_buftype, rsp_iov);
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2742 }
f9793b6fcc8ede Ronnie Sahlberg 2018-11-27 2743 if (rc) {
f9793b6fcc8ede Ronnie Sahlberg 2018-11-27 2744 free_rsp_buf(resp_buftype[1], rsp_iov[1].iov_base);
7dcc82c2dfd5f1 Steve French 2019-09-11 2745 if (rc == -EREMCHG) {
7dcc82c2dfd5f1 Steve French 2019-09-11 2746 tcon->need_reconnect = true;
a0a3036b81f1f6 Joe Perches 2020-04-14 2747 pr_warn_once("server share %s deleted\n",
7dcc82c2dfd5f1 Steve French 2019-09-11 2748 tcon->treeName);
7dcc82c2dfd5f1 Steve French 2019-09-11 2749 }
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2750 goto qic_exit;
f9793b6fcc8ede Ronnie Sahlberg 2018-11-27 2751 }
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2752 *rsp = rsp_iov[1];
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2753 *buftype = resp_buftype[1];
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2754
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2755 qic_exit:
8f47432b25acf5 Ronnie Sahlberg 2022-03-22 2756 kfree(utf16_path);
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2757 SMB2_open_free(&rqst[0]);
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2758 SMB2_query_info_free(&rqst[1]);
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2759 SMB2_close_free(&rqst[2]);
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2760 free_rsp_buf(resp_buftype[0], rsp_iov[0].iov_base);
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2761 free_rsp_buf(resp_buftype[2], rsp_iov[2].iov_base);
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2762 if(cfid)
c7550868b2ed88 Ronnie Sahlberg 2022-03-22 2763 close_cached_dir(cfid);
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2764 return rc;
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2765 }
07d3b2e4264fb3 Ronnie Sahlberg 2018-12-20 2766
--
0-DAY CI Kernel Test Service
https://01.org/lkp
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-03-23 19:33 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-23 19:33 [cifs:for-next 9/12] fs/cifs/smb2ops.c:2677:2: warning: Value stored to 'rc' is never read [clang-analyzer-deadcode.DeadStores] kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.