CC: [email protected]
CC: [email protected]
BCC: [email protected]
CC: [email protected]
TO: Arnd Bergmann <[email protected]>
CC: Masahiro Yamada <[email protected]>
CC: Alex Shi <[email protected]>
CC: Nick Desaulniers <[email protected]>
CC: Miguel Ojeda <[email protected]>
CC: Nathan Chancellor <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   45ab9400e73f34103e73c18a73280c9aa1650e98
commit: e8c07082a810fbb9db303a2b66b66b8d7e588b53 Kbuild: move to -std=gnu11
date:   6 weeks ago
:::::: branch date: 3 hours ago
:::::: commit date: 6 weeks ago
config: mips-randconfig-c004-20220421 
(https://download.01.org/0day-ci/archive/20220424/[email protected]/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 
5bd87350a5ae429baf8f373cb226a57b62f87280)
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 mips cross compiling tool for clang build
        # apt-get install binutils-mips-linux-gnu
        # 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e8c07082a810fbb9db303a2b66b66b8d7e588b53
        git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e8c07082a810fbb9db303a2b66b66b8d7e588b53
        # save the config file
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips 
clang-analyzer 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


clang-analyzer warnings: (new ones prefixed by >>)
           set_softirq_pending(0);
           ^
   include/linux/interrupt.h:545:33: note: expanded from macro 
'set_softirq_pending'
   #define set_softirq_pending(x)  (__this_cpu_write(local_softirq_pending_ref, 
(x)))
                                    ^
   include/linux/percpu-defs.h:452:2: note: expanded from macro 
'__this_cpu_write'
           raw_cpu_write(pcp, val);                                        \
           ^
   include/linux/percpu-defs.h:421:34: note: expanded from macro 'raw_cpu_write'
   #define raw_cpu_write(pcp, val)         __pcpu_size_call(raw_cpu_write_, 
pcp, val)
                                           ^
   note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to 
see all)
   note: expanded from here
   include/asm-generic/percpu.h:214:35: note: expanded from macro 
'raw_cpu_write_4'
   #define raw_cpu_write_4(pcp, val)       raw_cpu_generic_to_op(pcp, val, =)
                                           ^
   include/asm-generic/percpu.h:70:48: note: expanded from macro 
'raw_cpu_generic_to_op'
   #define raw_cpu_generic_to_op(pcp, val, op)                             \
                                                                           ^
   kernel/softirq.c:540:2: note:  Execution continues on line 540
           set_softirq_pending(0);
           ^
   include/linux/interrupt.h:545:33: note: expanded from macro 
'set_softirq_pending'
   #define set_softirq_pending(x)  (__this_cpu_write(local_softirq_pending_ref, 
(x)))
                                    ^
   include/linux/percpu-defs.h:452:2: note: expanded from macro 
'__this_cpu_write'
           raw_cpu_write(pcp, val);                                        \
           ^
   include/linux/percpu-defs.h:421:34: note: expanded from macro 'raw_cpu_write'
   #define raw_cpu_write(pcp, val)         __pcpu_size_call(raw_cpu_write_, 
pcp, val)
                                           ^
   include/linux/percpu-defs.h:379:42: note: expanded from macro 
'__pcpu_size_call'
                   case 4: stem##4(variable, __VA_ARGS__);break;           \
                                                          ^
   kernel/softirq.c:540:2: note: Loop condition is false.  Exiting loop
           set_softirq_pending(0);
           ^
   include/linux/interrupt.h:545:33: note: expanded from macro 
'set_softirq_pending'
   #define set_softirq_pending(x)  (__this_cpu_write(local_softirq_pending_ref, 
(x)))
                                    ^
   include/linux/percpu-defs.h:452:2: note: expanded from macro 
'__this_cpu_write'
           raw_cpu_write(pcp, val);                                        \
           ^
   include/linux/percpu-defs.h:421:34: note: expanded from macro 'raw_cpu_write'
   #define raw_cpu_write(pcp, val)         __pcpu_size_call(raw_cpu_write_, 
pcp, val)
                                           ^
   include/linux/percpu-defs.h:373:50: note: expanded from macro 
