Re: [PATCH v2 4/4] dynamic_debug: add jump label support

From: Arnd Bergmann
Date: Fri Jun 10 2016 - 05:53:25 EST


On Friday, May 20, 2016 5:16:36 PM CEST Jason Baron wrote:
> Although dynamic debug is often only used for debug builds, sometimes its
> enabled for production builds as well. Minimize its impact by using jump
> labels. This reduces the text section by 7000+ bytes in the kernel image
> below. It does increase data, but this should only be referenced when
> changing the direction of the branches, and hence usually not in cache.
>
> text data bss dec hex filename
> 8194852 4879776 925696 14000324 d5a0c4 vmlinux.pre
> 8187337 4960224 925696 14073257 d6bda9 vmlinux.post
>
> Signed-off-by: Jason Baron <jbaron@xxxxxxxxxx>
> ---

This causes problems for some of my randconfig builds, when a dynamic
debug call is used inside of an __exit function:

`.exit.text' referenced in section `__jump_table' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o
`.exit.text' referenced in section `__jump_table' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o

Arnd