linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: kernel test robot <rong.a.chen@intel.com>
To: 권오훈 <ohoono.kwon@samsung.com>
Cc: clang-built-linux <clang-built-linux@googlegroups.com>,
	kbuild-all@lists.01.org,
	Linux Memory Management List <linux-mm@kvack.org>,
	Rob Herring <robh@kernel.org>
Subject: Fwd: [kbuild] [linux-next:master 1184/3379] drivers/of/fdt.c:196:4: warning: Value stored to 'pprev' is never read [clang-analyzer-deadcode.DeadStores]
Date: Wed, 28 Jul 2021 08:33:33 +0800	[thread overview]
Message-ID: <6a891404-a6b8-7814-b455-2fa5b78ce60d@intel.com> (raw)
In-Reply-To: <202107272200.TC2nuNg4-lkp@intel.com>

[-- Attachment #1: Type: text/plain, Size: 21287 bytes --]


tree: 
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   2265c5286967c58db9a99ed1b74105977507e690
commit: eb7173988caf6fc68ef00065b9defb5ac3467f21 [1184/3379] of: fdt: 
remove unnecessary codes
config: x86_64-randconfig-c001-20210726 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 
c63dbd850182797bc4b76124d08e1c320ab2365d)
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
         # install x86_64 cross compiling tool for clang build
         # apt-get install binutils-x86-64-linux-gnu
         # 
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=eb7173988caf6fc68ef00065b9defb5ac3467f21
         git remote add linux-next 
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
         git fetch --no-tags linux-next master
         git checkout eb7173988caf6fc68ef00065b9defb5ac3467f21
         # save the attached .config 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/mtd/chips/cfi_cmdset_0020.c:703:7: note: Assuming the 
condition is false
                    if (ECCBUF_DIV(elem_len)) { /* write clean aligned 
data */
                        ^
    drivers/mtd/chips/cfi_cmdset_0020.c:660:24: note: expanded from 
macro 'ECCBUF_DIV'
    #define ECCBUF_DIV(x) ((x) & ~(ECCBUF_SIZE - 1))
                           ^~~~~~~~~~~~~~~~~~~~~~~~
    drivers/mtd/chips/cfi_cmdset_0020.c:703:3: note: Taking false branch
                    if (ECCBUF_DIV(elem_len)) { /* write clean aligned 
data */
                    ^
    drivers/mtd/chips/cfi_cmdset_0020.c:712:7: note: Assuming 'buflen' 
is not equal to 0
                    if (buflen) {
                        ^~~~~~
    drivers/mtd/chips/cfi_cmdset_0020.c:712:3: note: Taking true branch
                    if (buflen) {
                    ^
    drivers/mtd/chips/cfi_cmdset_0020.c:714:29: note: The right operand 
of '+' is a garbage value
                            memcpy(buffer, elem_base + thislen, buflen);
                                                     ^ ~~~~~~~
    drivers/mtd/chips/cfi_cmdset_0020.c:1035:16: warning: Value stored 
to 'timeo' during its initialization is never read 
[clang-analyzer-deadcode.DeadStores]
            unsigned long timeo = jiffies + HZ;
                          ^~~~~   ~~~~~~~~~~~~
    drivers/mtd/chips/cfi_cmdset_0020.c:1035:16: note: Value stored to 
'timeo' during its initialization is never read
            unsigned long timeo = jiffies + HZ;
                          ^~~~~   ~~~~~~~~~~~~
    drivers/mtd/chips/cfi_cmdset_0020.c:1181:16: warning: Value stored 
to 'timeo' during its initialization is never read 
[clang-analyzer-deadcode.DeadStores]
            unsigned long timeo = jiffies + HZ;
                          ^~~~~   ~~~~~~~~~~~~
    drivers/mtd/chips/cfi_cmdset_0020.c:1181:16: note: Value stored to 
'timeo' during its initialization is never read
            unsigned long timeo = jiffies + HZ;
                          ^~~~~   ~~~~~~~~~~~~
    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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    2 warnings generated.
    Suppressed 2 warnings (2 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.
    2 warnings generated.
    Suppressed 2 warnings (2 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    drivers/nfc/st21nfca/i2c.c:321:4: warning: Value stored to 'i' is 
never read [clang-analyzer-deadcode.DeadStores]
                            i = 0;
                            ^   ~
    drivers/nfc/st21nfca/i2c.c:321:4: note: Value stored to 'i' is never 
read
                            i = 0;
                            ^   ~
    Suppressed 3 warnings (3 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.
    2 warnings generated.
    Suppressed 2 warnings (2 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    2 warnings generated.
    Suppressed 2 warnings (2 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    2 warnings generated.
    Suppressed 2 warnings (2 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.
    3 warnings generated.
>> drivers/of/fdt.c:196:4: warning: Value stored to 'pprev' is never read [clang-analyzer-deadcode.DeadStores]
                            pprev      = &pp->next;
                            ^            ~~~~~~~~~
    drivers/of/fdt.c:196:4: note: Value stored to 'pprev' is never read
                            pprev      = &pp->next;
                            ^            ~~~~~~~~~
    Suppressed 2 warnings (2 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.
    3 warnings generated.
    Suppressed 3 warnings (3 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.
    drivers/of/irq.c:567:2: warning: Dereference of null pointer 
[clang-analyzer-core.NullDereference]
            list_for_each_entry_safe(desc, temp_desc, &intc_parent_list, 
list) {
            ^
    include/linux/list.h:716:7: note: expanded from macro 
'list_for_each_entry_safe'
                    n = list_next_entry(pos, member); 
     \
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/list.h:555:2: note: expanded from macro 'list_next_entry'
            list_entry((pos)->member.next, typeof(*(pos)), member)
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/list.h:511:2: note: expanded from macro 'list_entry'
            container_of(ptr, type, member)
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/kernel.h:494:25: note: expanded from macro 'container_of'
            void *__mptr = (void *)(ptr); 
     \
                                   ^~~~~
    drivers/of/irq.c:489:2: note: Loop condition is true.  Entering loop 
body
            for_each_matching_node_and_match(np, matches, &match) {
            ^
    include/linux/of.h:1292:2: note: expanded from macro 
'for_each_matching_node_and_match'
            for (dn = of_find_matching_node_and_match(NULL, matches, 
match); \
            ^
    drivers/of/irq.c:490:8: note: Calling 'of_property_read_bool'
                    if (!of_property_read_bool(np, 
"interrupt-controller") ||
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/of.h:1230:9: note: Assuming 'prop' is non-null
            return prop ? true : false;
                   ^~~~
    include/linux/of.h:1230:9: note: '?' condition is true
    include/linux/of.h:1230:2: note: Returning the value 1, which 
participates in a condition later
            return prop ? true : false;
            ^~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/of/irq.c:490:8: note: Returning from 'of_property_read_bool'
                    if (!of_property_read_bool(np, 
"interrupt-controller") ||
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/of/irq.c:490:7: note: Left side of '||' is false
                    if (!of_property_read_bool(np, 
"interrupt-controller") ||
                        ^
    drivers/of/irq.c:491:5: note: Assuming the condition is false
                                    !of_device_is_available(np))
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/of/irq.c:490:3: note: Taking false branch
                    if (!of_property_read_bool(np, 
"interrupt-controller") ||
                    ^
    drivers/of/irq.c:494:12: note: Assuming field 'data' is non-null
                    if (WARN(!match->data, "of_irq_init: no init 
function for %s\n",
                             ^
    include/asm-generic/bug.h:130:25: note: expanded from macro 'WARN'
            int __ret_warn_on = !!(condition); 
     \
                                   ^~~~~~~~~
    drivers/of/irq.c:494:7: note: Taking false branch
                    if (WARN(!match->data, "of_irq_init: no init 
function for %s\n",
                        ^
    include/asm-generic/bug.h:131:2: note: expanded from macro 'WARN'
            if (unlikely(__ret_warn_on)) 
     \
            ^
    drivers/of/irq.c:494:3: note: Taking false branch
                    if (WARN(!match->data, "of_irq_init: no init 
function for %s\n",
                    ^
    drivers/of/irq.c:502:10: note: Calling 'kzalloc'
                    desc = kzalloc(sizeof(*desc), GFP_KERNEL);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/slab.h:721:9: note: Calling 'kmalloc'
            return kmalloc(size, flags | __GFP_ZERO);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/slab.h:579:2: note: Taking false branch
            if (__builtin_constant_p(size)) {
            ^
    include/linux/slab.h:596:2: note: Returning pointer, which 
participates in a condition later
            return __kmalloc(size, flags);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/slab.h:721:9: note: Returning from 'kmalloc'
            return kmalloc(size, flags | __GFP_ZERO);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/slab.h:721:2: note: Returning pointer, which 
participates in a condition later
            return kmalloc(size, flags | __GFP_ZERO);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/of/irq.c:502:10: note: Returning from 'kzalloc'
                    desc = kzalloc(sizeof(*desc), GFP_KERNEL);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/of/irq.c:503:7: note: Assuming 'desc' is non-null
                    if (!desc) {
                        ^~~~~
    drivers/of/irq.c:503:3: note: Taking false branch
                    if (!desc) {
                    ^
    drivers/of/irq.c:511:33: note: 'np' is not equal to field 
'interrupt_parent'
                    if (desc->interrupt_parent == np)
                                                  ^~
    drivers/of/irq.c:511:3: note: Taking false branch

vim +/pprev +196 drivers/of/fdt.c

bbd33931a08362 Grant Likely 2009-11-23  106  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  107  static void populate_properties(const void *blob,
dfbd4c6eff35f1 Gavin Shan   2016-05-03  108  				int offset,
dfbd4c6eff35f1 Gavin Shan   2016-05-03  109  				void **mem,
dfbd4c6eff35f1 Gavin Shan   2016-05-03  110  				struct device_node *np,
dfbd4c6eff35f1 Gavin Shan   2016-05-03  111  				const char *nodename,
dfbd4c6eff35f1 Gavin Shan   2016-05-03  112  				bool dryrun)
dfbd4c6eff35f1 Gavin Shan   2016-05-03  113  {
dfbd4c6eff35f1 Gavin Shan   2016-05-03  114  	struct property *pp, 
**pprev = NULL;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  115  	int cur;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  116  	bool has_name = false;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  117  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  118  	pprev = &np->properties;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  119  	for (cur = 
fdt_first_property_offset(blob, offset);
dfbd4c6eff35f1 Gavin Shan   2016-05-03  120  	     cur >= 0;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  121  	     cur = 
fdt_next_property_offset(blob, cur)) {
dfbd4c6eff35f1 Gavin Shan   2016-05-03  122  		const __be32 *val;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  123  		const char *pname;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  124  		u32 sz;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  125  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  126  		val = fdt_getprop_by_offset(blob, cur, &pname, &sz);
dfbd4c6eff35f1 Gavin Shan   2016-05-03  127  		if (!val) {
606ad42aa3b1fe Rob Herring  2016-06-15  128  			pr_warn("Cannot locate 
property at 0x%x\n", cur);
dfbd4c6eff35f1 Gavin Shan   2016-05-03  129  			continue;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  130  		}
dfbd4c6eff35f1 Gavin Shan   2016-05-03  131  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  132  		if (!pname) {
606ad42aa3b1fe Rob Herring  2016-06-15  133  			pr_warn("Cannot find 
property name at 0x%x\n", cur);
dfbd4c6eff35f1 Gavin Shan   2016-05-03  134  			continue;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  135  		}
dfbd4c6eff35f1 Gavin Shan   2016-05-03  136  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  137  		if (!strcmp(pname, "name"))
dfbd4c6eff35f1 Gavin Shan   2016-05-03  138  			has_name = true;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  139  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  140  		pp = unflatten_dt_alloc(mem, sizeof(struct property),
dfbd4c6eff35f1 Gavin Shan   2016-05-03  141  					__alignof__(struct 
property));
dfbd4c6eff35f1 Gavin Shan   2016-05-03  142  		if (dryrun)
dfbd4c6eff35f1 Gavin Shan   2016-05-03  143  			continue;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  144  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  145  		/* We accept flattened tree phandles either in
dfbd4c6eff35f1 Gavin Shan   2016-05-03  146  		 * ePAPR-style "phandle" 
properties, or the
dfbd4c6eff35f1 Gavin Shan   2016-05-03  147  		 * legacy "linux,phandle" 
properties.  If both
dfbd4c6eff35f1 Gavin Shan   2016-05-03  148  		 * appear and have 
different values, things
dfbd4c6eff35f1 Gavin Shan   2016-05-03  149  		 * will get weird. Don't 
do that.
bbd33931a08362 Grant Likely 2009-11-23  150  		 */
dfbd4c6eff35f1 Gavin Shan   2016-05-03  151  		if (!strcmp(pname, 
"phandle") ||
dfbd4c6eff35f1 Gavin Shan   2016-05-03  152  		    !strcmp(pname, 
"linux,phandle")) {
dfbd4c6eff35f1 Gavin Shan   2016-05-03  153  			if (!np->phandle)
dfbd4c6eff35f1 Gavin Shan   2016-05-03  154  				np->phandle = 
be32_to_cpup(val);
dfbd4c6eff35f1 Gavin Shan   2016-05-03  155  		}
dfbd4c6eff35f1 Gavin Shan   2016-05-03  156  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  157  		/* And we process the "ibm,phandle" property
dfbd4c6eff35f1 Gavin Shan   2016-05-03  158  		 * used in pSeries 
dynamic device tree
dfbd4c6eff35f1 Gavin Shan   2016-05-03  159  		 * stuff
dfbd4c6eff35f1 Gavin Shan   2016-05-03  160  		 */
dfbd4c6eff35f1 Gavin Shan   2016-05-03  161  		if (!strcmp(pname, 
"ibm,phandle"))
dfbd4c6eff35f1 Gavin Shan   2016-05-03  162  			np->phandle = 
be32_to_cpup(val);
dfbd4c6eff35f1 Gavin Shan   2016-05-03  163  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  164  		pp->name   = (char *)pname;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  165  		pp->length = sz;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  166  		pp->value  = (__be32 *)val;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  167  		*pprev     = pp;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  168  		pprev      = &pp->next;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  169  	}
dfbd4c6eff35f1 Gavin Shan   2016-05-03  170  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  171  	/* With version 0x10 we may not have the name property,
dfbd4c6eff35f1 Gavin Shan   2016-05-03  172  	 * recreate it here from 
the unit name if absent
dfbd4c6eff35f1 Gavin Shan   2016-05-03  173  	 */
dfbd4c6eff35f1 Gavin Shan   2016-05-03  174  	if (!has_name) {
dfbd4c6eff35f1 Gavin Shan   2016-05-03  175  		const char *p = nodename, 
*ps = p, *pa = NULL;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  176  		int len;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  177  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  178  		while (*p) {
dfbd4c6eff35f1 Gavin Shan   2016-05-03  179  			if ((*p) == '@')
dfbd4c6eff35f1 Gavin Shan   2016-05-03  180  				pa = p;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  181  			else if ((*p) == '/')
dfbd4c6eff35f1 Gavin Shan   2016-05-03  182  				ps = p + 1;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  183  			p++;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  184  		}
dfbd4c6eff35f1 Gavin Shan   2016-05-03  185  dfbd4c6eff35f1 Gavin Shan 
  2016-05-03  186  		if (pa < ps)
dfbd4c6eff35f1 Gavin Shan   2016-05-03  187  			pa = p;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  188  		len = (pa - ps) + 1;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  189  		pp = 
unflatten_dt_alloc(mem, sizeof(struct property) + len,
dfbd4c6eff35f1 Gavin Shan   2016-05-03  190  					__alignof__(struct 
property));
dfbd4c6eff35f1 Gavin Shan   2016-05-03  191  		if (!dryrun) {
dfbd4c6eff35f1 Gavin Shan   2016-05-03  192  			pp->name   = "name";
dfbd4c6eff35f1 Gavin Shan   2016-05-03  193  			pp->length = len;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  194  			pp->value  = pp + 1;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  195  			*pprev     = pp;
dfbd4c6eff35f1 Gavin Shan   2016-05-03 @196  			pprev      = &pp->next;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  197  			memcpy(pp->value, ps, 
len - 1);
dfbd4c6eff35f1 Gavin Shan   2016-05-03  198  			((char *)pp->value)[len 
- 1] = 0;
dfbd4c6eff35f1 Gavin Shan   2016-05-03  199  			pr_debug("fixed up name 
for %s -> %s\n",
dfbd4c6eff35f1 Gavin Shan   2016-05-03  200  				 nodename, (char 
*)pp->value);
dfbd4c6eff35f1 Gavin Shan   2016-05-03  201  		}
dfbd4c6eff35f1 Gavin Shan   2016-05-03  202  	}
dfbd4c6eff35f1 Gavin Shan   2016-05-03  203  }
dfbd4c6eff35f1 Gavin Shan   2016-05-03  204
:::::: The code at line 196 was first introduced by commit
:::::: dfbd4c6eff35f1b1065cca046003cc9d7ff27222 drivers/of: Split 
unflatten_dt_node()

:::::: TO: Gavin Shan <gwshan@linux.vnet.ibm.com>
:::::: CC: Rob Herring <robh@kernel.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org


[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 33629 bytes --]

[-- Attachment #3: Attached Message Part --]
[-- Type: text/plain, Size: 154 bytes --]

_______________________________________________
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-leave@lists.01.org


           reply	other threads:[~2021-07-28  0:33 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <202107272200.TC2nuNg4-lkp@intel.com>]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6a891404-a6b8-7814-b455-2fa5b78ce60d@intel.com \
    --to=rong.a.chen@intel.com \
    --cc=clang-built-linux@googlegroups.com \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-mm@kvack.org \
    --cc=ohoono.kwon@samsung.com \
    --cc=robh@kernel.org \
    --subject='Re: Fwd: [kbuild] [linux-next:master 1184/3379] drivers/of/fdt.c:196:4: warning: Value stored to '\''pprev'\'' is never read [clang-analyzer-deadcode.DeadStores]' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).