'__pcpu_size_call'
   #define __pcpu_size_call(stem, variable, ...)                           \
                                                                           ^
   kernel/softirq.c:542:2: note: Loop condition is false.  Exiting loop
           local_irq_enable();
           ^
   include/linux/irqflags.h:242:28: note: expanded from macro 'local_irq_enable'
   #define local_irq_enable()      do { raw_local_irq_enable(); } while (0)
                                   ^
   kernel/softirq.c:546:2: note: Loop condition is true.  Entering loop body
           while ((softirq_bit = ffs(pending))) {
           ^
   kernel/softirq.c:552:3: note: The value 23 is assigned to 'vec_nr'
                   vec_nr = h - softirq_vec;
                   ^~~~~~~~~~~~~~~~~~~~~~~~
   kernel/softirq.c:560:16: note: Assuming the condition is true
                   if (unlikely(prev_count != preempt_count())) {
                                ^
   include/linux/compiler.h:78:42: note: expanded from macro 'unlikely'
   # define unlikely(x)    __builtin_expect(!!(x), 0)
                                               ^
   kernel/softirq.c:560:3: note: Taking true branch
                   if (unlikely(prev_count != preempt_count())) {
                   ^
   kernel/softirq.c:561:4: note: Loop condition is false.  Exiting loop
                           pr_err("huh, entered softirq %u %s %p with 
preempt_count %08x, exited with %08x?\n",
                           ^
   include/linux/printk.h:489:2: note: expanded from macro 'pr_err'
           printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
           ^
   include/linux/printk.h:446:26: note: expanded from macro 'printk'
   #define printk(fmt, ...) printk_index_wrap(_printk, fmt, ##__VA_ARGS__)
                            ^
   include/linux/printk.h:417:3: note: expanded from macro 'printk_index_wrap'
                   __printk_index_emit(_fmt, NULL, NULL);                  \
                   ^
   include/linux/printk.h:392:34: note: expanded from macro 
'__printk_index_emit'
   #define __printk_index_emit(...) do {} while (0)
                                    ^
   kernel/softirq.c:561:4: note: 3rd function call argument is an uninitialized 
value
                           pr_err("huh, entered softirq %u %s %p with 
preempt_count %08x, exited with %08x?\n",
                           ^
   include/linux/printk.h:489:2: note: expanded from macro 'pr_err'
           printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
           ^                              ~~~~~~~~~~~
   include/linux/printk.h:446:44: note: expanded from macro 'printk'
   #define printk(fmt, ...) printk_index_wrap(_printk, fmt, ##__VA_ARGS__)
                                              ^               ~~~~~~~~~~~
   include/linux/printk.h:418:3: note: expanded from macro 'printk_index_wrap'
                   _p_func(_fmt, ##__VA_ARGS__);                           \
                   ^               ~~~~~~~~~~~
   Suppressed 33 warnings (33 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.
   33 warnings generated.
>> arch/mips/kernel/proc.c:61:2: warning: Call to function 'sprintf' is 
>> insecure as it does not provide bounding of the memory buffer or security 
>> checks introduced in the C11 standard. Replace with analogous functions that 
>> support length arguments or provides boundary checks such as 'sprintf_s' in 
>> case of C11 
>> [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           sprintf(fmt, "cpu model\t\t: %%s V%%d.%%d%s\n",
           ^~~~~~~
   arch/mips/kernel/proc.c:61:2: note: Call to function 'sprintf' is insecure 
as it does not provide bounding of the memory buffer or security checks 
introduced in the C11 standard. Replace with analogous functions that support 
length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           sprintf(fmt, "cpu model\t\t: %%s V%%d.%%d%s\n",
           ^~~~~~~
   arch/mips/kernel/proc.c:296:2: warning: Call to function 'sprintf' is 
insecure as it does not provide bounding of the memory buffer or security 
checks introduced in the C11 standard. Replace with analogous functions that 
support length arguments or provides boundary checks such as 'sprintf_s' in 
case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           sprintf(fmt, "VCE%%c exceptions\t\t: %s\n",
           ^~~~~~~
   arch/mips/kernel/proc.c:296:2: note: Call to function 'sprintf' is insecure 
as it does not provide bounding of the memory buffer or security checks 
introduced in the C11 standard. Replace with analogous functions that support 
length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           sprintf(fmt, "VCE%%c exceptions\t\t: %s\n",
           ^~~~~~~
   Suppressed 31 warnings (31 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.
   Suppressed 12 warnings (12 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.
   31 warnings generated.
   Suppressed 31 warnings (31 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.
   32 warnings generated.
   Suppressed 32 warnings (32 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.
   32 warnings generated.
   Suppressed 32 warnings (32 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.
   32 warnings generated.
   Suppressed 32 warnings (32 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.
   33 warnings generated.
   Suppressed 33 warnings (33 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.
   40 warnings generated.
   Suppressed 40 warnings (40 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.
   40 warnings generated.
   Suppressed 40 warnings (40 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.
   45 warnings generated.
   drivers/regulator/helpers.c:150:6: warning: Assigned value is garbage or 
undefined [clang-analyzer-core.uninitialized.Assign]
           val >>= ffs(rdev->desc->vsel_mask) - 1;
               ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/regulator/helpers.c:138:6: note: Assuming 'r' is non-null
           if (!r)
               ^~
   drivers/regulator/helpers.c:138:2: note: Taking false branch
           if (!r)
           ^
   drivers/regulator/helpers.c:142:6: note: Assuming 'ret' is equal to 0
           if (ret != 0)
               ^~~~~~~~
   drivers/regulator/helpers.c:142:2: note: Taking false branch
           if (ret != 0)
           ^
   drivers/regulator/helpers.c:146:6: note: Assuming 'ret' is equal to 0
           if (ret != 0)
               ^~~~~~~~
   drivers/regulator/helpers.c:146:2: note: Taking false branch
           if (ret != 0)
           ^
   drivers/regulator/helpers.c:150:6: note: Assigned value is garbage or 
undefined
           val >>= ffs(rdev->desc->vsel_mask) - 1;
               ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/regulator/helpers.c:245:6: warning: Assigned value is garbage or 
undefined [clang-analyzer-core.uninitialized.Assign]
           val >>= ffs(rdev->desc->vsel_mask) - 1;
               ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/regulator/helpers.c:241:6: note: Assuming 'ret' is equal to 0
           if (ret != 0)
               ^~~~~~~~
   drivers/regulator/helpers.c:241:2: note: Taking false branch
           if (ret != 0)
           ^
   drivers/regulator/helpers.c:245:6: note: Assigned value is garbage or 
undefined
           val >>= ffs(rdev->desc->vsel_mask) - 1;
               ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/regulator/helpers.c:833:6: warning: Assigned value is garbage or 
undefined [clang-analyzer-core.uninitialized.Assign]
           sel <<= ffs(rdev->desc->csel_mask) - 1;
               ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/regulator/helpers.c:803:6: note: Assuming 'n_currents' is not equal 
to 0
           if (n_currents == 0)
               ^~~~~~~~~~~~~~~
   drivers/regulator/helpers.c:803:2: note: Taking false branch
           if (n_currents == 0)
           ^
   drivers/regulator/helpers.c:806:6: note: Assuming field 'curr_table' is 
non-null
           if (rdev->desc->curr_table) {
               ^~~~~~~~~~~~~~~~~~~~~~
   drivers/regulator/helpers.c:806:2: note: Taking true branch
           if (rdev->desc->curr_table) {
           ^
   drivers/regulator/helpers.c:811:7: note: Assuming 'ascend' is false
                   if (ascend) {
                       ^~~~~~
   drivers/regulator/helpers.c:811:3: note: Taking false branch
                   if (ascend) {
                   ^
   drivers/regulator/helpers.c:820:16: note: 'i' is < 'n_currents'
                           for (i = 0; i < n_currents; i++) {
                                       ^
   drivers/regulator/helpers.c:820:4: note: Loop condition is true.  Entering 
loop body
                           for (i = 0; i < n_currents; i++) {
--
                         ^~~~~~
   drivers/leds/led-class-multicolor.c:79:10: warning: Call to function 
'sprintf' is insecure as it does not provide security checks introduced in the 
C11 standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'sprintf_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   len += sprintf(buf + len, "%d",
                          ^~~~~~~
   drivers/leds/led-class-multicolor.c:79:10: note: Call to function 'sprintf' 
is insecure as it does not provide security checks introduced in the C11 
standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'sprintf_s' in case of C11
                   len += sprintf(buf + len, "%d",
                          ^~~~~~~
   drivers/leds/led-class-multicolor.c:82:11: warning: Call to function 
'sprintf' is insecure as it does not provide security checks introduced in the 
C11 standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'sprintf_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                           len += sprintf(buf + len, " ");
                                  ^~~~~~~
   drivers/leds/led-class-multicolor.c:82:11: note: Call to function 'sprintf' 
is insecure as it does not provide security checks introduced in the C11 
standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'sprintf_s' in case of C11
                           len += sprintf(buf + len, " ");
                                  ^~~~~~~
   drivers/leds/led-class-multicolor.c:102:10: warning: Call to function 
'sprintf' is insecure as it does not provide bounding of the memory buffer or 
security checks introduced in the C11 standard. Replace with analogous 
functions that support length arguments or provides boundary checks such as 
'sprintf_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   len += sprintf(buf + len, "%s", led_colors[index]);
                          ^~~~~~~
   drivers/leds/led-class-multicolor.c:102:10: note: Call to function 'sprintf' 
is insecure as it does not provide bounding of the memory buffer or security 
checks introduced in the C11 standard. Replace with analogous functions that 
support length arguments or provides boundary checks such as 'sprintf_s' in 
case of C11
                   len += sprintf(buf + len, "%s", led_colors[index]);
                          ^~~~~~~
   drivers/leds/led-class-multicolor.c:104:11: warning: Call to function 
'sprintf' is insecure as it does not provide security checks introduced in the 
C11 standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'sprintf_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                           len += sprintf(buf + len, " ");
                                  ^~~~~~~
   drivers/leds/led-class-multicolor.c:104:11: note: Call to function 'sprintf' 
is insecure as it does not provide security checks introduced in the C11 
standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'sprintf_s' in case of C11
                           len += sprintf(buf + len, " ");
                                  ^~~~~~~
   Suppressed 31 warnings (31 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.
   38 warnings generated.
   drivers/usb/serial/quatech2.c:229:2: warning: Value stored to 'clear' is 
never read [clang-analyzer-deadcode.DeadStores]
           clear &= ~set;  /* 'set' takes precedence over 'clear' */
           ^        ~~~~
   drivers/usb/serial/quatech2.c:229:2: note: Value stored to 'clear' is never 
read
           clear &= ~set;  /* 'set' takes precedence over 'clear' */
           ^        ~~~~
   drivers/usb/serial/quatech2.c:482:2: warning: Value stored to 'ch' is never 
read [clang-analyzer-deadcode.DeadStores]
           ch = urb->transfer_buffer;
           ^    ~~~~~~~~~~~~~~~~~~~~
   drivers/usb/serial/quatech2.c:482:2: note: Value stored to 'ch' is never read
           ch = urb->transfer_buffer;
           ^    ~~~~~~~~~~~~~~~~~~~~
   drivers/usb/serial/quatech2.c:927:2: warning: Call to function 'memcpy' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memcpy_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(data, buf, count);
           ^~~~~~
   drivers/usb/serial/quatech2.c:927:2: note: Call to function 'memcpy' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memcpy_s' in case of C11
           memcpy(data, buf, count);
           ^~~~~~
   Suppressed 35 warnings (34 in non-user code, 1 with check filters).
   Use -header-filter=.* to display errors from all non-system headers. Use 
-system-headers to display errors from system headers as well.
   35 warnings generated.
   drivers/usb/serial/sierra.c:468:2: warning: Call to function 'memcpy' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memcpy_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(buffer, buf, writesize);
           ^~~~~~
   drivers/usb/serial/sierra.c:468:2: note: Call to function 'memcpy' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memcpy_s' in case of C11
           memcpy(buffer, buf, writesize);
           ^~~~~~
   Suppressed 34 warnings (34 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.
   34 warnings generated.
   Suppressed 34 warnings (34 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.
   35 warnings generated.
   drivers/usb/serial/ssu100.c:144:2: warning: Value stored to 'clear' is never 
read [clang-analyzer-deadcode.DeadStores]
           clear &= ~set;  /* 'set' takes precedence over 'clear' */
           ^        ~~~~
   drivers/usb/serial/ssu100.c:144:2: note: Value stored to 'clear' is never 
read
           clear &= ~set;  /* 'set' takes precedence over 'clear' */
           ^        ~~~~
   Suppressed 34 warnings (34 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.
   34 warnings generated.
   Suppressed 34 warnings (34 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.
   65 warnings generated.
   drivers/usb/gadget/function/f_ncm.c:733:3: warning: Call to function 
'memcpy' is insecure as it does not provide security checks introduced in the 
C11 standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'memcpy_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   memcpy(req->buf, &ntb_parameters, value);
                   ^~~~~~
   drivers/usb/gadget/function/f_ncm.c:733:3: note: Call to function 'memcpy' 
is insecure as it does not provide security checks introduced in the C11 
standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'memcpy_s' in case of C11
                   memcpy(req->buf, &ntb_parameters, value);
                   ^~~~~~
   drivers/usb/gadget/function/f_ncm.c:1089:4: warning: Call to function 
'memset' is insecure as it does not provide security checks introduced in the 
C11 standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'memset_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                           memset(ntb_ndp, 0, ncb_len);
                           ^~~~~~
   drivers/usb/gadget/function/f_ncm.c:1089:4: note: Call to function 'memset' 
is insecure as it does not provide security checks introduced in the C11 
standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'memset_s' in case of C11
                           memset(ntb_ndp, 0, ncb_len);
                           ^~~~~~
   drivers/usb/gadget/function/f_ncm.c:1586:1: warning: Call to function 
'sprintf' is insecure as it does not provide security checks introduced in the 
C11 standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'sprintf_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
   USB_ETHERNET_CONFIGFS_ITEM_ATTR_QMULT(ncm);
   ^
   drivers/usb/gadget/function/u_ether_configfs.h:108:10: note: expanded from 
macro 'USB_ETHERNET_CONFIGFS_ITEM_ATTR_QMULT'
                   return sprintf(page, "%d\n", qmult);                    \
                          ^~~~~~~
   drivers/usb/gadget/function/f_ncm.c:1586:1: note: Call to function 'sprintf' 
is insecure as it does not provide security checks introduced in the C11 
standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'sprintf_s' in case of C11
   USB_ETHERNET_CONFIGFS_ITEM_ATTR_QMULT(ncm);
   ^
   drivers/usb/gadget/function/u_ether_configfs.h:108:10: note: expanded from 
macro 'USB_ETHERNET_CONFIGFS_ITEM_ATTR_QMULT'
                   return sprintf(page, "%d\n", qmult);                    \
                          ^~~~~~~
   Suppressed 62 warnings (62 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.
   38 warnings generated.
>> drivers/usb/usbip/vudc_dev.c:535:3: warning: Call to function 'sprintf' is 
>> insecure as it does not provide bounding of the memory buffer or security 
>> checks introduced in the C11 standard. Replace with analogous functions that 
>> support length arguments or provides boundary checks such as 'sprintf_s' in 
>> case of C11 
>> [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   sprintf(ep->name, "ep%d%s", num,
                   ^~~~~~~
   drivers/usb/usbip/vudc_dev.c:535:3: note: Call to function 'sprintf' is 
insecure as it does not provide bounding of the memory buffer or security 
checks introduced in the C11 standard. Replace with analogous functions that 
support length arguments or provides boundary checks such as 'sprintf_s' in 
case of C11
                   sprintf(ep->name, "ep%d%s", num,
                   ^~~~~~~
   Suppressed 37 warnings (37 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.
   71 warnings generated.
   drivers/usb/usbip/vudc_sysfs.c:55:2: warning: Call to function 'memcpy' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memcpy_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(ddesc, usb_req->req.buf, sizeof(*ddesc));
           ^~~~~~
   drivers/usb/usbip/vudc_sysfs.c:55:2: note: Call to function 'memcpy' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memcpy_s' in case of C11
           memcpy(ddesc, usb_req->req.buf, sizeof(*ddesc));
           ^~~~~~
   drivers/usb/usbip/vudc_sysfs.c:85:2: warning: Call to function 'memcpy' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memcpy_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(out, desc_ptr + off, count);
           ^~~~~~
   drivers/usb/usbip/vudc_sysfs.c:85:2: note: Call to function 'memcpy' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memcpy_s' in case of C11
           memcpy(out, desc_ptr + off, count);
           ^~~~~~
   drivers/usb/usbip/vudc_sysfs.c:245:9: warning: Call to function 'snprintf' 
is insecure as it does not provide security checks introduced in the C11 
standard. Replace with analogous functions that support length arguments or 
provides boundary checks such as 'snprintf_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return snprintf(out, PAGE_SIZE, "%d\n", status);
                  ^~~~~~~~
   drivers/usb/usbip/vudc_sysfs.c:245:9: note: Call to function 'snprintf' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'snprintf_s' in case of C11
           return snprintf(out, PAGE_SIZE, "%d\n", status);
                  ^~~~~~~~
   Suppressed 68 warnings (68 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.
   75 warnings generated.
   drivers/usb/usbip/vudc_tx.c:48:2: warning: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(&pdu_header, 0, sizeof(pdu_header));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:48:2: note: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11
           memset(&pdu_header, 0, sizeof(pdu_header));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:49:2: warning: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(&msg, 0, sizeof(msg));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:49:2: note: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11
           memset(&msg, 0, sizeof(msg));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:50:2: warning: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(&iov, 0, sizeof(iov));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:50:2: note: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11
           memset(&iov, 0, sizeof(iov));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:85:2: warning: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(&pdu_header, 0, sizeof(pdu_header));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:85:2: note: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11
           memset(&pdu_header, 0, sizeof(pdu_header));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:86:2: warning: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11 
[clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(&msg, 0, sizeof(msg));
           ^~~~~~
   drivers/usb/usbip/vudc_tx.c:86:2: note: Call to function 'memset' is 
insecure as it does not provide security checks introduced in the C11 standard. 
Replace with analogous functions that support length arguments or provides 
boundary checks such as 'memset_s' in case of C11
           memset(&msg, 0, sizeof(msg));
           ^~~~~~
   include/linux/list.h:137:13: warning: Use of memory after it is freed 
[clang-analyzer-unix.Malloc]
           __list_del(entry->prev, entry->next);
                      ^
   drivers/usb/usbip/vudc_tx.c:227:9: note: Assuming the condition is true
           while (!kthread_should_stop()) {
                  ^~~~~~~~~~~~~~~~~~~~~~
   drivers/usb/usbip/vudc_tx.c:227:2: note: Loop condition is true.  Entering 
loop body
           while (!kthread_should_stop()) {
           ^
   drivers/usb/usbip/vudc_tx.c:228:7: note: Assuming the condition is false
                   if (usbip_event_happened(&udc->ud))
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/usb/usbip/vudc_tx.c:228:3: note: Taking false branch
                   if (usbip_event_happened(&udc->ud))
                   ^
   drivers/usb/usbip/vudc_tx.c:230:9: note: Calling 'v_send_ret'
                   ret = v_send_ret(udc);
                         ^~~~~~~~~~~~~~~
   drivers/usb/usbip/vudc_tx.c:191:2: note: Loop condition is false.  Exiting 
loop
           spin_lock_irqsave(&udc->lock_tx, flags);
           ^
   include/linux/spinlock.h:379:2: note: expanded from macro 'spin_lock_irqsave'
           raw_spin_lock_irqsave(spinlock_check(lock), flags);     \
           ^
   include/linux/spinlock.h:264:3: note: expanded from macro 
'raw_spin_lock_irqsave'
                   _raw_spin_lock_irqsave(lock, flags);    \
                   ^
   include/linux/spinlock_api_up.h:69:45: note: expanded from macro 
'_raw_spin_lock_irqsave'
   #define _raw_spin_lock_irqsave(lock, flags)     __LOCK_IRQSAVE(lock, flags)
                                                   ^
   include/linux/spinlock_api_up.h:40:8: note: expanded from macro 
'__LOCK_IRQSAVE'
     do { local_irq_save(flags); __LOCK(lock); } while (0)
          ^
   include/linux/irqflags.h:244:36: note: expanded from macro 'local_irq_save'
   #define local_irq_save(flags)   do { raw_local_irq_save(flags); } while (0)
                                        ^
   include/linux/irqflags.h:176:2: note: expanded from macro 
'raw_local_irq_save'
           do {                                            \
           ^
   drivers/usb/usbip/vudc_tx.c:191:2: note: Loop condition is false.  Exiting 
loop
           spin_lock_irqsave(&udc->lock_tx, flags);

vim +61 arch/mips/kernel/proc.c

^1da177e4c3f415 Linus Torvalds      2005-04-16   49  
^1da177e4c3f415 Linus Torvalds      2005-04-16   50     /*
^1da177e4c3f415 Linus Torvalds      2005-04-16   51      * For the first 
processor also print the system type
^1da177e4c3f415 Linus Torvalds      2005-04-16   52      */
487d70d0b8bd1c7 Gabor Juhos         2010-11-23   53     if (n == 0) {
^1da177e4c3f415 Linus Torvalds      2005-04-16   54             seq_printf(m, 
"system type\t\t: %s\n", get_system_type());
487d70d0b8bd1c7 Gabor Juhos         2010-11-23   55             if 
(mips_get_machine_name())
487d70d0b8bd1c7 Gabor Juhos         2010-11-23   56                     
seq_printf(m, "machine\t\t\t: %s\n",
487d70d0b8bd1c7 Gabor Juhos         2010-11-23   57                             
   mips_get_machine_name());
487d70d0b8bd1c7 Gabor Juhos         2010-11-23   58     }
^1da177e4c3f415 Linus Torvalds      2005-04-16   59  
^1da177e4c3f415 Linus Torvalds      2005-04-16   60     seq_printf(m, 
"processor\t\t: %ld\n", n);
^1da177e4c3f415 Linus Torvalds      2005-04-16  @61     sprintf(fmt, "cpu 
model\t\t: %%s V%%d.%%d%s\n",
e04582b7bc70b40 Atsushi Nemoto      2006-10-09   62                   
cpu_data[n].options & MIPS_CPU_FPU ? "  FPU V%d.%d" : "");
e47c659b55aff70 Johannes Dickgreber 2008-10-13   63     seq_printf(m, fmt, 
__cpu_name[n],
^1da177e4c3f415 Linus Torvalds      2005-04-16   64                   (version 
>> 4) & 0x0f, version & 0x0f,
^1da177e4c3f415 Linus Torvalds      2005-04-16   65                   (fp_vers 
>> 4) & 0x0f, fp_vers & 0x0f);
5636919b5c909fe Ralf Baechle        2009-02-28   66     seq_printf(m, 
"BogoMIPS\t\t: %u.%02u\n",
0ac354801a87918 Ralf Baechle        2005-02-21   67                   
cpu_data[n].udelay_val / (500000/HZ),
0ac354801a87918 Ralf Baechle        2005-02-21   68                   
(cpu_data[n].udelay_val / (5000/HZ)) % 100);
^1da177e4c3f415 Linus Torvalds      2005-04-16   69     seq_printf(m, "wait 
instruction\t: %s\n", cpu_wait ? "yes" : "no");
^1da177e4c3f415 Linus Torvalds      2005-04-16   70     seq_printf(m, 
"microsecond timers\t: %s\n",
^1da177e4c3f415 Linus Torvalds      2005-04-16   71                   
cpu_has_counter ? "yes" : "no");
31aa36658a12326 Karl-Johan Karlsson 2006-10-08   72     seq_printf(m, 
"tlb_entries\t\t: %d\n", cpu_data[n].tlbsize);
^1da177e4c3f415 Linus Torvalds      2005-04-16   73     seq_printf(m, "extra 
interrupt vector\t: %s\n",
^1da177e4c3f415 Linus Torvalds      2005-04-16   74                   
cpu_has_divec ? "yes" : "no");
654f57bfb467996 David Daney         2008-09-23   75     seq_printf(m, "hardware 
watchpoint\t: %s",
654f57bfb467996 David Daney         2008-09-23   76                   
cpu_has_watch ? "yes, " : "no\n");
654f57bfb467996 David Daney         2008-09-23   77     if (cpu_has_watch) {
654f57bfb467996 David Daney         2008-09-23   78             seq_printf(m, 
"count: %d, address/irw mask: [",
654f57bfb467996 David Daney         2008-09-23   79                   
cpu_data[n].watch_reg_count);
654f57bfb467996 David Daney         2008-09-23   80             for (i = 0; i < 
cpu_data[n].watch_reg_count; i++)
654f57bfb467996 David Daney         2008-09-23   81                     
seq_printf(m, "%s0x%04x", i ? ", " : "",
654f57bfb467996 David Daney         2008-09-23   82                             
cpu_data[n].watch_reg_masks[i]);
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13   83             seq_puts(m, 
"]\n");
654f57bfb467996 David Daney         2008-09-23   84     }
41315b6ec108e93 Aaro Koskinen       2013-12-31   85  
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13   86     seq_puts(m, 
"isa\t\t\t:");
e5f5a5b06e51a36 Maciej W. Rozycki   2017-07-08   87     if (cpu_has_mips_1)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13   88             seq_puts(m, " 
mips1");
a96102be700f872 Steven J. Hill      2012-12-07   89     if (cpu_has_mips_2)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13   90             seq_puts(m, " 
mips2");
a96102be700f872 Steven J. Hill      2012-12-07   91     if (cpu_has_mips_3)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13   92             seq_puts(m, " 
mips3");
a96102be700f872 Steven J. Hill      2012-12-07   93     if (cpu_has_mips_4)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13   94             seq_puts(m, " 
mips4");
a96102be700f872 Steven J. Hill      2012-12-07   95     if (cpu_has_mips_5)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13   96             seq_puts(m, " 
mips5");
a96102be700f872 Steven J. Hill      2012-12-07   97     if (cpu_has_mips32r1)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13   98             seq_puts(m, " 
mips32r1");
a96102be700f872 Steven J. Hill      2012-12-07   99     if (cpu_has_mips32r2)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  100             seq_puts(m, " 
mips32r2");
ab7c01fdc3cfe02 Serge Semin         2020-05-21  101     if (cpu_has_mips32r5)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  102             seq_puts(m, " 
mips32r5");
515a6393dbac4f4 Markos Chandras     2014-11-14  103     if (cpu_has_mips32r6)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  104             seq_puts(m, " 
mips32r6");
a96102be700f872 Steven J. Hill      2012-12-07  105     if (cpu_has_mips64r1)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  106             seq_puts(m, " 
mips64r1");
a96102be700f872 Steven J. Hill      2012-12-07  107     if (cpu_has_mips64r2)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  108             seq_puts(m, " 
mips64r2");
ab7c01fdc3cfe02 Serge Semin         2020-05-21  109     if (cpu_has_mips64r5)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  110             seq_puts(m, " 
mips64r5");
515a6393dbac4f4 Markos Chandras     2014-11-14  111     if (cpu_has_mips64r6)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  112             seq_puts(m, " 
mips64r6");
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  113     seq_puts(m, "\n");
981ef0de49869c9 Ralf Baechle        2012-08-20  114  
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  115     seq_puts(m, "ASEs 
implemented\t:");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  116     if (cpu_has_mips16)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  117             seq_puts(m, " 
mips16");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  118     if (cpu_has_mips16e2)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  119             seq_puts(m, " 
mips16e2");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  120     if (cpu_has_mdmx)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  121             seq_puts(m, " 
mdmx");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  122     if (cpu_has_mips3d)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  123             seq_puts(m, " 
mips3d");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  124     if (cpu_has_smartmips)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  125             seq_puts(m, " 
smartmips");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  126     if (cpu_has_dsp)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  127             seq_puts(m, " 
dsp");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  128     if (cpu_has_dsp2)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  129             seq_puts(m, " 
dsp2");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  130     if (cpu_has_dsp3)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  131             seq_puts(m, " 
dsp3");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  132     if (cpu_has_mipsmt)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  133             seq_puts(m, " 
mt");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  134     if (cpu_has_mmips)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  135             seq_puts(m, " 
micromips");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  136     if (cpu_has_vz)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  137             seq_puts(m, " 
vz");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  138     if (cpu_has_msa)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  139             seq_puts(m, " 
msa");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  140     if (cpu_has_eva)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  141             seq_puts(m, " 
eva");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  142     if (cpu_has_htw)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  143             seq_puts(m, " 
htw");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  144     if (cpu_has_xpa)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  145             seq_puts(m, " 
xpa");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  146     if 
(cpu_has_loongson_mmi)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  147             seq_puts(m, " 
loongson-mmi");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  148     if 
(cpu_has_loongson_cam)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  149             seq_puts(m, " 
loongson-cam");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  150     if 
(cpu_has_loongson_ext)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  151             seq_puts(m, " 
loongson-ext");
01fde9a0e497c70 Ilya Lipnitskiy     2021-10-13  152     if 
(cpu_has_loongson_ext2)
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  153             seq_puts(m, " 
loongson-ext2");
1ad964ae1a91501 Ilya Lipnitskiy     2021-10-13  154     seq_puts(m, "\n");
981ef0de49869c9 Ralf Baechle        2012-08-20  155  
bce860833ab1e40 Steven J. Hill      2013-03-25  156     if (cpu_has_mmips) {
bce860833ab1e40 Steven J. Hill      2013-03-25  157             seq_printf(m, 
"micromips kernel\t: %s\n",
bce860833ab1e40 Steven J. Hill      2013-03-25  158                   
(read_c0_config3() & MIPS_CONF3_ISA_OE) ?  "yes" : "no");
bce860833ab1e40 Steven J. Hill      2013-03-25  159     }
626bfa03729959e Hauke Mehrtens      2021-10-13  160  
626bfa03729959e Hauke Mehrtens      2021-10-13  161     seq_puts(m, "Options 
implemented\t:");
626bfa03729959e Hauke Mehrtens      2021-10-13  162     if (cpu_has_tlb)
626bfa03729959e Hauke Mehrtens      2021-10-13  163             seq_puts(m, " 
tlb");
626bfa03729959e Hauke Mehrtens      2021-10-13  164     if (cpu_has_ftlb)
626bfa03729959e Hauke Mehrtens      2021-10-13  165             seq_puts(m, " 
ftlb");
626bfa03729959e Hauke Mehrtens      2021-10-13  166     if (cpu_has_tlbinv)
626bfa03729959e Hauke Mehrtens      2021-10-13  167             seq_puts(m, " 
tlbinv");
626bfa03729959e Hauke Mehrtens      2021-10-13  168     if (cpu_has_segments)
626bfa03729959e Hauke Mehrtens      2021-10-13  169             seq_puts(m, " 
segments");
626bfa03729959e Hauke Mehrtens      2021-10-13  170     if (cpu_has_rixiex)
626bfa03729959e Hauke Mehrtens      2021-10-13  171             seq_puts(m, " 
rixiex");
626bfa03729959e Hauke Mehrtens      2021-10-13  172     if (cpu_has_ldpte)
626bfa03729959e Hauke Mehrtens      2021-10-13  173             seq_puts(m, " 
ldpte");
626bfa03729959e Hauke Mehrtens      2021-10-13  174     if (cpu_has_maar)
626bfa03729959e Hauke Mehrtens      2021-10-13  175             seq_puts(m, " 
maar");
626bfa03729959e Hauke Mehrtens      2021-10-13  176     if (cpu_has_rw_llb)
626bfa03729959e Hauke Mehrtens      2021-10-13  177             seq_puts(m, " 
rw_llb");
626bfa03729959e Hauke Mehrtens      2021-10-13  178     if (cpu_has_4kex)
626bfa03729959e Hauke Mehrtens      2021-10-13  179             seq_puts(m, " 
4kex");
626bfa03729959e Hauke Mehrtens      2021-10-13  180     if (cpu_has_3k_cache)
626bfa03729959e Hauke Mehrtens      2021-10-13  181             seq_puts(m, " 
3k_cache");
626bfa03729959e Hauke Mehrtens      2021-10-13  182     if (cpu_has_4k_cache)
626bfa03729959e Hauke Mehrtens      2021-10-13  183             seq_puts(m, " 
4k_cache");
626bfa03729959e Hauke Mehrtens      2021-10-13  184     if (cpu_has_tx39_cache)
626bfa03729959e Hauke Mehrtens      2021-10-13  185             seq_puts(m, " 
tx39_cache");
626bfa03729959e Hauke Mehrtens      2021-10-13  186     if 
(cpu_has_octeon_cache)
626bfa03729959e Hauke Mehrtens      2021-10-13  187             seq_puts(m, " 
octeon_cache");
1cab5bd69eb1f99 Tiezhu Yang         2021-11-25  188     if (raw_cpu_has_fpu)
626bfa03729959e Hauke Mehrtens      2021-10-13  189             seq_puts(m, " 
fpu");
626bfa03729959e Hauke Mehrtens      2021-10-13  190     if (cpu_has_32fpr)
626bfa03729959e Hauke Mehrtens      2021-10-13  191             seq_puts(m, " 
32fpr");
626bfa03729959e Hauke Mehrtens      2021-10-13  192     if 
(cpu_has_cache_cdex_p)
626bfa03729959e Hauke Mehrtens      2021-10-13  193             seq_puts(m, " 
cache_cdex_p");
626bfa03729959e Hauke Mehrtens      2021-10-13  194     if 
(cpu_has_cache_cdex_s)
626bfa03729959e Hauke Mehrtens      2021-10-13  195             seq_puts(m, " 
cache_cdex_s");
626bfa03729959e Hauke Mehrtens      2021-10-13  196     if (cpu_has_prefetch)
626bfa03729959e Hauke Mehrtens      2021-10-13  197             seq_puts(m, " 
prefetch");
626bfa03729959e Hauke Mehrtens      2021-10-13  198     if (cpu_has_mcheck)
626bfa03729959e Hauke Mehrtens      2021-10-13  199             seq_puts(m, " 
mcheck");
626bfa03729959e Hauke Mehrtens      2021-10-13  200     if (cpu_has_ejtag)
626bfa03729959e Hauke Mehrtens      2021-10-13  201             seq_puts(m, " 
ejtag");
626bfa03729959e Hauke Mehrtens      2021-10-13  202     if (cpu_has_llsc)
626bfa03729959e Hauke Mehrtens      2021-10-13  203             seq_puts(m, " 
llsc");
626bfa03729959e Hauke Mehrtens      2021-10-13  204     if 
(cpu_has_guestctl0ext)
626bfa03729959e Hauke Mehrtens      2021-10-13  205             seq_puts(m, " 
guestctl0ext");
626bfa03729959e Hauke Mehrtens      2021-10-13  206     if (cpu_has_guestctl1)
626bfa03729959e Hauke Mehrtens      2021-10-13  207             seq_puts(m, " 
guestctl1");
626bfa03729959e Hauke Mehrtens      2021-10-13  208     if (cpu_has_guestctl2)
626bfa03729959e Hauke Mehrtens      2021-10-13  209             seq_puts(m, " 
guestctl2");
626bfa03729959e Hauke Mehrtens      2021-10-13  210     if (cpu_has_guestid)
626bfa03729959e Hauke Mehrtens      2021-10-13  211             seq_puts(m, " 
guestid");
626bfa03729959e Hauke Mehrtens      2021-10-13  212     if (cpu_has_drg)
626bfa03729959e Hauke Mehrtens      2021-10-13  213             seq_puts(m, " 
drg");
626bfa03729959e Hauke Mehrtens      2021-10-13  214     if (cpu_has_rixi)
626bfa03729959e Hauke Mehrtens      2021-10-13  215             seq_puts(m, " 
rixi");
626bfa03729959e Hauke Mehrtens      2021-10-13  216     if (cpu_has_lpa)
626bfa03729959e Hauke Mehrtens      2021-10-13  217             seq_puts(m, " 
lpa");
626bfa03729959e Hauke Mehrtens      2021-10-13  218     if (cpu_has_mvh)
626bfa03729959e Hauke Mehrtens      2021-10-13  219             seq_puts(m, " 
mvh");
626bfa03729959e Hauke Mehrtens      2021-10-13  220     if (cpu_has_vtag_icache)
626bfa03729959e Hauke Mehrtens      2021-10-13  221             seq_puts(m, " 
vtag_icache");
626bfa03729959e Hauke Mehrtens      2021-10-13  222     if (cpu_has_dc_aliases)
626bfa03729959e Hauke Mehrtens      2021-10-13  223             seq_puts(m, " 
dc_aliases");
626bfa03729959e Hauke Mehrtens      2021-10-13  224     if 
(cpu_has_ic_fills_f_dc)
626bfa03729959e Hauke Mehrtens      2021-10-13  225             seq_puts(m, " 
ic_fills_f_dc");
626bfa03729959e Hauke Mehrtens      2021-10-13  226     if 
(cpu_has_pindexed_dcache)
626bfa03729959e Hauke Mehrtens      2021-10-13  227             seq_puts(m, " 
pindexed_dcache");
626bfa03729959e Hauke Mehrtens      2021-10-13  228     if (cpu_has_userlocal)
626bfa03729959e Hauke Mehrtens      2021-10-13  229             seq_puts(m, " 
userlocal");
626bfa03729959e Hauke Mehrtens      2021-10-13  230     if (cpu_has_nofpuex)
626bfa03729959e Hauke Mehrtens      2021-10-13  231             seq_puts(m, " 
nofpuex");
626bfa03729959e Hauke Mehrtens      2021-10-13  232     if (cpu_has_vint)
626bfa03729959e Hauke Mehrtens      2021-10-13  233             seq_puts(m, " 
vint");
626bfa03729959e Hauke Mehrtens      2021-10-13  234     if (cpu_has_veic)
626bfa03729959e Hauke Mehrtens      2021-10-13  235             seq_puts(m, " 
veic");
626bfa03729959e Hauke Mehrtens      2021-10-13  236     if 
(cpu_has_inclusive_pcaches)
626bfa03729959e Hauke Mehrtens      2021-10-13  237             seq_puts(m, " 
inclusive_pcaches");
626bfa03729959e Hauke Mehrtens      2021-10-13  238     if 
(cpu_has_perf_cntr_intr_bit)
626bfa03729959e Hauke Mehrtens      2021-10-13  239             seq_puts(m, " 
perf_cntr_intr_bit");
626bfa03729959e Hauke Mehrtens      2021-10-13  240     if (cpu_has_ufr)
626bfa03729959e Hauke Mehrtens      2021-10-13  241             seq_puts(m, " 
ufr");
626bfa03729959e Hauke Mehrtens      2021-10-13  242     if (cpu_has_fre)
626bfa03729959e Hauke Mehrtens      2021-10-13  243             seq_puts(m, " 
fre");
626bfa03729959e Hauke Mehrtens      2021-10-13  244     if (cpu_has_cdmm)
626bfa03729959e Hauke Mehrtens      2021-10-13  245             seq_puts(m, " 
cdmm");
626bfa03729959e Hauke Mehrtens      2021-10-13  246     if (cpu_has_small_pages)
626bfa03729959e Hauke Mehrtens      2021-10-13  247             seq_puts(m, " 
small_pages");
626bfa03729959e Hauke Mehrtens      2021-10-13  248     if (cpu_has_nan_legacy)
626bfa03729959e Hauke Mehrtens      2021-10-13  249             seq_puts(m, " 
nan_legacy");
626bfa03729959e Hauke Mehrtens      2021-10-13  250     if (cpu_has_nan_2008)
626bfa03729959e Hauke Mehrtens      2021-10-13  251             seq_puts(m, " 
nan_2008");
626bfa03729959e Hauke Mehrtens      2021-10-13  252     if (cpu_has_ebase_wg)
626bfa03729959e Hauke Mehrtens      2021-10-13  253             seq_puts(m, " 
ebase_wg");
626bfa03729959e Hauke Mehrtens      2021-10-13  254     if (cpu_has_badinstr)
626bfa03729959e Hauke Mehrtens      2021-10-13  255             seq_puts(m, " 
badinstr");
626bfa03729959e Hauke Mehrtens      2021-10-13  256     if (cpu_has_badinstrp)
626bfa03729959e Hauke Mehrtens      2021-10-13  257             seq_puts(m, " 
badinstrp");
626bfa03729959e Hauke Mehrtens      2021-10-13  258     if 
(cpu_has_contextconfig)
626bfa03729959e Hauke Mehrtens      2021-10-13  259             seq_puts(m, " 
contextconfig");
626bfa03729959e Hauke Mehrtens      2021-10-13  260     if (cpu_has_perf)
626bfa03729959e Hauke Mehrtens      2021-10-13  261             seq_puts(m, " 
perf");
626bfa03729959e Hauke Mehrtens      2021-10-13  262     if 
(cpu_has_mac2008_only)
626bfa03729959e Hauke Mehrtens      2021-10-13  263             seq_puts(m, " 
mac2008_only");
626bfa03729959e Hauke Mehrtens      2021-10-13  264     if (cpu_has_ftlbparex)
626bfa03729959e Hauke Mehrtens      2021-10-13  265             seq_puts(m, " 
ftlbparex");
626bfa03729959e Hauke Mehrtens      2021-10-13  266     if (cpu_has_gsexcex)
626bfa03729959e Hauke Mehrtens      2021-10-13  267             seq_puts(m, " 
gsexcex");
626bfa03729959e Hauke Mehrtens      2021-10-13  268     if 
(cpu_has_shared_ftlb_ram)
626bfa03729959e Hauke Mehrtens      2021-10-13  269             seq_puts(m, " 
shared_ftlb_ram");
626bfa03729959e Hauke Mehrtens      2021-10-13  270     if 
(cpu_has_shared_ftlb_entries)
626bfa03729959e Hauke Mehrtens      2021-10-13  271             seq_puts(m, " 
shared_ftlb_entries");
626bfa03729959e Hauke Mehrtens      2021-10-13  272     if 
(cpu_has_mipsmt_pertccounters)
626bfa03729959e Hauke Mehrtens      2021-10-13  273             seq_puts(m, " 
mipsmt_pertccounters");
626bfa03729959e Hauke Mehrtens      2021-10-13  274     if (cpu_has_mmid)
626bfa03729959e Hauke Mehrtens      2021-10-13  275             seq_puts(m, " 
mmid");
626bfa03729959e Hauke Mehrtens      2021-10-13  276     if (cpu_has_mm_sysad)
626bfa03729959e Hauke Mehrtens      2021-10-13  277             seq_puts(m, " 
mm_sysad");
626bfa03729959e Hauke Mehrtens      2021-10-13  278     if (cpu_has_mm_full)
626bfa03729959e Hauke Mehrtens      2021-10-13  279             seq_puts(m, " 
mm_full");
626bfa03729959e Hauke Mehrtens      2021-10-13  280     seq_puts(m, "\n");
626bfa03729959e Hauke Mehrtens      2021-10-13  281  
f6771dbb27c704c Ralf Baechle        2007-11-08  282     seq_printf(m, "shadow 
register sets\t: %d\n",
f6771dbb27c704c Ralf Baechle        2007-11-08  283                   
cpu_data[n].srsets);
e77c32fe284a4da David Daney         2010-12-21  284     seq_printf(m, "kscratch 
registers\t: %d\n",
e77c32fe284a4da David Daney         2010-12-21  285                   
hweight8(cpu_data[n].kscratch_mask));
bda4584cd943d7b Huacai Chen         2014-06-26  286     seq_printf(m, 
"package\t\t\t: %d\n", cpu_data[n].package);
f875a832d202852 Paul Burton         2017-08-12  287     seq_printf(m, 
"core\t\t\t: %d\n", cpu_core(&cpu_data[n]));
5508d456e9992bb Ralf Baechle        2014-04-03  288  

:::::: The code at line 61 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <[email protected]>
:::::: CC: Linus Torvalds <[email protected]>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to