2015-11-16 21:15:10

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] stm: select CONFIG_SRCU

The newly added STM code uses SRCU, but does not ensure that
this code is part of the kernel:

drivers/built-in.o: In function `stm_source_link_show':
include/linux/srcu.h:221: undefined reference to `__srcu_read_lock'
include/linux/srcu.h:238: undefined reference to `__srcu_read_unlock'
drivers/built-in.o: In function `stm_source_link_drop':
include/linux/srcu.h:221: undefined reference to `__srcu_read_lock'
include/linux/srcu.h:238: undefined reference to `__srcu_read_unlock'

This adds a Kconfig 'select' statement like all the other SRCU using
drivers have.

Signed-off-by: Arnd Bergmann <[email protected]>
Fixes: 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace Module devices")
---

diff --git a/drivers/hwtracing/stm/Kconfig b/drivers/hwtracing/stm/Kconfig
index 83e9f591a54b..e7a348807f0c 100644
--- a/drivers/hwtracing/stm/Kconfig
+++ b/drivers/hwtracing/stm/Kconfig
@@ -1,6 +1,7 @@
config STM
tristate "System Trace Module devices"
select CONFIGFS_FS
+ select SRCU
help
A System Trace Module (STM) is a device exporting data in System
Trace Protocol (STP) format as defined by MIPI STP standards.


2015-11-16 22:39:20

by Russell King - ARM Linux

[permalink] [raw]
Subject: Re: [PATCH] stm: select CONFIG_SRCU

On Mon, Nov 16, 2015 at 10:14:35PM +0100, Arnd Bergmann wrote:
> The newly added STM code uses SRCU, but does not ensure that
> this code is part of the kernel:
>
> drivers/built-in.o: In function `stm_source_link_show':
> include/linux/srcu.h:221: undefined reference to `__srcu_read_lock'
> include/linux/srcu.h:238: undefined reference to `__srcu_read_unlock'
> drivers/built-in.o: In function `stm_source_link_drop':
> include/linux/srcu.h:221: undefined reference to `__srcu_read_lock'
> include/linux/srcu.h:238: undefined reference to `__srcu_read_unlock'
>
> This adds a Kconfig 'select' statement like all the other SRCU using
> drivers have.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> Fixes: 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace Module devices")

Related to this, I have to ask why if I answer to N to STM, I'm then
presented with the STM driver options in this file. It's not like
they'll be built, as drivers/Makefile has:

obj-$(CONFIG_STM) += hwtracing/stm/

so it seems rather pointless.. Maybe the other options here should
be wrapped with if STM..endif ?

--
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

2015-11-17 13:50:44

by Alexander Shishkin

[permalink] [raw]
Subject: Re: [PATCH] stm: select CONFIG_SRCU

Arnd Bergmann <[email protected]> writes:

> The newly added STM code uses SRCU, but does not ensure that
> this code is part of the kernel:
>
> drivers/built-in.o: In function `stm_source_link_show':
> include/linux/srcu.h:221: undefined reference to `__srcu_read_lock'
> include/linux/srcu.h:238: undefined reference to `__srcu_read_unlock'
> drivers/built-in.o: In function `stm_source_link_drop':
> include/linux/srcu.h:221: undefined reference to `__srcu_read_lock'
> include/linux/srcu.h:238: undefined reference to `__srcu_read_unlock'
>
> This adds a Kconfig 'select' statement like all the other SRCU using
> drivers have.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> Fixes: 7bd1d4093c2f ("stm class: Introduce an abstraction for System Trace Module devices")

Thanks!