lkml.org 
[lkml]   [2017]   [Feb]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 3/3] Make vmbus register arguments read-only
Hi Eddie,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.10-rc8 next-20170217]
[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/Eddie-Kovsky/provide-check-for-ro_after_init-memory-sections/20170218-141040
config: i386-randconfig-x007-201707 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

All warnings (new ones prefixed by >>):

drivers/hv/vmbus_drv.c: In function '__vmbus_driver_register':
>> drivers/hv/vmbus_drv.c:1056:26: warning: passing argument 1 of 'kernel_ro_address' makes integer from pointer without a cast [-Wint-conversion]
ret = kernel_ro_address(&hv_driver);
^
In file included from include/linux/list.h:8:0,
from include/linux/module.h:9,
from drivers/hv/vmbus_drv.c:26:
include/linux/kernel.h:446:12: note: expected 'long unsigned int' but argument is of type 'struct hv_driver **'
extern int kernel_ro_address(unsigned long addr);
^~~~~~~~~~~~~~~~~
drivers/hv/vmbus_drv.c: In function 'vmbus_device_register':
drivers/hv/vmbus_drv.c:1127:26: warning: passing argument 1 of 'kernel_ro_address' makes integer from pointer without a cast [-Wint-conversion]
ret = kernel_ro_address(&child_device_obj);
^
In file included from include/linux/list.h:8:0,
from include/linux/module.h:9,
from drivers/hv/vmbus_drv.c:26:
include/linux/kernel.h:446:12: note: expected 'long unsigned int' but argument is of type 'struct hv_device **'
extern int kernel_ro_address(unsigned long addr);
^~~~~~~~~~~~~~~~~

vim +/kernel_ro_address +1056 drivers/hv/vmbus_drv.c

1040 *
1041 * Registers the given driver with Linux through the 'driver_register()' call
1042 * and sets up the hyper-v vmbus handling for this driver.
1043 * It will return the state of the 'driver_register()' call.
1044 *
1045 */
1046 int __vmbus_driver_register(struct hv_driver *hv_driver, struct module *owner, const char *mod_name)
1047 {
1048 int ret;
1049
1050 pr_info("registering driver %s\n", hv_driver->name);
1051
1052 ret = vmbus_exists();
1053 if (ret < 0)
1054 return ret;
1055
> 1056 ret = kernel_ro_address(&hv_driver);
1057 if (ret < 1)
1058 pr_err("Module address is not read-only.");
1059 return ret;
1060
1061 hv_driver->driver.name = hv_driver->name;
1062 hv_driver->driver.owner = owner;
1063 hv_driver->driver.mod_name = mod_name;
1064 hv_driver->driver.bus = &hv_bus;

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[unhandled content-type:application/gzip]
\
 
 \ /
  Last update: 2017-02-18 07:31    [W:0.220 / U:0.288 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site