2022-12-15 17:33:09

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] kmsan: export kmsan_handle_urb

From: Arnd Bergmann <[email protected]>

USB support can be in a loadable module, and this causes a link
failure with KMSAN:

ERROR: modpost: "kmsan_handle_urb" [drivers/usb/core/usbcore.ko] undefined!

Export the symbol so it can be used by this module.

Fixes: 553a80188a5d ("kmsan: handle memory sent to/from USB")
Signed-off-by: Arnd Bergmann <[email protected]>
---
mm/kmsan/hooks.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/mm/kmsan/hooks.c b/mm/kmsan/hooks.c
index 35f6b6e6a908..3807502766a3 100644
--- a/mm/kmsan/hooks.c
+++ b/mm/kmsan/hooks.c
@@ -260,6 +260,7 @@ void kmsan_handle_urb(const struct urb *urb, bool is_out)
urb->transfer_buffer_length,
/*checked*/ false);
}
+EXPORT_SYMBOL_GPL(kmsan_handle_urb);

static void kmsan_handle_dma_page(const void *addr, size_t size,
enum dma_data_direction dir)
--
2.35.1


2022-12-15 17:33:55

by Alexander Potapenko

[permalink] [raw]
Subject: Re: [PATCH] kmsan: export kmsan_handle_urb

On Thu, Dec 15, 2022 at 5:27 PM Arnd Bergmann <[email protected]> wrote:
>
> From: Arnd Bergmann <[email protected]>
>
> USB support can be in a loadable module, and this causes a link
> failure with KMSAN:
>
> ERROR: modpost: "kmsan_handle_urb" [drivers/usb/core/usbcore.ko] undefined!
>
> Export the symbol so it can be used by this module.
>
> Fixes: 553a80188a5d ("kmsan: handle memory sent to/from USB")
> Signed-off-by: Arnd Bergmann <[email protected]>
Reviewed-by: Alexander Potapenko <[email protected]>

> ---
> mm/kmsan/hooks.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/mm/kmsan/hooks.c b/mm/kmsan/hooks.c
> index 35f6b6e6a908..3807502766a3 100644
> --- a/mm/kmsan/hooks.c
> +++ b/mm/kmsan/hooks.c
> @@ -260,6 +260,7 @@ void kmsan_handle_urb(const struct urb *urb, bool is_out)
> urb->transfer_buffer_length,
> /*checked*/ false);
> }
> +EXPORT_SYMBOL_GPL(kmsan_handle_urb);
>
> static void kmsan_handle_dma_page(const void *addr, size_t size,
> enum dma_data_direction dir)
> --
> 2.35.1
>


--
Alexander Potapenko
Software Engineer

Google Germany GmbH
Erika-Mann-Straße, 33
80636 München

Geschäftsführer: Paul Manicle, Liana Sebastian
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg