kernel/module.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/kernel/module.c b/kernel/module.c index a6e43a5806a1..f8cf0bb35ab6 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -1472,7 +1472,11 @@ static ssize_t module_sect_show(struct module_attribute *mattr, { struct module_sect_attr *sattr = container_of(mattr, struct module_sect_attr, mattr); - return sprintf(buf, "0x%pK\n", (void *)sattr->address); + unsigned long addr = 0; + + /* Permissions were checked at open */ + addr = kptr_restrict < 2 ?sattr->address : 0; + return sprintf(buf, "%#lx\n", addr); } static void free_sect_attrs(struct module_sect_attrs *sect_attrs)