]> git.hungrycats.org Git - linux/commit
dlm: add usercopy whitelist to dlm_cb cache
authorZiyi Guo <n7l8m4@u.northwestern.edu>
Mon, 27 Apr 2026 15:59:33 +0000 (11:59 -0400)
committerDavid Teigland <teigland@redhat.com>
Fri, 8 May 2026 13:38:03 +0000 (08:38 -0500)
commitb5314f2c6654a3616fd72777deb1ca766cc50618
tree06cbd6e453e40783b53f82be73e7a59728d27a63
parenta1ed04430f805364eeffe9afacf3ec0d152a8e83
dlm: add usercopy whitelist to dlm_cb cache

The dlm_cb slab cache is created with kmem_cache_create(), which
provides no usercopy whitelist. When a callback carries LVB data,
dlm_user_add_ast() copies the LVB into the inline lvbptr[] array within
the slab-allocated struct dlm_callback and redirects ua->lksb.sb_lvbptr
to point to it. copy_result_to_user() then calls copy_to_user() with
this pointer. With CONFIG_HARDENED_USERCOPY enabled, this triggers
usercopy_abort().

Switch to kmem_cache_create_usercopy() with a whitelist covering the
lvbptr field.

Signed-off-by: Ziyi Guo <n7l8m4@u.northwestern.edu>
Acked-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
fs/dlm/memory.c