All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/spi/spidev.c:577:13: warning: Uninitialized variable: iter->devt [uninitvar]
@ 2023-01-03 22:32 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2023-01-03 22:32 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp

:::::: 
:::::: Manual check reason: "low confidence static check warning: drivers/spi/spidev.c:577:13: warning: Uninitialized variable: iter->devt [uninitvar]"
:::::: 

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Jakob Koschel <jakobkoschel@gmail.com>
CC: Mark Brown <broonie@kernel.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   69b41ac87e4a664de78a395ff97166f0b2943210
commit: d50d7e91c6e5ccd71f21ba1aec3fef7ee4229fd6 spi: spidev: replace usage of found with dedicated list iterator variable
date:   9 months ago
:::::: branch date: 27 hours ago
:::::: commit date: 9 months ago
compiler: m68k-linux-gcc (GCC) 12.1.0
reproduce (cppcheck warning):
        # apt-get install cppcheck
        git checkout d50d7e91c6e5ccd71f21ba1aec3fef7ee4229fd6
        cppcheck --quiet --enable=style,performance,portability --template=gcc FILE

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>

cppcheck warnings: (new ones prefixed by >>)
>> fs/btrfs/inode.c:1005:13: warning: Local variable 'start' shadows outer variable [shadowVariable]
     const u64 start = async_extent->start;
               ^
   fs/btrfs/inode.c:927:6: note: Shadowed declaration
    u64 start = async_extent->start;
        ^
   fs/btrfs/inode.c:1005:13: note: Shadow variable
     const u64 start = async_extent->start;
               ^
>> fs/btrfs/inode.c:1006:13: warning: Local variable 'end' shadows outer variable [shadowVariable]
     const u64 end = start + async_extent->ram_size - 1;
               ^
   fs/btrfs/inode.c:928:6: note: Shadowed declaration
    u64 end = async_extent->start + async_extent->ram_size - 1;
        ^
   fs/btrfs/inode.c:1006:13: note: Shadow variable
     const u64 end = start + async_extent->ram_size - 1;
               ^

cppcheck possible warnings: (new ones prefixed by >>, may not real problems)

>> drivers/spi/spidev.c:577:13: warning: Uninitialized variable: iter->devt [uninitvar]
     if (iter->devt == inode->i_rdev) {
               ^
--
>> drivers/usb/class/cdc-acm.c:259:9: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint]
    return sprintf(buf, "%d", acm->ctrl_caps);
           ^
   drivers/usb/class/cdc-acm.c:281:9: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint]
    return sprintf(buf, "%d", acm->country_rel_date);
           ^
>> drivers/tty/serial/max310x.c:573:23: warning: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck]
       pllcfg = (0 << 6) | div;
                         ^
>> drivers/usb/serial/quatech2.c:229:2: warning: Assignment of function parameter has no effect outside the function. [uselessAssignmentArg]
    clear &= ~set; /* 'set' takes precedence over 'clear' */
    ^
   fs/btrfs/inode.c:2020:3: warning: Redundant condition: zoned. '!zoned || (zoned && btrfs_is_data_reloc_root(inode->root))' is equivalent to '!zoned || btrfs_is_data_reloc_root(inode->root)' [redundantCondition]
     ASSERT(!zoned ||
     ^
   fs/btrfs/inode.c:2190:21: warning: Parameter 'bits' can be declared as pointer to const [constParameter]
             unsigned *bits)
                       ^
   fs/btrfs/inode.c:2241:44: warning: Parameter 'bits' can be declared as pointer to const [constParameter]
        struct extent_state *state, unsigned *bits)
                                              ^
>> fs/btrfs/inode.c:5956:70: warning: Parameter 'now' can be declared as pointer to const [constParameter]
   static int btrfs_update_time(struct inode *inode, struct timespec64 *now,
                                                                        ^
>> fs/btrfs/tree-log.h:52:28: warning: Uninitialized variables: ordered.file_offset, ordered.num_bytes, ordered.ram_bytes, ordered.disk_bytenr, ordered.disk_num_bytes, ordered.offset, ordered.bytes_left, ordered.outstanding_isize, ordered.truncated_len, ordered.flags, ordered.compress_type, ordered.qgroup_rsv, ordered.refs, ordered.inode, ordered.list, ordered.wait, ordered.rb_node, ordered.root_extent_list, ordered.work, ordered.completion, ordered.flush_work, ordered.work_list, ordered.physical, ordered.bdev [uninitvar]
     btrfs_put_ordered_extent(ordered);
                              ^
>> fs/btrfs/inode.c:2607:16: warning: Uninitialized variable: sum->bytenr [uninitvar]
             sum->bytenr);
                  ^

vim +577 drivers/spi/spidev.c

7d48ec3698e7b7 Bernhard Walle    2011-02-03  568  
814a8d50eb1d88 Andrea Paterniani 2007-05-08  569  static int spidev_open(struct inode *inode, struct file *filp)
814a8d50eb1d88 Andrea Paterniani 2007-05-08  570  {
d50d7e91c6e5cc Jakob Koschel     2022-03-24  571  	struct spidev_data	*spidev = NULL, *iter;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  572  	int			status = -ENXIO;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  573  
814a8d50eb1d88 Andrea Paterniani 2007-05-08  574  	mutex_lock(&device_list_lock);
814a8d50eb1d88 Andrea Paterniani 2007-05-08  575  
d50d7e91c6e5cc Jakob Koschel     2022-03-24  576  	list_for_each_entry(iter, &device_list, device_entry) {
d50d7e91c6e5cc Jakob Koschel     2022-03-24 @577  		if (iter->devt == inode->i_rdev) {
814a8d50eb1d88 Andrea Paterniani 2007-05-08  578  			status = 0;
d50d7e91c6e5cc Jakob Koschel     2022-03-24  579  			spidev = iter;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  580  			break;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  581  		}
814a8d50eb1d88 Andrea Paterniani 2007-05-08  582  	}
865f6d1974ddd9 Ray Jui           2014-10-09  583  
d50d7e91c6e5cc Jakob Koschel     2022-03-24  584  	if (!spidev) {
865f6d1974ddd9 Ray Jui           2014-10-09  585  		pr_debug("spidev: nothing for minor %d\n", iminor(inode));
865f6d1974ddd9 Ray Jui           2014-10-09  586  		goto err_find_dev;
865f6d1974ddd9 Ray Jui           2014-10-09  587  	}
865f6d1974ddd9 Ray Jui           2014-10-09  588  
865f6d1974ddd9 Ray Jui           2014-10-09  589  	if (!spidev->tx_buffer) {
865f6d1974ddd9 Ray Jui           2014-10-09  590  		spidev->tx_buffer = kmalloc(bufsiz, GFP_KERNEL);
865f6d1974ddd9 Ray Jui           2014-10-09  591  		if (!spidev->tx_buffer) {
814a8d50eb1d88 Andrea Paterniani 2007-05-08  592  			dev_dbg(&spidev->spi->dev, "open/ENOMEM\n");
814a8d50eb1d88 Andrea Paterniani 2007-05-08  593  			status = -ENOMEM;
865f6d1974ddd9 Ray Jui           2014-10-09  594  			goto err_find_dev;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  595  		}
814a8d50eb1d88 Andrea Paterniani 2007-05-08  596  	}
865f6d1974ddd9 Ray Jui           2014-10-09  597  
865f6d1974ddd9 Ray Jui           2014-10-09  598  	if (!spidev->rx_buffer) {
865f6d1974ddd9 Ray Jui           2014-10-09  599  		spidev->rx_buffer = kmalloc(bufsiz, GFP_KERNEL);
865f6d1974ddd9 Ray Jui           2014-10-09  600  		if (!spidev->rx_buffer) {
865f6d1974ddd9 Ray Jui           2014-10-09  601  			dev_dbg(&spidev->spi->dev, "open/ENOMEM\n");
865f6d1974ddd9 Ray Jui           2014-10-09  602  			status = -ENOMEM;
865f6d1974ddd9 Ray Jui           2014-10-09  603  			goto err_alloc_rx_buf;
865f6d1974ddd9 Ray Jui           2014-10-09  604  		}
865f6d1974ddd9 Ray Jui           2014-10-09  605  	}
865f6d1974ddd9 Ray Jui           2014-10-09  606  
814a8d50eb1d88 Andrea Paterniani 2007-05-08  607  	spidev->users++;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  608  	filp->private_data = spidev;
c5bf68fe0c86a5 Kirill Smelkov    2019-03-26  609  	stream_open(inode, filp);
814a8d50eb1d88 Andrea Paterniani 2007-05-08  610  
865f6d1974ddd9 Ray Jui           2014-10-09  611  	mutex_unlock(&device_list_lock);
865f6d1974ddd9 Ray Jui           2014-10-09  612  	return 0;
865f6d1974ddd9 Ray Jui           2014-10-09  613  
865f6d1974ddd9 Ray Jui           2014-10-09  614  err_alloc_rx_buf:
865f6d1974ddd9 Ray Jui           2014-10-09  615  	kfree(spidev->tx_buffer);
865f6d1974ddd9 Ray Jui           2014-10-09  616  	spidev->tx_buffer = NULL;
865f6d1974ddd9 Ray Jui           2014-10-09  617  err_find_dev:
814a8d50eb1d88 Andrea Paterniani 2007-05-08  618  	mutex_unlock(&device_list_lock);
814a8d50eb1d88 Andrea Paterniani 2007-05-08  619  	return status;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  620  }
814a8d50eb1d88 Andrea Paterniani 2007-05-08  621  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] 2+ messages in thread

* drivers/spi/spidev.c:577:13: warning: Uninitialized variable: iter->devt [uninitvar]
@ 2022-07-13  7:04 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2022-07-13  7:04 UTC (permalink / raw)
  To: kbuild

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

:::::: 
:::::: Manual check reason: "low confidence static check warning: drivers/spi/spidev.c:577:13: warning: Uninitialized variable: iter->devt [uninitvar]"
:::::: 

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Jakob Koschel <jakobkoschel@gmail.com>
CC: Mark Brown <broonie@kernel.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   b047602d579b4fb028128a525f056bbdc890e7f0
commit: d50d7e91c6e5ccd71f21ba1aec3fef7ee4229fd6 spi: spidev: replace usage of found with dedicated list iterator variable
date:   3 months ago
:::::: branch date: 8 hours ago
:::::: commit date: 3 months ago
compiler: powerpc-linux-gcc (GCC) 11.3.0
reproduce (cppcheck warning):
        # apt-get install cppcheck
        git checkout d50d7e91c6e5ccd71f21ba1aec3fef7ee4229fd6
        cppcheck --quiet --enable=style,performance,portability --template=gcc FILE

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>


cppcheck warnings: (new ones prefixed by >>)
>> drivers/usb/misc/ftdi-elan.c:994:8: warning: Local variable 'c' shadows outer variable [shadowVariable]
      u8 *c = 4 + ftdi->response;
          ^
   drivers/usb/misc/ftdi-elan.c:976:6: note: Shadowed declaration
     u8 c = ftdi->bulk_in_buffer[++ftdi->bulk_in_last];
        ^
   drivers/usb/misc/ftdi-elan.c:994:8: note: Shadow variable
      u8 *c = 4 + ftdi->response;
          ^

cppcheck possible warnings: (new ones prefixed by >>, may not real problems)

