[android-common:android14-kiwi-6.1 192/192] drivers/mtd/mtdcore.c:955 mtd_otp_nvmem_add() warn: missing unwind goto?
kernel test robot <[email protected]> Tue, 21 Jul 2026 11:35:25 +0800
| Newsgroups | dev.linux.lists.oe-kbuild |
|---|---|
| Message-ID | <[email protected]> |
BCC: [email protected] CC: [email protected] TO: [email protected] tree: https://android.googlesource.com/kernel/common android14-kiwi-6.1 head: b3c531e1677cf574dd7ffc9bfce3a298c74ef2f8 commit: 534fd7770b6ddedc6c6ef6fa724987d3397f9b3b [192/192] mtd: core: Report error if first mtd_otp_size() call fails in mtd_otp_nvmem_add() :::::: branch date: 10 hours ago :::::: commit date: 2 years, 1 month ago config: arm-randconfig-r071-20260716 (https://download.01.org/0day-ci/archive/20260721/[email protected]/config) compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 5c0dfced1adc55429e32b1db08570abd3a219d85) smatch: v0.5.0-9187-g5189e3fb 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 <[email protected]> | Reported-by: Dan Carpenter <[email protected]> | Closes: https://lore.kernel.org/r/[email protected]/ smatch warnings: drivers/mtd/mtdcore.c:955 mtd_otp_nvmem_add() warn: missing unwind goto? vim +955 drivers/mtd/mtdcore.c 4b361cfa862479 Michael Walle 2021-04-24 935 4b361cfa862479 Michael Walle 2021-04-24 936 static int mtd_otp_nvmem_add(struct mtd_info *mtd) 4b361cfa862479 Michael Walle 2021-04-24 937 { 26358f330405af Michael Walle 2023-03-08 938 struct device *dev = mtd->dev.parent; 4b361cfa862479 Michael Walle 2021-04-24 939 struct nvmem_device *nvmem; 4b361cfa862479 Michael Walle 2021-04-24 940 ssize_t size; 4b361cfa862479 Michael Walle 2021-04-24 941 int err; 4b361cfa862479 Michael Walle 2021-04-24 942 4b361cfa862479 Michael Walle 2021-04-24 943 if (mtd->_get_user_prot_info && mtd->_read_user_prot_reg) { 4b361cfa862479 Michael Walle 2021-04-24 944 size = mtd_otp_size(mtd, true); 534fd7770b6dde Aapo Vienamo 2024-03-13 945 if (size < 0) { 534fd7770b6dde Aapo Vienamo 2024-03-13 946 err = size; 534fd7770b6dde Aapo Vienamo 2024-03-13 947 goto err; 534fd7770b6dde Aapo Vienamo 2024-03-13 948 } 4b361cfa862479 Michael Walle 2021-04-24 949 4b361cfa862479 Michael Walle 2021-04-24 950 if (size > 0) { 4b361cfa862479 Michael Walle 2021-04-24 951 nvmem = mtd_otp_nvmem_register(mtd, "user-otp", size, 4b361cfa862479 Michael Walle 2021-04-24 952 mtd_nvmem_user_otp_reg_read); 4b361cfa862479 Michael Walle 2021-04-24 953 if (IS_ERR(nvmem)) { 26358f330405af Michael Walle 2023-03-08 954 dev_err(dev, "Failed to register OTP NVMEM device\n"); 4b361cfa862479 Michael Walle 2021-04-24 @955 return PTR_ERR(nvmem); 4b361cfa862479 Michael Walle 2021-04-24 956 } 4b361cfa862479 Michael Walle 2021-04-24 957 mtd->otp_user_nvmem = nvmem; 4b361cfa862479 Michael Walle 2021-04-24 958 } 4b361cfa862479 Michael Walle 2021-04-24 959 } 4b361cfa862479 Michael Walle 2021-04-24 960 4b361cfa862479 Michael Walle 2021-04-24 961 if (mtd->_get_fact_prot_info && mtd->_read_fact_prot_reg) { 4b361cfa862479 Michael Walle 2021-04-24 962 size = mtd_otp_size(mtd, false); 4b361cfa862479 Michael Walle 2021-04-24 963 if (size < 0) { 4b361cfa862479 Michael Walle 2021-04-24 964 err = size; 4b361cfa862479 Michael Walle 2021-04-24 965 goto err; 4b361cfa862479 Michael Walle 2021-04-24 966 } 4b361cfa862479 Michael Walle 2021-04-24 967 4b361cfa862479 Michael Walle 2021-04-24 968 if (size > 0) { 4b361cfa862479 Michael Walle 2021-04-24 969 nvmem = mtd_otp_nvmem_register(mtd, "factory-otp", size, 4b361cfa862479 Michael Walle 2021-04-24 970 mtd_nvmem_fact_otp_reg_read); 4b361cfa862479 Michael Walle 2021-04-24 971 if (IS_ERR(nvmem)) { 26358f330405af Michael Walle 2023-03-08 972 dev_err(dev, "Failed to register OTP NVMEM device\n"); 4b361cfa862479 Michael Walle 2021-04-24 973 err = PTR_ERR(nvmem); 4b361cfa862479 Michael Walle 2021-04-24 974 goto err; 4b361cfa862479 Michael Walle 2021-04-24 975 } 4b361cfa862479 Michael Walle 2021-04-24 976 mtd->otp_factory_nvmem = nvmem; 4b361cfa862479 Michael Walle 2021-04-24 977 } 4b361cfa862479 Michael Walle 2021-04-24 978 } 4b361cfa862479 Michael Walle 2021-04-24 979 4b361cfa862479 Michael Walle 2021-04-24 980 return 0; 4b361cfa862479 Michael Walle 2021-04-24 981 4b361cfa862479 Michael Walle 2021-04-24 982 err: 4b361cfa862479 Michael Walle 2021-04-24 983 nvmem_unregister(mtd->otp_user_nvmem); 4b361cfa862479 Michael Walle 2021-04-24 984 return err; 4b361cfa862479 Michael Walle 2021-04-24 985 } 4b361cfa862479 Michael Walle 2021-04-24 986 :::::: The code at line 955 was first introduced by commit :::::: 4b361cfa862479fbb1d14ddf01de4dbc7146dcc5 mtd: core: add OTP nvmem provider support :::::: TO: Michael Walle <[email protected]> :::::: CC: Miquel Raynal <[email protected]> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki