All of lore.kernel.org
 help / color / mirror / Atom feed
* [avpatel:riscv_unaligned_test_skip_v1 53/77] arch/riscv/kernel/hw_breakpoint.c:53 arch_smp_setup_sbi_shmem() warn: unsigned '_x' is never less than zero.
@ 2025-02-17 14:13 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2025-02-17 14:13 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Himanshu Chauhan <hchauhan@ventanamicro.com>
CC: Anup Patel <anup@brainfault.org>

tree:   https://github.com/avpatel/linux.git riscv_unaligned_test_skip_v1
head:   172aa65b307ae6ac3855f77b6f28d48bfd9c36e5
commit: d3661e2503082cb4cd407a8a4b85287f9bdc2851 [53/77] riscv: Introduce support for hardware break/watchpoints
:::::: branch date: 3 hours ago
:::::: commit date: 10 days ago
config: riscv-randconfig-r073-20250213 (https://download.01.org/0day-ci/archive/20250217/202502172257.1bTZKubK-lkp@intel.com/config)
compiler: riscv32-linux-gcc (GCC) 14.2.0

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202502172257.1bTZKubK-lkp@intel.com/

smatch warnings:
arch/riscv/kernel/hw_breakpoint.c:53 arch_smp_setup_sbi_shmem() warn: unsigned '_x' is never less than zero.
arch/riscv/kernel/hw_breakpoint.c:94 arch_smp_setup_sbi_shmem() error: uninitialized symbol 'rc'.

vim +/_x +53 arch/riscv/kernel/hw_breakpoint.c

d3661e2503082cb Himanshu Chauhan 2024-02-22  39  
d3661e2503082cb Himanshu Chauhan 2024-02-22  40  static int arch_smp_setup_sbi_shmem(unsigned int cpu)
d3661e2503082cb Himanshu Chauhan 2024-02-22  41  {
d3661e2503082cb Himanshu Chauhan 2024-02-22  42  	struct sbi_dbtr_shmem_entry *dbtr_shmem;
d3661e2503082cb Himanshu Chauhan 2024-02-22  43  	unsigned long shmem_pa;
d3661e2503082cb Himanshu Chauhan 2024-02-22  44  	struct sbiret ret;
d3661e2503082cb Himanshu Chauhan 2024-02-22  45  	int rc;
d3661e2503082cb Himanshu Chauhan 2024-02-22  46  
d3661e2503082cb Himanshu Chauhan 2024-02-22  47  	dbtr_shmem = per_cpu_ptr(sbi_dbtr_shmem, cpu);
d3661e2503082cb Himanshu Chauhan 2024-02-22  48  	if (!dbtr_shmem) {
d3661e2503082cb Himanshu Chauhan 2024-02-22  49  		pr_err("Invalid per-cpu shared memory for debug triggers\n");
d3661e2503082cb Himanshu Chauhan 2024-02-22  50  		return -ENODEV;
d3661e2503082cb Himanshu Chauhan 2024-02-22  51  	}
d3661e2503082cb Himanshu Chauhan 2024-02-22  52  
d3661e2503082cb Himanshu Chauhan 2024-02-22 @53  	shmem_pa = __pa(dbtr_shmem);
d3661e2503082cb Himanshu Chauhan 2024-02-22  54  
d3661e2503082cb Himanshu Chauhan 2024-02-22  55  	ret = sbi_ecall(SBI_EXT_DBTR, SBI_EXT_DBTR_SETUP_SHMEM,
d3661e2503082cb Himanshu Chauhan 2024-02-22  56  			MEM_LO(shmem_pa), MEM_HI(shmem_pa), 0, 0, 0, 0);
d3661e2503082cb Himanshu Chauhan 2024-02-22  57  
d3661e2503082cb Himanshu Chauhan 2024-02-22  58  	if (ret.error) {
d3661e2503082cb Himanshu Chauhan 2024-02-22  59  		switch(ret.error) {
d3661e2503082cb Himanshu Chauhan 2024-02-22  60  		case SBI_ERR_DENIED:
d3661e2503082cb Himanshu Chauhan 2024-02-22  61  			pr_warn("%s: Access denied for shared memory at %lx\n",
d3661e2503082cb Himanshu Chauhan 2024-02-22  62  				__func__, shmem_pa);
d3661e2503082cb Himanshu Chauhan 2024-02-22  63  			rc = -EPERM;
d3661e2503082cb Himanshu Chauhan 2024-02-22  64  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  65  
d3661e2503082cb Himanshu Chauhan 2024-02-22  66  		case SBI_ERR_INVALID_PARAM:
d3661e2503082cb Himanshu Chauhan 2024-02-22  67  		case SBI_ERR_INVALID_ADDRESS:
d3661e2503082cb Himanshu Chauhan 2024-02-22  68  			pr_warn("%s: Invalid address parameter (%lu)\n",
d3661e2503082cb Himanshu Chauhan 2024-02-22  69  				__func__, ret.error);
d3661e2503082cb Himanshu Chauhan 2024-02-22  70  			rc = -EINVAL;
d3661e2503082cb Himanshu Chauhan 2024-02-22  71  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  72  
d3661e2503082cb Himanshu Chauhan 2024-02-22  73  		case SBI_ERR_ALREADY_AVAILABLE:
d3661e2503082cb Himanshu Chauhan 2024-02-22  74  			pr_warn("%s: Shared memory is already set\n",
d3661e2503082cb Himanshu Chauhan 2024-02-22  75  				__func__);
d3661e2503082cb Himanshu Chauhan 2024-02-22  76  			rc = -EADDRINUSE;
d3661e2503082cb Himanshu Chauhan 2024-02-22  77  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  78  
d3661e2503082cb Himanshu Chauhan 2024-02-22  79  		case SBI_ERR_FAILURE:
d3661e2503082cb Himanshu Chauhan 2024-02-22  80  			pr_err("%s: Internal sdtrig state error\n",
d3661e2503082cb Himanshu Chauhan 2024-02-22  81  			       __func__);
d3661e2503082cb Himanshu Chauhan 2024-02-22  82  			rc = -ENXIO;
d3661e2503082cb Himanshu Chauhan 2024-02-22  83  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  84  
d3661e2503082cb Himanshu Chauhan 2024-02-22  85  		default:
d3661e2503082cb Himanshu Chauhan 2024-02-22  86  			pr_warn("%s: Unknown error %lu\n", __func__, ret.error);
d3661e2503082cb Himanshu Chauhan 2024-02-22  87  			rc = -ENXIO;
d3661e2503082cb Himanshu Chauhan 2024-02-22  88  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  89  		}
d3661e2503082cb Himanshu Chauhan 2024-02-22  90  	}
d3661e2503082cb Himanshu Chauhan 2024-02-22  91  
d3661e2503082cb Himanshu Chauhan 2024-02-22  92  	pr_warn("CPU %d: HW Breakpoint shared memory registered.\n", cpu);
d3661e2503082cb Himanshu Chauhan 2024-02-22  93  
d3661e2503082cb Himanshu Chauhan 2024-02-22 @94  	return rc;
d3661e2503082cb Himanshu Chauhan 2024-02-22  95  }
d3661e2503082cb Himanshu Chauhan 2024-02-22  96  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

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

* [avpatel:riscv_unaligned_test_skip_v1 53/77] arch/riscv/kernel/hw_breakpoint.c:53 arch_smp_setup_sbi_shmem() warn: unsigned '_x' is never less than zero.
@ 2025-02-17 14:15 Dan Carpenter
  0 siblings, 0 replies; 2+ messages in thread
From: Dan Carpenter @ 2025-02-17 14:15 UTC (permalink / raw)
  To: oe-kbuild, Himanshu Chauhan; +Cc: lkp, oe-kbuild-all, Anup Patel

tree:   https://github.com/avpatel/linux.git riscv_unaligned_test_skip_v1
head:   172aa65b307ae6ac3855f77b6f28d48bfd9c36e5
commit: d3661e2503082cb4cd407a8a4b85287f9bdc2851 [53/77] riscv: Introduce support for hardware break/watchpoints
config: riscv-randconfig-r073-20250213 (https://download.01.org/0day-ci/archive/20250217/202502172257.1bTZKubK-lkp@intel.com/config)
compiler: riscv32-linux-gcc (GCC) 14.2.0

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
| Closes: https://lore.kernel.org/r/202502172257.1bTZKubK-lkp@intel.com/

smatch warnings:
arch/riscv/kernel/hw_breakpoint.c:94 arch_smp_setup_sbi_shmem() error: uninitialized symbol 'rc'.

vim +/_x +53 arch/riscv/kernel/hw_breakpoint.c

d3661e2503082cb Himanshu Chauhan 2024-02-22  40  static int arch_smp_setup_sbi_shmem(unsigned int cpu)
d3661e2503082cb Himanshu Chauhan 2024-02-22  41  {
d3661e2503082cb Himanshu Chauhan 2024-02-22  42  	struct sbi_dbtr_shmem_entry *dbtr_shmem;
d3661e2503082cb Himanshu Chauhan 2024-02-22  43  	unsigned long shmem_pa;
d3661e2503082cb Himanshu Chauhan 2024-02-22  44  	struct sbiret ret;
d3661e2503082cb Himanshu Chauhan 2024-02-22  45  	int rc;
d3661e2503082cb Himanshu Chauhan 2024-02-22  46  
d3661e2503082cb Himanshu Chauhan 2024-02-22  47  	dbtr_shmem = per_cpu_ptr(sbi_dbtr_shmem, cpu);
d3661e2503082cb Himanshu Chauhan 2024-02-22  48  	if (!dbtr_shmem) {
d3661e2503082cb Himanshu Chauhan 2024-02-22  49  		pr_err("Invalid per-cpu shared memory for debug triggers\n");
d3661e2503082cb Himanshu Chauhan 2024-02-22  50  		return -ENODEV;
d3661e2503082cb Himanshu Chauhan 2024-02-22  51  	}
d3661e2503082cb Himanshu Chauhan 2024-02-22  52  
d3661e2503082cb Himanshu Chauhan 2024-02-22 @53  	shmem_pa = __pa(dbtr_shmem);
d3661e2503082cb Himanshu Chauhan 2024-02-22  54  
d3661e2503082cb Himanshu Chauhan 2024-02-22  55  	ret = sbi_ecall(SBI_EXT_DBTR, SBI_EXT_DBTR_SETUP_SHMEM,
d3661e2503082cb Himanshu Chauhan 2024-02-22  56  			MEM_LO(shmem_pa), MEM_HI(shmem_pa), 0, 0, 0, 0);
d3661e2503082cb Himanshu Chauhan 2024-02-22  57  
d3661e2503082cb Himanshu Chauhan 2024-02-22  58  	if (ret.error) {

ret is uninitialized in the case where sbi_ecall() doesn't return an
error.

d3661e2503082cb Himanshu Chauhan 2024-02-22  59  		switch(ret.error) {
d3661e2503082cb Himanshu Chauhan 2024-02-22  60  		case SBI_ERR_DENIED:
d3661e2503082cb Himanshu Chauhan 2024-02-22  61  			pr_warn("%s: Access denied for shared memory at %lx\n",
d3661e2503082cb Himanshu Chauhan 2024-02-22  62  				__func__, shmem_pa);
d3661e2503082cb Himanshu Chauhan 2024-02-22  63  			rc = -EPERM;
d3661e2503082cb Himanshu Chauhan 2024-02-22  64  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  65  
d3661e2503082cb Himanshu Chauhan 2024-02-22  66  		case SBI_ERR_INVALID_PARAM:
d3661e2503082cb Himanshu Chauhan 2024-02-22  67  		case SBI_ERR_INVALID_ADDRESS:
d3661e2503082cb Himanshu Chauhan 2024-02-22  68  			pr_warn("%s: Invalid address parameter (%lu)\n",
d3661e2503082cb Himanshu Chauhan 2024-02-22  69  				__func__, ret.error);
d3661e2503082cb Himanshu Chauhan 2024-02-22  70  			rc = -EINVAL;
d3661e2503082cb Himanshu Chauhan 2024-02-22  71  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  72  
d3661e2503082cb Himanshu Chauhan 2024-02-22  73  		case SBI_ERR_ALREADY_AVAILABLE:
d3661e2503082cb Himanshu Chauhan 2024-02-22  74  			pr_warn("%s: Shared memory is already set\n",
d3661e2503082cb Himanshu Chauhan 2024-02-22  75  				__func__);
d3661e2503082cb Himanshu Chauhan 2024-02-22  76  			rc = -EADDRINUSE;
d3661e2503082cb Himanshu Chauhan 2024-02-22  77  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  78  
d3661e2503082cb Himanshu Chauhan 2024-02-22  79  		case SBI_ERR_FAILURE:
d3661e2503082cb Himanshu Chauhan 2024-02-22  80  			pr_err("%s: Internal sdtrig state error\n",
d3661e2503082cb Himanshu Chauhan 2024-02-22  81  			       __func__);
d3661e2503082cb Himanshu Chauhan 2024-02-22  82  			rc = -ENXIO;
d3661e2503082cb Himanshu Chauhan 2024-02-22  83  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  84  
d3661e2503082cb Himanshu Chauhan 2024-02-22  85  		default:
d3661e2503082cb Himanshu Chauhan 2024-02-22  86  			pr_warn("%s: Unknown error %lu\n", __func__, ret.error);
d3661e2503082cb Himanshu Chauhan 2024-02-22  87  			rc = -ENXIO;
d3661e2503082cb Himanshu Chauhan 2024-02-22  88  			break;
d3661e2503082cb Himanshu Chauhan 2024-02-22  89  		}
d3661e2503082cb Himanshu Chauhan 2024-02-22  90  	}
d3661e2503082cb Himanshu Chauhan 2024-02-22  91  
d3661e2503082cb Himanshu Chauhan 2024-02-22  92  	pr_warn("CPU %d: HW Breakpoint shared memory registered.\n", cpu);
d3661e2503082cb Himanshu Chauhan 2024-02-22  93  
d3661e2503082cb Himanshu Chauhan 2024-02-22 @94  	return rc;
d3661e2503082cb Himanshu Chauhan 2024-02-22  95  }

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


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

end of thread, other threads:[~2025-02-17 14:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-17 14:13 [avpatel:riscv_unaligned_test_skip_v1 53/77] arch/riscv/kernel/hw_breakpoint.c:53 arch_smp_setup_sbi_shmem() warn: unsigned '_x' is never less than zero kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2025-02-17 14:15 Dan Carpenter

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.