> virtio_gpu_alloc_vbufs() creates a kmem_cache with the fixed name > "virtio-gpu-vbufs" for every virtio-gpu device and destroys it from > virtio_gpu_release(), which only runs once the last drm_device > reference is dropped. > > Two live virtio-gpu devices are enough to hit this: the second > kmem_cache_create() call finds the name already taken and > kmem_cache_sanity_check() WARNs. This reproduces at plain boot with > two "-device virtio-gpu-pci" on the QEMU command line, no sysfs > remove/rescan or held-open fd needed. > > kmem_cache of name 'virtio-gpu-vbufs' already exists > WARNING: mm/slab_common.c:111 at __kmem_cache_create_args > Call Trace: > virtio_gpu_alloc_vbufs > [ ... ] > at module init and destroy it at module exit instead of per device. > > Reported-by: [email protected] > Closes: https://syzkaller.appspot.com/bug?extid=1b129b44597a126d2d79 > Signed-off-by: Nguyen Ngoc Thang <[email protected]>
Sashiko has reviewed this patch and found no issues. It looks great! -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=1
