[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202202160842.6EYIVsJn-lkp@intel.com>
Date: Wed, 16 Feb 2022 08:09:42 +0800
From: kernel test robot <lkp@...el.com>
To: Armin Wolf <W_Armin@....de>, pali@...nel.org
Cc: llvm@...ts.linux.dev, kbuild-all@...ts.01.org, jdelvare@...e.com,
linux@...ck-us.net, linux-hwmon@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 5/7] hwmon: (dell-smm) Improve assembly code
Hi Armin,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on groeck-staging/hwmon-next]
[also build test ERROR on next-20220215]
[cannot apply to linus/master v5.17-rc4]
[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/0day-ci/linux/commits/Armin-Wolf/hwmon-dell-smm-Miscellaneous-improvements/20220216-031722
base: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
config: i386-randconfig-a004-20220214 (https://download.01.org/0day-ci/archive/20220216/202202160842.6EYIVsJn-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 37f422f4ac31c8b8041c6b62065263314282dab6)
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/0day-ci/linux/commit/e03bd707be4885b219afdfd7a24778fb0a8129e1
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Armin-Wolf/hwmon-dell-smm-Miscellaneous-improvements/20220216-031722
git checkout e03bd707be4885b219afdfd7a24778fb0a8129e1
# 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=i386 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All errors (new ones prefixed by >>):
>> drivers/hwmon/dell-smm-hwmon.c:178:15: error: inline assembly requires more registers than available
asm volatile("out %%al,$0xb2\n\t"
^
1 error generated.
vim +178 drivers/hwmon/dell-smm-hwmon.c
161
162 /*
163 * Call the System Management Mode BIOS. Code provided by Jonathan Buzzard.
164 */
165 static int i8k_smm_func(void *par)
166 {
167 ktime_t calltime = ktime_get();
168 struct smm_regs *regs = par;
169 int eax = regs->eax;
170 int ebx = regs->ebx;
171 long long duration;
172 int rc;
173
174 /* SMM requires CPU 0 */
175 if (smp_processor_id() != 0)
176 return -EBUSY;
177
> 178 asm volatile("out %%al,$0xb2\n\t"
179 "out %%al,$0x84\n"
180 : "=a" (regs->eax),
181 "=b" (regs->ebx),
182 "=c" (regs->ecx),
183 "=d" (regs->edx),
184 "=S" (regs->esi),
185 "=D" (regs->edi),
186 CC_OUT(c) (rc)
187 : "a" (regs->eax),
188 "b" (regs->ebx),
189 "c" (regs->ecx),
190 "d" (regs->edx),
191 "S" (regs->esi),
192 "D" (regs->edi));
193
194 if (rc != 0 || (regs->eax & 0xffff) == 0xffff || regs->eax == eax)
195 rc = -EINVAL;
196
197 duration = ktime_us_delta(ktime_get(), calltime);
198 pr_debug("smm(0x%.4x 0x%.4x) = 0x%.4x (took %7lld usecs)\n", eax, ebx,
199 (rc ? 0xffff : regs->eax & 0xffff), duration);
200
201 return rc;
202 }
203
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Powered by blists - more mailing lists