Re: [PATCH] fsverity: Fix bpf_get_fsverity_digest() dynptr assumptions
Eric Biggers <[email protected]> Sat, 1 Aug 2026 13:18:30 -0700
| Newsgroups | dev.linux.lists.fsverity,org.kernel.vger.bpf,org.kernel.vger.linux-kernel,org.kernel.vger.stable |
|---|---|
| Message-ID | <20260801201830.GA9537@quark> |
On Sat, Aug 01, 2026 at 07:38:08PM +0200, Kumar Kartikeya Dwivedi wrote: > On Sat Aug 1, 2026 at 7:35 PM CEST, Kumar Kartikeya Dwivedi wrote: > > On Sat Aug 1, 2026 at 7:15 PM CEST, Eric Biggers wrote: > >> On Sat, Aug 01, 2026 at 06:52:45PM +0200, Kumar Kartikeya Dwivedi wrote: > >>> > Also correctly handle sizes over INT_MAX, which previously caused an > >>> > integer overflow and crash. __bpf_dynptr_size() returns a u64. > >>> > > >>> > >>> I guess this occurs when using file dynptrs? Otherwise the size is capped to > >>> DYNPTR_SIZE_MASK. > >> > >> Yes, though it looks like __bpf_dynptr_data_rw() excludes file dynptrs. > >> So this particular issue might be unreachable. Still seems like a good > >> idea to match the u64 type that __bpf_dynptr_size() returns though. > >> > > > > I don't see this in patchwork, so you might have to resend this with [PATCH > > bpf-next] subject again to trigger CI if you want this to go through bpf tree. > > > > Sorry, [PATCH bpf], rather. Sure I can do that. Would it be okay to also make this function return -EOVERFLOW if out_digest_sz is too small, similar to FS_IOC_MEASURE_VERITY, instead of silently truncating? The silent truncation is a footgun. - Eric