Re: [PATCH] fsverity: Fix bpf_get_fsverity_digest() dynptr assumptions

From: Song Liu

Date: Sat Aug 01 2026 - 17:03:06 EST


On Thu, Jul 30, 2026 at 5:43 PM Eric Biggers <ebiggers@xxxxxxxxxx> wrote:
>
> The BPF verifier and the dynptr abstraction ensure that the memory space
> referenced by a dynptr remains valid. They do not, however, provide any
> guarantee that the contents of the memory are stable. kfuncs are
> expected to remain memory-safe even if concurrent modifications occur.
>
> bpf_get_fsverity_digest() didn't follow that: it could crash if
> arg->digest_size was concurrently modified.
>
> Fix that by using the known-good value hash_alg->digest_size instead.
>
> Also correctly handle sizes over INT_MAX, which previously caused an
> integer overflow and crash. __bpf_dynptr_size() returns a u64.
>
> Fixes: 67814c00de31 ("bpf, fsverity: Add kfunc bpf_get_fsverity_digest")
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx>

Looks good to me. Thanks for the fix!

Acked-by: Song Liu <song@xxxxxxxxxx>