>> drivers/usb/mon/mon_bin.c:432:4: warning: Assignment of function parameter has no effect outside the function. [uselessAssignmentArg]
      offset = mon_copy_to_buff(rp, offset, sg_virt(sg),
      ^
   drivers/usb/mon/mon_bin.c:848:3: warning: Assignment of function parameter has no effect outside the function. [uselessAssignmentArg]
     nbytes -= step_len;
     ^
>> drivers/usb/mon/mon_bin.c:849:3: warning: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it? [uselessAssignmentPtrArg]
     buf += step_len;
     ^
>> drivers/spi/spidev.c:577:13: warning: Uninitialized variable: iter->devt [uninitvar]
     if (iter->devt == inode->i_rdev) {
               ^
--
>> drivers/staging/pi433/pi433_if.c:1066:9: warning: Redundant initialization for 'retval'. The initialized value is overwritten before it is read. [redundantInitialization]
    retval = idr_alloc(&pi433_idr, device, 0, N_PI433_MINORS, GFP_KERNEL);
           ^
   drivers/staging/pi433/pi433_if.c:1063:13: note: retval is initialized
    int retval = -ENOMEM;
               ^
   drivers/staging/pi433/pi433_if.c:1066:9: note: retval is overwritten
    retval = idr_alloc(&pi433_idr, device, 0, N_PI433_MINORS, GFP_KERNEL);
           ^
>> kernel/relay.c:360:2: warning: %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint]
    snprintf(tmpname, NAME_MAX, "%s%d", chan->base_filename, cpu);
    ^
>> drivers/vfio/vfio.c:316:49: warning: Parameter 'iommu_group' can be declared with const [constParameter]
   __vfio_group_get_from_iommu(struct iommu_group *iommu_group)
                                                   ^
>> drivers/vfio/vfio.c:508:23: warning: Parameter 'dev' can be declared with const [constParameter]
          struct device *dev)
                         ^
   drivers/vfio/vfio.c:1995:56: warning: Parameter 'test_group' can be declared with const [constParameter]
   bool vfio_external_group_match_file(struct vfio_group *test_group,
                                                          ^
>> drivers/vfio/vfio.c:252:12: warning: Uninitialized variable: tmp->ops [uninitvar]
     if (tmp->ops == ops) {
              ^
   drivers/vfio/vfio.c:243:6: note: Assuming condition is false
    if (!driver)
        ^
   drivers/vfio/vfio.c:252:12: note: Uninitialized variable: tmp->ops
     if (tmp->ops == ops) {
              ^
>> drivers/vfio/vfio.c:273:15: warning: Uninitialized variable: driver->ops [uninitvar]
     if (driver->ops == ops) {
                 ^
>> drivers/vfio/vfio.c:321:14: warning: Uninitialized variable: group->iommu_group [uninitvar]
     if (group->iommu_group == iommu_group) {
                ^
   drivers/vfio/vfio.c:579:23: warning: Uninitialized variable: unbound->dev [uninitvar]
     if (dev == unbound->dev) {
                         ^
>> drivers/vfio/vfio.c:1071:45: warning: Uninitialized variables: driver.ops, driver.vfio_next [uninitvar]
     if (!vfio_iommu_driver_allowed(container, driver))
                                               ^
   drivers/vfio/vfio.c:1062:41: note: Assuming condition is false
    if (list_empty(&container->group_list) || container->iommu_driver) {
                                           ^
   drivers/vfio/vfio.c:1062:41: note: Assuming condition is false
    if (list_empty(&container->group_list) || container->iommu_driver) {
                                           ^
   drivers/vfio/vfio.c:1071:45: note: Uninitialized variables: driver.ops, driver.vfio_next
     if (!vfio_iommu_driver_allowed(container, driver))
                                               ^
--
>> fs/overlayfs/copy_up.c:417:57: warning: Possible null pointer dereference: fh [nullPointer]
    err = ovl_check_setxattr(ofs, upper, OVL_XATTR_ORIGIN, fh->buf,
                                                           ^
   fs/overlayfs/copy_up.c:400:28: note: Assignment 'fh=NULL', assigned value is 0
    const struct ovl_fh *fh = NULL;
                              ^
   fs/overlayfs/copy_up.c:408:23: note: Assuming condition is false
    if (ovl_can_decode_fh(lower->d_sb)) {
                         ^
   fs/overlayfs/copy_up.c:417:57: note: Null pointer dereference
    err = ovl_check_setxattr(ofs, upper, OVL_XATTR_ORIGIN, fh->buf,
                                                           ^
>> fs/overlayfs/copy_up.c:107:10: warning: Local variable 'new' shadows outer argument [shadowArgument]
      void *new;
            ^
   fs/overlayfs/copy_up.c:48:21: note: Shadowed declaration
        struct dentry *new)
                       ^
   fs/overlayfs/copy_up.c:107:10: note: Shadow variable
      void *new;
            ^
--
>> fs/coredump.c:401:15: warning: Redundant initialization for 'core_waiters'. The initialized value is overwritten before it is read. [redundantInitialization]
    core_waiters = zap_threads(tsk, core_state, exit_code);
                 ^
   fs/coredump.c:395:19: note: core_waiters is initialized
    int core_waiters = -EBUSY;
                     ^
   fs/coredump.c:401:15: note: core_waiters is overwritten
    core_waiters = zap_threads(tsk, core_state, exit_code);
                 ^
>> kernel/bpf/bpf_iter.c:457:12: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition]
    if (!ulen ^ !ubuf)
              ^
   kernel/bpf/bpf_iter.c:518:29: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition]
    if (bpfptr_is_null(ulinfo) ^ !linfo_len)
                               ^
>> kernel/bpf/bpf_iter.c:312:26: warning: Uninitialized variable: tinfo->reg_info [uninitvar]
     if (reg_info == tinfo->reg_info) {
                            ^
>> kernel/bpf/bpf_iter.c:344:14: warning: Uninitialized variable: tinfo->btf_id [uninitvar]
     if (tinfo->btf_id && tinfo->btf_id == prog_btf_id) {
                ^
   kernel/bpf/bpf_iter.c:339:13: note: Assuming condition is false
    if (strncmp(attach_fname, prefix, prefix_len))
               ^
   kernel/bpf/bpf_iter.c:344:14: note: Uninitialized variable: tinfo->btf_id
     if (tinfo->btf_id && tinfo->btf_id == prog_btf_id) {
                ^
   kernel/bpf/bpf_iter.c:372:14: warning: Uninitialized variable: tinfo->btf_id [uninitvar]
     if (tinfo->btf_id == prog->aux->attach_btf_id) {
                ^
>> kernel/bpf/bpf_iter.c:376:8: warning: Uninitialized variable: reg_info [uninitvar]
      if (reg_info->get_func_proto)
          ^
   kernel/bpf/bpf_iter.c:375:20: note: Assignment 'reg_info=tinfo->reg_info', assigned value is <Uninit>
      reg_info = tinfo->reg_info;
                      ^
   kernel/bpf/bpf_iter.c:376:8: note: Uninitialized variable: reg_info
      if (reg_info->get_func_proto)
          ^
>> drivers/tty/tty_io.c:545:61: warning: Parameter 'tty' can be declared with const [constParameter]
   static struct file *tty_release_redirect(struct tty_struct *tty)
                                                               ^
--
>> fs/pipe.c:1071:73: warning: Parameter 'cnt' can be declared with const [constParameter]
   static int wait_for_partner(struct pipe_inode_info *pipe, unsigned int *cnt)
                                                                           ^
--
>> drivers/usb/misc/ftdi-elan.c:2206:6: warning: Local variable 'roothub_a' shadows outer function [shadowFunction]
    u32 roothub_a;
        ^
   drivers/usb/host/ohci.h:718:19: note: Shadowed declaration
   static inline u32 roothub_a (struct ohci_hcd *hc)
                     ^
   drivers/usb/misc/ftdi-elan.c:2206:6: note: Shadow variable
    u32 roothub_a;
        ^
>> drivers/usb/host/ohci.h:697:56: warning: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour [shiftTooManyBitsSigned]
    u32 fit = ohci_readl(ohci, &ohci->regs->fminterval) & FIT;
                                                          ^
   drivers/usb/host/ohci.h:699:2: warning: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour [shiftTooManyBitsSigned]
    ohci_writel (ohci, (fit ^ FIT) | ohci->fminterval,
    ^
>> drivers/usb/misc/ftdi-elan.c:2207:13: warning: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour [shiftTooManyBitsSigned]
    int mask = OHCI_INTR_INIT;
               ^
   drivers/usb/misc/ftdi-elan.c:2211:11: warning: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour [shiftTooManyBitsSigned]
    retval = ftdi_write_pcimem(ftdi, intrdisable, OHCI_INTR_MIE);
             ^
   drivers/usb/misc/ftdi-elan.c:2308:11: warning: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour [shiftTooManyBitsSigned]
    retval = ftdi_write_pcimem(ftdi, fminterval,
             ^
   drivers/usb/misc/ftdi-elan.c:2350:11: warning: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour [shiftTooManyBitsSigned]
    retval = ftdi_write_pcimem(ftdi, intrdisable,
             ^
>> drivers/usb/host/ohci.h:697:56: warning: Signed integer overflow for expression '1<<31'. [integerOverflow]
    u32 fit = ohci_readl(ohci, &ohci->regs->fminterval) & FIT;
                                                          ^
   drivers/usb/host/ohci.h:699:2: warning: Signed integer overflow for expression '1<<31'. [integerOverflow]
    ohci_writel (ohci, (fit ^ FIT) | ohci->fminterval,
    ^
>> drivers/usb/misc/ftdi-elan.c:2207:13: warning: Signed integer overflow for expression '1<<31'. [integerOverflow]
    int mask = OHCI_INTR_INIT;
               ^
   drivers/usb/misc/ftdi-elan.c:2211:11: warning: Signed integer overflow for expression '1<<31'. [integerOverflow]
    retval = ftdi_write_pcimem(ftdi, intrdisable, OHCI_INTR_MIE);
             ^
   drivers/usb/misc/ftdi-elan.c:2308:11: warning: Signed integer overflow for expression '1<<31'. [integerOverflow]
    retval = ftdi_write_pcimem(ftdi, fminterval,
             ^
   drivers/usb/misc/ftdi-elan.c:2350:11: warning: Signed integer overflow for expression '1<<31'. [integerOverflow]
    retval = ftdi_write_pcimem(ftdi, intrdisable,
             ^
   drivers/usb/misc/ftdi-elan.c:2362:18: warning: Signed integer overflow for expression '0xff<<24'. [integerOverflow]
     roothub_a &= ~(RH_A_POTPGT | RH_A_NPS);
                    ^
>> drivers/usb/misc/ftdi-elan.c:2781:27: warning: Uninitialized variables: ftdi.ftdi_list, ftdi.u132_lock, ftdi.command_next, ftdi.command_head, ftdi.respond_next, ftdi.respond_head, ftdi.synchronized, ftdi.enumerated, ftdi.registered, ftdi.initialized, ftdi.card_ejected, ftdi.function, ftdi.sequence_num, ftdi.disconnected, ftdi.gone_away, ftdi.stuck_status, ftdi.status_queue_delay, ftdi.sw_lock, ftdi.udev, ftdi.interface, ftdi.class, ftdi.status_work, ftdi.command_work, ftdi.respond_work, ftdi.platform_data, ftdi.platform_dev, ftdi.bulk_in_buffer, ftdi.bulk_in_size, ftdi.bulk_in_last, ftdi.bulk_in_left, ftdi.bulk_in_endpointAddr, ftdi.bulk_out_endpointAddr, ftdi.kref, ftdi.controlreg, ftdi.expected, ftdi.received, ftdi.ed_found [uninitvar]
     ftdi_status_cancel_work(ftdi);
                             ^

vim +577 drivers/spi/spidev.c

7d48ec3698e7b7 Bernhard Walle    2011-02-03  568  
814a8d50eb1d88 Andrea Paterniani 2007-05-08  569  static int spidev_open(struct inode *inode, struct file *filp)
814a8d50eb1d88 Andrea Paterniani 2007-05-08  570  {
d50d7e91c6e5cc Jakob Koschel     2022-03-24  571  	struct spidev_data	*spidev = NULL, *iter;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  572  	int			status = -ENXIO;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  573  
814a8d50eb1d88 Andrea Paterniani 2007-05-08  574  	mutex_lock(&device_list_lock);
814a8d50eb1d88 Andrea Paterniani 2007-05-08  575  
d50d7e91c6e5cc Jakob Koschel     2022-03-24  576  	list_for_each_entry(iter, &device_list, device_entry) {
d50d7e91c6e5cc Jakob Koschel     2022-03-24 @577  		if (iter->devt == inode->i_rdev) {
814a8d50eb1d88 Andrea Paterniani 2007-05-08  578  			status = 0;
d50d7e91c6e5cc Jakob Koschel     2022-03-24  579  			spidev = iter;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  580  			break;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  581  		}
814a8d50eb1d88 Andrea Paterniani 2007-05-08  582  	}
865f6d1974ddd9 Ray Jui           2014-10-09  583  
d50d7e91c6e5cc Jakob Koschel     2022-03-24  584  	if (!spidev) {
865f6d1974ddd9 Ray Jui           2014-10-09  585  		pr_debug("spidev: nothing for minor %d\n", iminor(inode));
865f6d1974ddd9 Ray Jui           2014-10-09  586  		goto err_find_dev;
865f6d1974ddd9 Ray Jui           2014-10-09  587  	}
865f6d1974ddd9 Ray Jui           2014-10-09  588  
865f6d1974ddd9 Ray Jui           2014-10-09  589  	if (!spidev->tx_buffer) {
865f6d1974ddd9 Ray Jui           2014-10-09  590  		spidev->tx_buffer = kmalloc(bufsiz, GFP_KERNEL);
865f6d1974ddd9 Ray Jui           2014-10-09  591  		if (!spidev->tx_buffer) {
814a8d50eb1d88 Andrea Paterniani 2007-05-08  592  			dev_dbg(&spidev->spi->dev, "open/ENOMEM\n");
814a8d50eb1d88 Andrea Paterniani 2007-05-08  593  			status = -ENOMEM;
865f6d1974ddd9 Ray Jui           2014-10-09  594  			goto err_find_dev;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  595  		}
814a8d50eb1d88 Andrea Paterniani 2007-05-08  596  	}
865f6d1974ddd9 Ray Jui           2014-10-09  597  
865f6d1974ddd9 Ray Jui           2014-10-09  598  	if (!spidev->rx_buffer) {
865f6d1974ddd9 Ray Jui           2014-10-09  599  		spidev->rx_buffer = kmalloc(bufsiz, GFP_KERNEL);
865f6d1974ddd9 Ray Jui           2014-10-09  600  		if (!spidev->rx_buffer) {
865f6d1974ddd9 Ray Jui           2014-10-09  601  			dev_dbg(&spidev->spi->dev, "open/ENOMEM\n");
865f6d1974ddd9 Ray Jui           2014-10-09  602  			status = -ENOMEM;
865f6d1974ddd9 Ray Jui           2014-10-09  603  			goto err_alloc_rx_buf;
865f6d1974ddd9 Ray Jui           2014-10-09  604  		}
865f6d1974ddd9 Ray Jui           2014-10-09  605  	}
865f6d1974ddd9 Ray Jui           2014-10-09  606  
814a8d50eb1d88 Andrea Paterniani 2007-05-08  607  	spidev->users++;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  608  	filp->private_data = spidev;
c5bf68fe0c86a5 Kirill Smelkov    2019-03-26  609  	stream_open(inode, filp);
814a8d50eb1d88 Andrea Paterniani 2007-05-08  610  
865f6d1974ddd9 Ray Jui           2014-10-09  611  	mutex_unlock(&device_list_lock);
865f6d1974ddd9 Ray Jui           2014-10-09  612  	return 0;
865f6d1974ddd9 Ray Jui           2014-10-09  613  
865f6d1974ddd9 Ray Jui           2014-10-09  614  err_alloc_rx_buf:
865f6d1974ddd9 Ray Jui           2014-10-09  615  	kfree(spidev->tx_buffer);
865f6d1974ddd9 Ray Jui           2014-10-09  616  	spidev->tx_buffer = NULL;
865f6d1974ddd9 Ray Jui           2014-10-09  617  err_find_dev:
814a8d50eb1d88 Andrea Paterniani 2007-05-08  618  	mutex_unlock(&device_list_lock);
814a8d50eb1d88 Andrea Paterniani 2007-05-08  619  	return status;
814a8d50eb1d88 Andrea Paterniani 2007-05-08  620  }
814a8d50eb1d88 Andrea Paterniani 2007-05-08  621  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-01-03 22:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-03 22:32 drivers/spi/spidev.c:577:13: warning: Uninitialized variable: iter->devt [uninitvar] kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2022-07-13  7:04 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.