]> xenbits.xensource.com Git - people/aperard/linux.git/commit
media: dvb-frontends: avoid stack overflow warnings with clang
authorArnd Bergmann <arnd@arndb.de>
Fri, 16 Feb 2024 16:31:44 +0000 (17:31 +0100)
committerHans Verkuil <hverkuil-cisco@xs4all.nl>
Wed, 28 Feb 2024 15:00:33 +0000 (16:00 +0100)
commit7a4cf27d1f0538f779bf31b8c99eda394e277119
tree981502d78820dd81b26439ec28977fd5a1f18289
parent0a0b79ea55de8514e1750884e5fec77f9fdd01ee
media: dvb-frontends: avoid stack overflow warnings with clang

A previous patch worked around a KASAN issue in stv0367, now a similar
problem showed up with clang:

drivers/media/dvb-frontends/stv0367.c:1222:12: error: stack frame size (3624) exceeds limit (2048) in 'stv0367ter_set_frontend' [-Werror,-Wframe-larger-than]
 1214 | static int stv0367ter_set_frontend(struct dvb_frontend *fe)

Rework the stv0367_writereg() function to be simpler and mark both
register access functions as noinline_for_stack so the temporary
i2c_msg structures do not get duplicated on the stack when KASAN_STACK
is enabled.

Fixes: 3cd890dbe2a4 ("media: dvb-frontends: fix i2c access helpers for KASAN")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Justin Stitt <justinstitt@google.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
drivers/media/dvb-frontends/stv0367.c