mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
mshv_vtl: initialize poll file mutex before device registration
mshv_vtl_init() registers /dev/mshv before initializing the poll file
mutex. A concurrent MSHV_SET_POLL_FILE ioctl can therefore attempt to lock
an uninitialized mutex while module initialization is still in progress.
Initialize the file-scope mutex statically so it is ready before the misc
device becomes visible.
Fixes: 7bfe3b8ea6 ("Drivers: hv: Introduce mshv_vtl driver")
Signed-off-by: Jiale Yao <yaojiale02@163.com>
Reviewed-by: Naman Jain <namjain@linux.microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
This commit is contained in:
parent
daa782262e
commit
60de22022f
|
|
@ -95,7 +95,7 @@ union hv_synic_overlay_page_msr {
|
|||
} __packed;
|
||||
};
|
||||
|
||||
static struct mutex mshv_vtl_poll_file_lock;
|
||||
static DEFINE_MUTEX(mshv_vtl_poll_file_lock);
|
||||
static union hv_register_vsm_page_offsets mshv_vsm_page_offsets;
|
||||
static union hv_register_vsm_capabilities mshv_vsm_capabilities;
|
||||
|
||||
|
|
@ -1370,8 +1370,6 @@ static int __init mshv_vtl_init(void)
|
|||
goto free_low;
|
||||
}
|
||||
|
||||
mutex_init(&mshv_vtl_poll_file_lock);
|
||||
|
||||
device_initialize(mem_dev);
|
||||
dev_set_name(mem_dev, "mshv vtl mem dev");
|
||||
ret = device_add(mem_dev);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user