CC: [email protected]
CC: [email protected]
TO: Russell King <[email protected]>

tree:   git://git.armlinux.org.uk/~rmk/linux-arm.git clearfog
head:   31ca7cd503d73e8da285382d31b7be1c7a7da479
commit: 79d4556027c96d9cb569bf50ae889fd148344999 [2/13] net: dsa: mv88e6xxx: 
debugfs hacks to fix the compile
:::::: branch date: 8 hours ago
:::::: commit date: 6 weeks ago
config: x86_64-randconfig-m001-20211214 
(https://download.01.org/0day-ci/archive/20211215/[email protected]/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0

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

New smatch warnings:
drivers/net/dsa/mv88e6xxx/mv88e6xxx_debugfs.c:441 mv88e6xxx_default_vid_show() 
error: uninitialized symbol 'err'.
drivers/net/dsa/mv88e6xxx/mv88e6xxx_debugfs.c:505 mv88e6xxx_fid_show() error: 
uninitialized symbol 'err'.
drivers/net/dsa/mv88e6xxx/mv88e6xxx_debugfs.c:555 mv88e6xxx_state_show() error: 
uninitialized symbol 'ret'.
drivers/net/dsa/mv88e6xxx/mv88e6xxx_debugfs.c:605 mv88e6xxx_8021q_mode_show() 
error: uninitialized symbol 'ret'.

Old smatch warnings:
drivers/net/dsa/mv88e6xxx/chip.c:2747 mv88e6xxx_serdes_irq_request() warn: 
'irq' not released on lines: 2747.

vim +/err +441 drivers/net/dsa/mv88e6xxx/mv88e6xxx_debugfs.c

fe8a2a1725d821b Vivien Didelot 2015-10-22  420  
fe8a2a1725d821b Vivien Didelot 2015-10-22  421  static int 
mv88e6xxx_default_vid_show(struct seq_file *s, void *p)
fe8a2a1725d821b Vivien Didelot 2015-10-22  422  {
fe8a2a1725d821b Vivien Didelot 2015-10-22  423          struct mv88e6xxx_chip 
*chip = s->private;
fe8a2a1725d821b Vivien Didelot 2015-10-22  424          u16 pvid;
fe8a2a1725d821b Vivien Didelot 2015-10-22  425          int i, err;
fe8a2a1725d821b Vivien Didelot 2015-10-22  426  
fe8a2a1725d821b Vivien Didelot 2015-10-22  427          seq_puts(s, " Port  
DefaultVID\n");
fe8a2a1725d821b Vivien Didelot 2015-10-22  428  
fe8a2a1725d821b Vivien Didelot 2015-10-22  429          
mutex_lock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  430  
fe8a2a1725d821b Vivien Didelot 2015-10-22  431          for (i = 0; i < 
mv88e6xxx_num_ports(chip); ++i) {
fe8a2a1725d821b Vivien Didelot 2015-10-22  432                  err = 
mv88e6xxx_port_get_pvid(chip, i, &pvid);
fe8a2a1725d821b Vivien Didelot 2015-10-22  433                  if (err)
fe8a2a1725d821b Vivien Didelot 2015-10-22  434                          break;
fe8a2a1725d821b Vivien Didelot 2015-10-22  435  
fe8a2a1725d821b Vivien Didelot 2015-10-22  436                  seq_printf(s, 
"%4d  %d\n", i, pvid);
fe8a2a1725d821b Vivien Didelot 2015-10-22  437          }
fe8a2a1725d821b Vivien Didelot 2015-10-22  438  
fe8a2a1725d821b Vivien Didelot 2015-10-22  439          
mutex_unlock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  440  
fe8a2a1725d821b Vivien Didelot 2015-10-22 @441          return err;
fe8a2a1725d821b Vivien Didelot 2015-10-22  442  }
fe8a2a1725d821b Vivien Didelot 2015-10-22  443  
fe8a2a1725d821b Vivien Didelot 2015-10-22  444  static ssize_t 
mv88e6xxx_default_vid_write(struct file *file,
fe8a2a1725d821b Vivien Didelot 2015-10-22  445                                  
           const char __user *buf, size_t count,
fe8a2a1725d821b Vivien Didelot 2015-10-22  446                                  
           loff_t *ppos)
fe8a2a1725d821b Vivien Didelot 2015-10-22  447  {
fe8a2a1725d821b Vivien Didelot 2015-10-22  448          struct seq_file *s = 
file->private_data;
fe8a2a1725d821b Vivien Didelot 2015-10-22  449          struct mv88e6xxx_chip 
*chip = s->private;
fe8a2a1725d821b Vivien Didelot 2015-10-22  450          char cmd[32];
fe8a2a1725d821b Vivien Didelot 2015-10-22  451          unsigned int port, pvid;
fe8a2a1725d821b Vivien Didelot 2015-10-22  452          int ret;
fe8a2a1725d821b Vivien Didelot 2015-10-22  453  
fe8a2a1725d821b Vivien Didelot 2015-10-22  454          if (copy_from_user(cmd, 
buf, sizeof(cmd)))
fe8a2a1725d821b Vivien Didelot 2015-10-22  455                  return -EFAULT;
fe8a2a1725d821b Vivien Didelot 2015-10-22  456  
fe8a2a1725d821b Vivien Didelot 2015-10-22  457          ret = sscanf(cmd, "%u 
%u", &port, &pvid);
fe8a2a1725d821b Vivien Didelot 2015-10-22  458          if (ret != 2)
fe8a2a1725d821b Vivien Didelot 2015-10-22  459                  return -EINVAL;
fe8a2a1725d821b Vivien Didelot 2015-10-22  460  
fe8a2a1725d821b Vivien Didelot 2015-10-22  461          if (port >= 
mv88e6xxx_num_ports(chip) || pvid > 0xfff)
fe8a2a1725d821b Vivien Didelot 2015-10-22  462                  return -ERANGE;
fe8a2a1725d821b Vivien Didelot 2015-10-22  463  
fe8a2a1725d821b Vivien Didelot 2015-10-22  464          
mutex_lock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  465          ret = 
mv88e6xxx_port_set_pvid(chip, port, pvid);
fe8a2a1725d821b Vivien Didelot 2015-10-22  466          
mutex_unlock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  467  
fe8a2a1725d821b Vivien Didelot 2015-10-22  468          return ret < 0 ? ret : 
count;
fe8a2a1725d821b Vivien Didelot 2015-10-22  469  }
fe8a2a1725d821b Vivien Didelot 2015-10-22  470  
fe8a2a1725d821b Vivien Didelot 2015-10-22  471  static int 
mv88e6xxx_default_vid_open(struct inode *inode, struct file *file)
fe8a2a1725d821b Vivien Didelot 2015-10-22  472  {
fe8a2a1725d821b Vivien Didelot 2015-10-22  473          return 
single_open(file, mv88e6xxx_default_vid_show, inode->i_private);
fe8a2a1725d821b Vivien Didelot 2015-10-22  474  }
fe8a2a1725d821b Vivien Didelot 2015-10-22  475  
fe8a2a1725d821b Vivien Didelot 2015-10-22  476  static const struct 
file_operations mv88e6xxx_default_vid_fops = {
fe8a2a1725d821b Vivien Didelot 2015-10-22  477          .open           = 
mv88e6xxx_default_vid_open,
fe8a2a1725d821b Vivien Didelot 2015-10-22  478          .read           = 
seq_read,
fe8a2a1725d821b Vivien Didelot 2015-10-22  479          .write          = 
mv88e6xxx_default_vid_write,
fe8a2a1725d821b Vivien Didelot 2015-10-22  480          .llseek         = 
no_llseek,
fe8a2a1725d821b Vivien Didelot 2015-10-22  481          .release        = 
single_release,
fe8a2a1725d821b Vivien Didelot 2015-10-22  482          .owner          = 
THIS_MODULE,
fe8a2a1725d821b Vivien Didelot 2015-10-22  483  };
fe8a2a1725d821b Vivien Didelot 2015-10-22  484  
fe8a2a1725d821b Vivien Didelot 2015-10-22  485  static int 
mv88e6xxx_fid_show(struct seq_file *s, void *p)
fe8a2a1725d821b Vivien Didelot 2015-10-22  486  {
fe8a2a1725d821b Vivien Didelot 2015-10-22  487          struct mv88e6xxx_chip 
*chip = s->private;
fe8a2a1725d821b Vivien Didelot 2015-10-22  488          u16 fid;
fe8a2a1725d821b Vivien Didelot 2015-10-22  489          int i, err;
fe8a2a1725d821b Vivien Didelot 2015-10-22  490  
fe8a2a1725d821b Vivien Didelot 2015-10-22  491          seq_puts(s, " Port  
FID\n");
fe8a2a1725d821b Vivien Didelot 2015-10-22  492  
fe8a2a1725d821b Vivien Didelot 2015-10-22  493          
mutex_lock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  494  
fe8a2a1725d821b Vivien Didelot 2015-10-22  495          for (i = 0; i < 
mv88e6xxx_num_ports(chip); ++i) {
fe8a2a1725d821b Vivien Didelot 2015-10-22  496                  err = 
mv88e6xxx_port_get_fid(chip, i, &fid);
fe8a2a1725d821b Vivien Didelot 2015-10-22  497                  if (err)
fe8a2a1725d821b Vivien Didelot 2015-10-22  498                          break;
fe8a2a1725d821b Vivien Didelot 2015-10-22  499  
fe8a2a1725d821b Vivien Didelot 2015-10-22  500                  seq_printf(s, 
"%4d  %d\n", i, fid);
fe8a2a1725d821b Vivien Didelot 2015-10-22  501          }
fe8a2a1725d821b Vivien Didelot 2015-10-22  502  
fe8a2a1725d821b Vivien Didelot 2015-10-22  503          
mutex_unlock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  504  
fe8a2a1725d821b Vivien Didelot 2015-10-22 @505          return err;
fe8a2a1725d821b Vivien Didelot 2015-10-22  506  }
fe8a2a1725d821b Vivien Didelot 2015-10-22  507  
fe8a2a1725d821b Vivien Didelot 2015-10-22  508  static int 
mv88e6xxx_fid_open(struct inode *inode, struct file *file)
fe8a2a1725d821b Vivien Didelot 2015-10-22  509  {
fe8a2a1725d821b Vivien Didelot 2015-10-22  510          return 
single_open(file, mv88e6xxx_fid_show, inode->i_private);
fe8a2a1725d821b Vivien Didelot 2015-10-22  511  }
fe8a2a1725d821b Vivien Didelot 2015-10-22  512  
fe8a2a1725d821b Vivien Didelot 2015-10-22  513  static const struct 
file_operations mv88e6xxx_fid_fops = {
fe8a2a1725d821b Vivien Didelot 2015-10-22  514          .open           = 
mv88e6xxx_fid_open,
fe8a2a1725d821b Vivien Didelot 2015-10-22  515          .read           = 
seq_read,
fe8a2a1725d821b Vivien Didelot 2015-10-22  516          .llseek         = 
no_llseek,
fe8a2a1725d821b Vivien Didelot 2015-10-22  517          .release        = 
single_release,
fe8a2a1725d821b Vivien Didelot 2015-10-22  518          .owner          = 
THIS_MODULE,
fe8a2a1725d821b Vivien Didelot 2015-10-22  519  };
fe8a2a1725d821b Vivien Didelot 2015-10-22  520  
fe8a2a1725d821b Vivien Didelot 2015-10-22  521  static const char * const 
mv88e6xxx_port_state_names[] = {
fe8a2a1725d821b Vivien Didelot 2015-10-22  522          
[MV88E6XXX_PORT_CTL0_STATE_DISABLED] = "Disabled",
fe8a2a1725d821b Vivien Didelot 2015-10-22  523          
[MV88E6XXX_PORT_CTL0_STATE_BLOCKING] = "Blocking/Listening",
fe8a2a1725d821b Vivien Didelot 2015-10-22  524          
[MV88E6XXX_PORT_CTL0_STATE_LEARNING] = "Learning",
fe8a2a1725d821b Vivien Didelot 2015-10-22  525          
[MV88E6XXX_PORT_CTL0_STATE_FORWARDING] = "Forwarding",
fe8a2a1725d821b Vivien Didelot 2015-10-22  526  };
fe8a2a1725d821b Vivien Didelot 2015-10-22  527  
fe8a2a1725d821b Vivien Didelot 2015-10-22  528  static int 
mv88e6xxx_state_show(struct seq_file *s, void *p)
fe8a2a1725d821b Vivien Didelot 2015-10-22  529  {
fe8a2a1725d821b Vivien Didelot 2015-10-22  530          struct mv88e6xxx_chip 
*chip = s->private;
fe8a2a1725d821b Vivien Didelot 2015-10-22  531          int i, ret;
fe8a2a1725d821b Vivien Didelot 2015-10-22  532          u16 data;
fe8a2a1725d821b Vivien Didelot 2015-10-22  533  
fe8a2a1725d821b Vivien Didelot 2015-10-22  534          /* header */
fe8a2a1725d821b Vivien Didelot 2015-10-22  535          seq_puts(s, " Port  
Mode\n");
fe8a2a1725d821b Vivien Didelot 2015-10-22  536  
fe8a2a1725d821b Vivien Didelot 2015-10-22  537          
mutex_lock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  538  
fe8a2a1725d821b Vivien Didelot 2015-10-22  539          /* One line per input 
port */
fe8a2a1725d821b Vivien Didelot 2015-10-22  540          for (i = 0; i < 
mv88e6xxx_num_ports(chip); ++i) {
fe8a2a1725d821b Vivien Didelot 2015-10-22  541                  seq_printf(s, 
"%4d ", i);
fe8a2a1725d821b Vivien Didelot 2015-10-22  542  
fe8a2a1725d821b Vivien Didelot 2015-10-22  543                  ret = 
mv88e6xxx_port_read(chip, i, MV88E6XXX_PORT_CTL0, &data);
fe8a2a1725d821b Vivien Didelot 2015-10-22  544                  if (ret < 0)
fe8a2a1725d821b Vivien Didelot 2015-10-22  545                          goto 
unlock;
fe8a2a1725d821b Vivien Didelot 2015-10-22  546  
fe8a2a1725d821b Vivien Didelot 2015-10-22  547                  data &= 
MV88E6XXX_PORT_CTL0_STATE_MASK;
fe8a2a1725d821b Vivien Didelot 2015-10-22  548                  seq_printf(s, " 
%s\n", mv88e6xxx_port_state_names[data]);
fe8a2a1725d821b Vivien Didelot 2015-10-22  549                  ret = 0;
fe8a2a1725d821b Vivien Didelot 2015-10-22  550          }
fe8a2a1725d821b Vivien Didelot 2015-10-22  551  
fe8a2a1725d821b Vivien Didelot 2015-10-22  552  unlock:
fe8a2a1725d821b Vivien Didelot 2015-10-22  553          
mutex_unlock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  554  
fe8a2a1725d821b Vivien Didelot 2015-10-22 @555          return ret;
fe8a2a1725d821b Vivien Didelot 2015-10-22  556  }
fe8a2a1725d821b Vivien Didelot 2015-10-22  557  
fe8a2a1725d821b Vivien Didelot 2015-10-22  558  static int 
mv88e6xxx_state_open(struct inode *inode, struct file *file)
fe8a2a1725d821b Vivien Didelot 2015-10-22  559  {
fe8a2a1725d821b Vivien Didelot 2015-10-22  560          return 
single_open(file, mv88e6xxx_state_show, inode->i_private);
fe8a2a1725d821b Vivien Didelot 2015-10-22  561  }
fe8a2a1725d821b Vivien Didelot 2015-10-22  562  
fe8a2a1725d821b Vivien Didelot 2015-10-22  563  static const struct 
file_operations mv88e6xxx_state_fops = {
fe8a2a1725d821b Vivien Didelot 2015-10-22  564          .open           = 
mv88e6xxx_state_open,
fe8a2a1725d821b Vivien Didelot 2015-10-22  565          .read           = 
seq_read,
fe8a2a1725d821b Vivien Didelot 2015-10-22  566          .llseek         = 
no_llseek,
fe8a2a1725d821b Vivien Didelot 2015-10-22  567          .release        = 
single_release,
fe8a2a1725d821b Vivien Didelot 2015-10-22  568          .owner          = 
THIS_MODULE,
fe8a2a1725d821b Vivien Didelot 2015-10-22  569  };
fe8a2a1725d821b Vivien Didelot 2015-10-22  570  
fe8a2a1725d821b Vivien Didelot 2015-10-22  571  static const char * const 
mv88e6xxx_port_8021q_mode_names[] = {
fe8a2a1725d821b Vivien Didelot 2015-10-22  572          
[MV88E6XXX_PORT_CTL2_8021Q_MODE_DISABLED] = "Disabled",
fe8a2a1725d821b Vivien Didelot 2015-10-22  573          
[MV88E6XXX_PORT_CTL2_8021Q_MODE_FALLBACK] = "Fallback",
fe8a2a1725d821b Vivien Didelot 2015-10-22  574          
[MV88E6XXX_PORT_CTL2_8021Q_MODE_CHECK] = "Check",
fe8a2a1725d821b Vivien Didelot 2015-10-22  575          
[MV88E6XXX_PORT_CTL2_8021Q_MODE_SECURE] = "Secure",
fe8a2a1725d821b Vivien Didelot 2015-10-22  576  };
fe8a2a1725d821b Vivien Didelot 2015-10-22  577  
fe8a2a1725d821b Vivien Didelot 2015-10-22  578  static int 
mv88e6xxx_8021q_mode_show(struct seq_file *s, void *p)
fe8a2a1725d821b Vivien Didelot 2015-10-22  579  {
fe8a2a1725d821b Vivien Didelot 2015-10-22  580          struct mv88e6xxx_chip 
*chip = s->private;
fe8a2a1725d821b Vivien Didelot 2015-10-22  581          int i, ret;
fe8a2a1725d821b Vivien Didelot 2015-10-22  582          u16 data;
fe8a2a1725d821b Vivien Didelot 2015-10-22  583  
fe8a2a1725d821b Vivien Didelot 2015-10-22  584          /* header */
fe8a2a1725d821b Vivien Didelot 2015-10-22  585          seq_puts(s, " Port  
Mode\n");
fe8a2a1725d821b Vivien Didelot 2015-10-22  586  
fe8a2a1725d821b Vivien Didelot 2015-10-22  587          
mutex_lock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  588  
fe8a2a1725d821b Vivien Didelot 2015-10-22  589          /* One line per input 
port */
fe8a2a1725d821b Vivien Didelot 2015-10-22  590          for (i = 0; i < 
mv88e6xxx_num_ports(chip); ++i) {
fe8a2a1725d821b Vivien Didelot 2015-10-22  591                  seq_printf(s, 
"%4d ", i);
fe8a2a1725d821b Vivien Didelot 2015-10-22  592  
fe8a2a1725d821b Vivien Didelot 2015-10-22  593                  ret = 
mv88e6xxx_port_read(chip, i, MV88E6XXX_PORT_CTL2, &data);
fe8a2a1725d821b Vivien Didelot 2015-10-22  594                  if (ret < 0)
fe8a2a1725d821b Vivien Didelot 2015-10-22  595                          goto 
unlock;
fe8a2a1725d821b Vivien Didelot 2015-10-22  596  
fe8a2a1725d821b Vivien Didelot 2015-10-22  597                  data &= 
MV88E6XXX_PORT_CTL2_8021Q_MODE_MASK;
fe8a2a1725d821b Vivien Didelot 2015-10-22  598                  seq_printf(s, " 
%s\n", mv88e6xxx_port_8021q_mode_names[data]);
fe8a2a1725d821b Vivien Didelot 2015-10-22  599                  ret = 0;
fe8a2a1725d821b Vivien Didelot 2015-10-22  600          }
fe8a2a1725d821b Vivien Didelot 2015-10-22  601  
fe8a2a1725d821b Vivien Didelot 2015-10-22  602  unlock:
fe8a2a1725d821b Vivien Didelot 2015-10-22  603          
mutex_unlock(&chip->reg_lock);
fe8a2a1725d821b Vivien Didelot 2015-10-22  604  
fe8a2a1725d821b Vivien Didelot 2015-10-22 @605          return ret;
fe8a2a1725d821b Vivien Didelot 2015-10-22  606  }
fe8a2a1725d821b Vivien Didelot 2015-10-22  607  

:::::: The code at line 441 was first introduced by commit
:::::: fe8a2a1725d821bb81755cefe6483985aee89fba net: dsa: mv88e6xxx: add 
debugfs interface

:::::: TO: Vivien Didelot <[email protected]>
:::::: CC: Russell King (Oracle) <[email protected]>

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

Reply via email to