Check the type of seg on line 267.
julia
---------- Forwarded message ---------- Date: Thu, 26 Jan 2017 05:24:40 +0800 From: kbuild test robot fengguang.wu@intel.com To: kbuild@01.org Cc: Julia Lawall julia.lawall@lip6.fr Subject: Re: [v3 PATCH 05/10] x86/insn-kernel: Add support to resolve 16-bit addressing encodings
In-Reply-To: 20170125202353.101059-6-ricardo.neri-calderon@linux.intel.com
Hi Ricardo,
[auto build test WARNING on tip/auto-latest] [also build test WARNING on v4.10-rc5 next-20170125] [cannot apply to tip/x86/core] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Ricardo-Neri/x86-Enable-User-Mode-I... :::::: branch date: 51 minutes ago :::::: commit date: 51 minutes ago
arch/x86/lib/insn-kernel.c:267:6-9: WARNING: Unsigned expression compared with zero: seg < 0
git remote add linux-review https://github.com/0day-ci/linux git remote update linux-review git checkout 574de0de238ef30c816985006f02f7a1dbba92aa vim +267 arch/x86/lib/insn-kernel.c
574de0de Ricardo Neri 2017-01-25 251 addr = (seg << 4) + regs_get_register(regs, addr_offset1); 574de0de Ricardo Neri 2017-01-25 252 } else { 574de0de Ricardo Neri 2017-01-25 253 ret = get_reg_offset_16(insn, regs, &addr_offset1, 574de0de Ricardo Neri 2017-01-25 254 &addr_offset2); 574de0de Ricardo Neri 2017-01-25 255 if (ret < 0) 574de0de Ricardo Neri 2017-01-25 256 goto out_err; 574de0de Ricardo Neri 2017-01-25 257 /* 574de0de Ricardo Neri 2017-01-25 258 * Don't fail on invalid offset values. They might be invalid 574de0de Ricardo Neri 2017-01-25 259 * because they are not supported. Instead, use them in the 574de0de Ricardo Neri 2017-01-25 260 * calculation only if they contain a valid value. 574de0de Ricardo Neri 2017-01-25 261 */ 574de0de Ricardo Neri 2017-01-25 262 if (addr_offset1 >= 0) 574de0de Ricardo Neri 2017-01-25 263 addr1 = regs_get_register(regs, addr_offset1); 574de0de Ricardo Neri 2017-01-25 264 if (addr_offset2 >= 0) 574de0de Ricardo Neri 2017-01-25 265 addr2 = regs_get_register(regs, addr_offset2); 574de0de Ricardo Neri 2017-01-25 266 seg = __get_segment_selector_16(regs, insn, addr_offset1); 574de0de Ricardo Neri 2017-01-25 @267 if (seg < 0) 574de0de Ricardo Neri 2017-01-25 268 goto out_err; 574de0de Ricardo Neri 2017-01-25 269 addr = (seg << 4) + addr1 + addr2; 574de0de Ricardo Neri 2017-01-25 270 } 574de0de Ricardo Neri 2017-01-25 271 addr += insn->displacement.value; 574de0de Ricardo Neri 2017-01-25 272 574de0de Ricardo Neri 2017-01-25 273 return (void __user *)addr; 574de0de Ricardo Neri 2017-01-25 274 out_err: 574de0de Ricardo Neri 2017-01-25 275 return (void __user *)-1;
--- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
On Wed, 2017-01-25 at 22:49 +0100, Julia Lawall wrote:
Check the type of seg on line 267.
Ah! I missed that. It makes sense. I will fix this issue.
Thanks and BR, Ricardo
julia
---------- Forwarded message ---------- Date: Thu, 26 Jan 2017 05:24:40 +0800 From: kbuild test robot fengguang.wu@intel.com To: kbuild@01.org Cc: Julia Lawall julia.lawall@lip6.fr Subject: Re: [v3 PATCH 05/10] x86/insn-kernel: Add support to resolve 16-bit addressing encodings
In-Reply-To: 20170125202353.101059-6-ricardo.neri-calderon@linux.intel.com
Hi Ricardo,
[auto build test WARNING on tip/auto-latest] [also build test WARNING on v4.10-rc5 next-20170125] [cannot apply to tip/x86/core] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Ricardo-Neri/x86-Enable-User-Mode-I... :::::: branch date: 51 minutes ago :::::: commit date: 51 minutes ago
arch/x86/lib/insn-kernel.c:267:6-9: WARNING: Unsigned expression compared with zero: seg < 0
git remote add linux-review https://github.com/0day-ci/linux git remote update linux-review git checkout 574de0de238ef30c816985006f02f7a1dbba92aa vim +267 arch/x86/lib/insn-kernel.c
574de0de Ricardo Neri 2017-01-25 251 addr = (seg << 4) + regs_get_register(regs, addr_offset1); 574de0de Ricardo Neri 2017-01-25 252 } else { 574de0de Ricardo Neri 2017-01-25 253 ret = get_reg_offset_16(insn, regs, &addr_offset1, 574de0de Ricardo Neri 2017-01-25 254 &addr_offset2); 574de0de Ricardo Neri 2017-01-25 255 if (ret < 0) 574de0de Ricardo Neri 2017-01-25 256 goto out_err; 574de0de Ricardo Neri 2017-01-25 257 /* 574de0de Ricardo Neri 2017-01-25 258 * Don't fail on invalid offset values. They might be invalid 574de0de Ricardo Neri 2017-01-25 259 * because they are not supported. Instead, use them in the 574de0de Ricardo Neri 2017-01-25 260 * calculation only if they contain a valid value. 574de0de Ricardo Neri 2017-01-25 261 */ 574de0de Ricardo Neri 2017-01-25 262 if (addr_offset1 >= 0) 574de0de Ricardo Neri 2017-01-25 263 addr1 = regs_get_register(regs, addr_offset1); 574de0de Ricardo Neri 2017-01-25 264 if (addr_offset2 >= 0) 574de0de Ricardo Neri 2017-01-25 265 addr2 = regs_get_register(regs, addr_offset2); 574de0de Ricardo Neri 2017-01-25 266 seg = __get_segment_selector_16(regs, insn, addr_offset1); 574de0de Ricardo Neri 2017-01-25 @267 if (seg < 0) 574de0de Ricardo Neri 2017-01-25 268 goto out_err; 574de0de Ricardo Neri 2017-01-25 269 addr = (seg << 4) + addr1 + addr2; 574de0de Ricardo Neri 2017-01-25 270 } 574de0de Ricardo Neri 2017-01-25 271 addr += insn->displacement.value; 574de0de Ricardo Neri 2017-01-25 272 574de0de Ricardo Neri 2017-01-25 273 return (void __user *)addr; 574de0de Ricardo Neri 2017-01-25 274 out_err: 574de0de Ricardo Neri 2017-01-25 275 return (void __user *)-1;
0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation