summaryrefslogtreecommitdiff
path: root/Documentation/networking/timestamping/git@git.tavy.me:linux.git
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2026-02-02 10:47:50 +0100
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>2026-03-18 11:21:31 +0100
commit446c6a25a4494e137ec42e886da04e29efc2dc39 (patch)
tree7c20010140bb7387241a716701ebb3ae530354f5 /Documentation/networking/timestamping/git@git.tavy.me:linux.git
parentdaa87ca42652af0d6791ef875e3c4d724b099f22 (diff)
media: rkvdec: reduce excessive stack usage in assemble_hw_pps()
The rkvdec_pps had a large set of bitfields, all of which as misaligned. This causes clang-21 and likely other versions to produce absolutely awful object code and a warning about very large stack usage, on targets without unaligned access: drivers/media/platform/rockchip/rkvdec/rkvdec-vp9.c:966:12: error: stack frame size (1472) exceeds limit (1280) in 'rkvdec_vp9_start' [-Werror,-Wframe-larger-than] Part of the problem here is how all the bitfield accesses are inlined into a function that already has large structures on the stack. Mark set_field_order_cnt() as noinline_for_stack, and split out the following accesses in assemble_hw_pps() into another noinline function, both of which now using around 800 bytes of stack in the same configuration. There is clearly still something wrong with clang here, but splitting it into multiple functions reduces the risk of stack overflow. Fixes: fde24907570d ("media: rkvdec: Add H264 support for the VDPU383 variant") Link: https://godbolt.org/z/acP1eKeq9 Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'Documentation/networking/timestamping/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions