[PATCH 0/2] platform/x86: hp-bioscfg: fix OOB reads and buffer desynchronization in buffer parsers

From: Muhammad Bilal

Date: Mon Aug 24 2026 - 18:56:47 EST


This series addresses out-of-bounds reads and buffer accounting issues
in hp-bioscfg's WMI binary buffer parsers (hp_get_integer_from_buffer()
and hp_get_string_from_buffer()):

1. Patch 1 fixes an out-of-bounds read and buffer size desynchronization
in hp_get_integer_from_buffer() when reading integers from unaligned
buffer addresses where PTR_ALIGN introduces padding.

2. Patch 2 fixes two heap out-of-bounds reads (passing byte count instead
of wchar_t count to utf16s_to_utf8s(), and loop bound expansion in the
escape-counting loop), a 2-byte under-allocation check, and buffer
pointer/length desynchronization in hp_get_string_from_buffer().

Tested on HP hardware with CONFIG_KASAN=y.

Muhammad Bilal (2):
platform/x86: hp-bioscfg: fix OOB read in hp_get_integer_from_buffer() on unaligned input
platform/x86: hp-bioscfg: fix heap OOB read and buffer desync in hp_get_string_from_buffer()

drivers/platform/x86/hp/hp-bioscfg/bioscfg.c | 36 +++++++++++---------
1 file changed, 20 insertions(+), 16 deletions(-)

--
2.43.0