lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 31 Mar 2022 08:14:53 +0800 From: kernel test robot <lkp@...el.com> To: Jean-Marc Eurin <jmeurin@...gle.com>, Miquel Raynal <miquel.raynal@...tlin.com>, Richard Weinberger <richard@....at>, Vignesh Raghavendra <vigneshr@...com> Cc: llvm@...ts.linux.dev, kbuild-all@...ts.01.org, linux-mtd@...ts.infradead.org, linux-kernel@...r.kernel.org, Jean-Marc Eurin <jmeurin@...gle.com> Subject: Re: [PATCH v2 2/2] mtd: mtdoops: Create a header structure for the saved mtdoops. Hi Jean-Marc, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on mtd/mtd/next] [also build test WARNING on mtd/mtd/fixes linux/master linus/master v5.17 next-20220330] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/intel-lab-lkp/linux/commits/Jean-Marc-Eurin/mtd-mtdoops-Structure-the-header-of-the-dumped-oops/20220331-023808 base: https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git mtd/next config: x86_64-randconfig-a014 (https://download.01.org/0day-ci/archive/20220331/202203310819.kOiVSg8W-lkp@intel.com/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 0f6d9501cf49ce02937099350d08f20c4af86f3d) 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 # https://github.com/intel-lab-lkp/linux/commit/0d39801219fd826554caf69402424346799810d5 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Jean-Marc-Eurin/mtd-mtdoops-Structure-the-header-of-the-dumped-oops/20220331-023808 git checkout 0d39801219fd826554caf69402424346799810d5 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/mtd/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@...el.com> All warnings (new ones prefixed by >>): >> drivers/mtd/mtdoops.c:244:39: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat] page * record_size, retlen, sizeof(hdr), ret); ^~~~~~~~~~~ include/linux/printk.h:446:60: note: expanded from macro 'printk' #define printk(fmt, ...) printk_index_wrap(_printk, fmt, ##__VA_ARGS__) ~~~ ^~~~~~~~~~~ include/linux/printk.h:418:19: note: expanded from macro 'printk_index_wrap' _p_func(_fmt, ##__VA_ARGS__); \ ~~~~ ^~~~~~~~~~~ 1 warning generated. vim +244 drivers/mtd/mtdoops.c 225 226 static void find_next_position(struct mtdoops_context *cxt) 227 { 228 struct mtd_info *mtd = cxt->mtd; 229 struct mtdoops_hdr hdr; 230 int ret, page, maxpos = 0; 231 u32 maxcount = 0xffffffff; 232 size_t retlen; 233 234 for (page = 0; page < cxt->oops_pages; page++) { 235 if (mtd_block_isbad(mtd, page * record_size)) 236 continue; 237 /* Assume the page is used */ 238 mark_page_used(cxt, page); 239 ret = mtd_read(mtd, page * record_size, sizeof(hdr), 240 &retlen, (u_char *)&hdr); 241 if (retlen != sizeof(hdr) || 242 (ret < 0 && !mtd_is_bitflip(ret))) { 243 printk(KERN_ERR "mtdoops: read failure at %ld (%td of %d read), err %d\n", > 244 page * record_size, retlen, sizeof(hdr), ret); 245 continue; 246 } 247 248 if (hdr.seq == 0xffffffff && hdr.magic == 0xffffffff) 249 mark_page_unused(cxt, page); 250 if (hdr.seq == 0xffffffff || hdr.magic != MTDOOPS_KERNMSG_MAGIC) 251 continue; 252 if (maxcount == 0xffffffff) { 253 maxcount = hdr.seq; 254 maxpos = page; 255 } else if (hdr.seq < 0x40000000 && maxcount > 0xc0000000) { 256 maxcount = hdr.seq; 257 maxpos = page; 258 } else if (hdr.seq > maxcount && hdr.seq < 0xc0000000) { 259 maxcount = hdr.seq; 260 maxpos = page; 261 } else if (hdr.seq > maxcount && hdr.seq > 0xc0000000 262 && maxcount > 0x80000000) { 263 maxcount = hdr.seq; 264 maxpos = page; 265 } 266 } 267 if (maxcount == 0xffffffff) { 268 cxt->nextpage = cxt->oops_pages - 1; 269 cxt->nextcount = 0; 270 } 271 else { 272 cxt->nextpage = maxpos; 273 cxt->nextcount = maxcount; 274 } 275 276 mtdoops_inc_counter(cxt); 277 } 278 -- 0-DAY CI Kernel Test Service https://01.org/lkp
Powered by blists - more mailing lists