From ceda408c0d1d41094ad125332c6fb1d488e61c0c Mon Sep 17 00:00:00 2001 From: Xion Wang Date: Wed, 27 Aug 2025 10:41:00 +0800 Subject: misc: remove ineffective WARN_ON() check from misc_deregister() The WARN_ON(list_empty(&misc->list)) in misc_deregister() does not catch any practical error conditions: - For statically allocated miscdevice structures, the list pointers are zero-initialized, so list_empty() returns false, not true. - After list_del(), the pointers are set to LIST_POISON1 and LIST_POISON2, so repeated deregistration also fails to trigger the check. Signed-off-by: Xion Wang Link: https://lore.kernel.org/r/20250827024201.21407-2-xion.wang@mediatek.com Signed-off-by: Greg Kroah-Hartman --- drivers/char/misc.c | 3 --- 1 file changed, 3 deletions(-) (limited to 'drivers/char/misc.c') diff --git a/drivers/char/misc.c b/drivers/char/misc.c index a0aae0fc7926..69e8ce02e099 100644 --- a/drivers/char/misc.c +++ b/drivers/char/misc.c @@ -283,9 +283,6 @@ EXPORT_SYMBOL(misc_register); void misc_deregister(struct miscdevice *misc) { - if (WARN_ON(list_empty(&misc->list))) - return; - mutex_lock(&misc_mtx); list_del(&misc->list); device_destroy(&misc_class, MKDEV(MISC_MAJOR, misc->minor)); -- cgit