Re: [PATCH] IOCTL support for dell-wmi-sysman driver

From: kernel test robot
Date: Tue Feb 09 2021 - 13:54:31 EST


Hi KSR",

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.11-rc7 next-20210125]
[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/Prasanth-KSR/IOCTL-support-for-dell-wmi-sysman-driver/20210209-223343
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 61556703b610a104de324e4f061dc6cf7b218b46
config: i386-randconfig-a002-20210209 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/00141bcb2495c75a902d3070e149760b1050322e
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Prasanth-KSR/IOCTL-support-for-dell-wmi-sysman-driver/20210209-223343
git checkout 00141bcb2495c75a902d3070e149760b1050322e
# save the attached .config to linux build tree
make W=1 ARCH=i386

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All error/warnings (new ones prefixed by >>):

ld: drivers/platform/x86/dell-wmi-sysman/biosattr-interface.o: in function `run_sysman_call':
>> drivers/platform/x86/dell-wmi-sysman/biosattr-interface.c:228: undefined reference to `__udivdi3'
--
>> drivers/platform/x86/dell-wmi-sysman/sysman.c:310:5: warning: no previous prototype for 'validate_acpi_type' [-Wmissing-prototypes]
310 | int validate_acpi_type(union acpi_object *obj, const char *guid_string)
| ^~~~~~~~~~~~~~~~~~
--
>> drivers/platform/x86/dell-wmi-sysman/biosattr-interface.c:218:5: warning: no previous prototype for 'run_sysman_call' [-Wmissing-prototypes]
218 | int run_sysman_call(struct dell_wmi_sysman_buffer *buf)
| ^~~~~~~~~~~~~~~


vim +228 drivers/platform/x86/dell-wmi-sysman/biosattr-interface.c

217
> 218 int run_sysman_call(struct dell_wmi_sysman_buffer *buf)
219 {
220 struct dell_set_password *pass_set_data;
221 struct dell_set_data *in_data;
222 int ret = -ENOIOCTLCMD;
223 char *tmp_system = NULL;
224 char *tmp_admin = NULL;
225
226 switch (buf->command) {
227 case ENUMERATE_ALL:
> 228 buf->count = get_attrs_size() / sizeof(struct dell_attributes_data);
229 get_enumeration_data(buf);
230 get_integer_data(buf);
231 get_string_data(buf);
232 ret = 0;
233 break;
234 case SET_ATTRIBUTES:
235 case SET_DEFAULTS:
236 if (!buf->count)
237 goto out;
238 in_data = (struct dell_set_data *)buf->data;
239 tmp_admin = kstrdup(wmi_priv.current_admin_password, GFP_KERNEL);
240 strlcpy_attr(wmi_priv.current_admin_password, buf->admin_password);
241 ret = set_attributes(in_data, buf->count, buf->command);
242 strlcpy_attr(wmi_priv.current_admin_password, tmp_admin);
243 kfree(tmp_admin);
244 break;
245 case GET_PASS:
246 get_po_data(buf);
247 ret = 0;
248 break;
249 case SET_PASS:
250 pass_set_data = (struct dell_set_password *)buf->data;
251 tmp_admin = kstrdup(wmi_priv.current_admin_password, GFP_KERNEL);
252 strlcpy_attr(wmi_priv.current_admin_password, buf->admin_password);
253
254 if (strcmp(pass_set_data->attribute_name, "System") == 0) {
255 tmp_system = kstrdup(wmi_priv.current_system_password, GFP_KERNEL);
256 strlcpy_attr(wmi_priv.current_system_password,
257 pass_set_data->system_password);
258 }
259
260 ret = set_new_password(pass_set_data->attribute_name, pass_set_data->new_password);
261 strlcpy_attr(wmi_priv.current_admin_password, tmp_admin);
262 kfree(tmp_admin);
263
264 if (tmp_system != NULL) {
265 strlcpy_attr(wmi_priv.current_system_password, tmp_system);
266 kfree(tmp_system);
267 }
268 break;
269 }
270 out:
271 return ret;
272 }
273

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip