From nobody Fri Dec 19 18:58:12 2025 Received: from mx0b-0064b401.pphosted.com (mx0b-0064b401.pphosted.com [205.220.178.238]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D9E28331A41; Thu, 4 Dec 2025 09:42:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.178.238 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764841352; cv=fail; b=HU2RtCg7bzVbqCi4fAIkg9QOjxOIZ8C8DiVBgL61Cu0eY+bR2njehBkremNLM8hhlDpt66d/w8ngN6RudPWuzTjW+cwBb7b7Fa2hXCfQN3w/itu/rLZIce5TNz7FwcZDyB30EnqP0aMnfAmQf23RRB6VNxprQWd4vBZbyeo44IA= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764841352; c=relaxed/simple; bh=5bGLDBPYwvPdquXTczxCweiM2tmyjCE8mNbK06VZZn4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=j4VXvoiSIBZVCqGYVyzmU2fTw5Cg51ySB7DPoAW6tr8WGANVTWuFIkPf5iPdInCwTcw6cnaZW4lhbKD8cMaWXLHZWw13BKxHkuAXWmYtBOWEpuQ0bmTqYTdbpLKxENrQ4YBcgYI8PDle/UiUekb8lu/P5FpY/RQYXcijdR3rO1A= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=windriver.com; spf=pass smtp.mailfrom=windriver.com; dkim=pass (2048-bit key) header.d=windriver.com header.i=@windriver.com header.b=X2gTYuQo; arc=fail smtp.client-ip=205.220.178.238 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=windriver.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=windriver.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=windriver.com header.i=@windriver.com header.b="X2gTYuQo" Received: from pps.filterd (m0250812.ppops.net [127.0.0.1]) by mx0a-0064b401.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B47HFSU930165; Thu, 4 Dec 2025 09:42:13 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=windriver.com; h=cc:content-transfer-encoding:content-type:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= PPS06212021; bh=44R9tloCFOtnw8dJ3F4gTiXfLszUNAGZO3utCNrQ0z8=; b= X2gTYuQoi5g05cHlI63yd05hxn7Xkn3ytI8zIkRRd/1Tx3KQB3gu63Si56S8ldy6 ROEeyGtIYr5wpq/jHYZL3ojzSfRdQL43c01RNIQcUQCt/GG0ZEBj+mQBGN2Vy52e Ilo6u5XAAWwSg6yWX9daixQ0iRagtvzZMcHQxd0TKXCbM+aTZwGOAz3nVSexkatG 3bJ+MbZo7cuXNsXe4ulk3Ev+0IDFviSoLYUZDIu2xdqmUgZn3BlXevVeNQHft5sX 2YX0M8iOLNPMQDJ6RpZU+BGgg5h8lBX3tjIIcqv715Y8MYDokOsr0WvxSGMtcLok tZfur472v85Jcv531akxQg== Received: from cy7pr03cu001.outbound.protection.outlook.com (mail-westcentralusazon11010029.outbound.protection.outlook.com [40.93.198.29]) by mx0a-0064b401.pphosted.com (PPS) with ESMTPS id 4aqqt6e6n5-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Thu, 04 Dec 2025 09:42:13 +0000 (GMT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=zL1bE7cAxRf4wCEySnADtke4xEjBznUNLAypWZVsyUVYDgV24sXx3v+aSudlj++aDBeMPI4f4Pojsom+zFvYsLc1QvXS4I2rERrAZzA59lScXo4IMpj1MyjJMkBFf2VcCKOBJfbkyC0BmO1Daa9RcqI0DRuYUu1eSvVyr21ZFFVlvTmQFa51ZAF12ytYtWHVtGcrfDeAZSn9I3DOW7fR74q7V6SHOclExyORYxhYCC83uCQJOiSUfVfBv/vgQNP8PlQUIN+3v7O4SSOnv78hzYa/24ed1aLkj+nG3BThfJVOMkZban0MON9keu4fgefx6UZHIcfgTllF0Wv4jUHlkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=44R9tloCFOtnw8dJ3F4gTiXfLszUNAGZO3utCNrQ0z8=; b=o99cgCvB6EUsWJ2EkbGYJm0mpl5DEmyBaNMJwmNZ2V+Ed1aAftTaenbucYlSGmk52qfBL4z2w2c5ObXrHq7vB7FZa32F2jGniBjoSySB650NbEFUOzuwP0gFyb/e09eOJL2u2VMeRdHpdjSCkBbBTkMjAEjld6TJZxPaq43oCjlL8R4HUZvuJ6Cn6l3UVe9P7PomL5bfdGXUO5/r0M3rZpnikqHQY2oUkTnqMk4gFmPQMUBwmYoSiOq+igZ9U6HUnuXZfsA8LUEP6d+psIC3+YYAOM+VUbA7VOJiw0CzpqTYCshwAAHdn1xNPYnV9+agdO4OPmAberTyFbUqN03NMQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=windriver.com; dmarc=pass action=none header.from=windriver.com; dkim=pass header.d=windriver.com; arc=none Received: from DM4PR11MB6550.namprd11.prod.outlook.com (2603:10b6:8:b4::15) by BL3PR11MB6532.namprd11.prod.outlook.com (2603:10b6:208:38f::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9388.9; Thu, 4 Dec 2025 09:42:11 +0000 Received: from DM4PR11MB6550.namprd11.prod.outlook.com ([fe80::9185:ad7f:4c65:a41e]) by DM4PR11MB6550.namprd11.prod.outlook.com ([fe80::9185:ad7f:4c65:a41e%3]) with mapi id 15.20.9388.003; Thu, 4 Dec 2025 09:42:11 +0000 From: Xulin Sun To: nas.chung@chipsnmedia.com, jackson.lee@chipsnmedia.com, mchehab@kernel.org Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, nicolas.dufresne@collabora.com, hverkuil@kernel.org, dafna.hirschfeld@collabora.com, xulin.sun@windriver.com Subject: [PATCH v2 1/3] media: wave5: Fix PM runtime usage count underflow Date: Thu, 4 Dec 2025 17:41:51 +0800 Message-Id: <20251204094153.1530331-2-xulin.sun@windriver.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251204094153.1530331-1-xulin.sun@windriver.com> References: <20251204094153.1530331-1-xulin.sun@windriver.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: KUZPR01CA0014.apcprd01.prod.exchangelabs.com (2603:1096:d10:34::15) To DM4PR11MB6550.namprd11.prod.outlook.com (2603:10b6:8:b4::15) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR11MB6550:EE_|BL3PR11MB6532:EE_ X-MS-Office365-Filtering-Correlation-Id: ccbeaa09-3441-428c-3576-08de33196601 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|52116014|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?vuu8bAQjA+D5c0YBP+ZYzPcWibYEu9LHtAxt7sOuAkRJiJ2aOPYIrdoOMiIf?= =?us-ascii?Q?dFYkcdf8AEw2TEI3iHeVapoC414p78mWSeEnA0fi3zpDS3Cy/GUZE+Sh9ydG?= =?us-ascii?Q?gbsnWtGsdisLrpAib6luyMV4FrzL2ALAvv5Q+qdfR2ObCyuR+givfWnjqLep?= =?us-ascii?Q?vmMZc2Zn7PAuPM29N0x4DTRwvbN2Cf2g8dzfLKxIi7YMqXaIp/oMuZ58gTCE?= =?us-ascii?Q?XmlwnM3Mdt1+IL4B+acRPXjmtQByIAA/fMubNgziO5Evk29zcRLFkbk/D2V5?= =?us-ascii?Q?N2jpySNdzFbteo6JmA2Ack6pVRgQZJbnjlSibFDw8BefI7OcZejXd36jg1T7?= =?us-ascii?Q?zMHxNsovFCQqfPgc+1x+u9ee+o3ejDlzgL5Ld/AwYlre49hkiHNRXmTyCDB6?= =?us-ascii?Q?hea9zRyLIKgoYYRtwlZ9aefUha+lePl0Z7x4irtrQVP5ltZZJcrn10qjv0B3?= =?us-ascii?Q?5/6ivWDm6NrcukOa8ChDcliitLQC+NTSqP1oPO6/DJ02EbITjmThUQDf/oeE?= =?us-ascii?Q?3z0bshZ0S6c7ifRnxoLFDiHNA6CckdP4FtbKCCGyeG/ZPLAPG7YDXCVvpNMp?= =?us-ascii?Q?K0cWTNtytOVjr/kNZRflYZs3k9BsmZnnP9PXaXZj7VCybm/uTp6h23/IpFLe?= =?us-ascii?Q?Dj/OaiKYzCeAg01N1biElrTv2Jkeb9ymKcbU6CMsssXwpiKhqd3Y8DVbZM/Z?= =?us-ascii?Q?Wz4ItJ8QsVMNTY6dhYQEM7/FhCBILcH/nj+X5TUowIHijq0ROTwFaaTjK/lb?= =?us-ascii?Q?sWXU1EKvyOOtKQCOPjVGxsO1n5ttNbppYDcfI+YrRKzXMA583qthI9amWXUF?= =?us-ascii?Q?nXvGNgLoQVYXgOskQcy1Shs8kFDmAARN8ujAWB5lC+rnDWNfCTRha76VQewS?= =?us-ascii?Q?PybpnmSJ4Gq+1pbWDljnQio2LDoeYkm4p8JM4AK0KhQjueLBbqGnyViEF5Ao?= =?us-ascii?Q?a9POxzAbxir8K6zVwrNjQHYofczjVAociNjtKBUDWKnwsFO3O3oq6GG6OM9u?= =?us-ascii?Q?MglaIMls++d8ttzjKkP/kLlXNUnl9zCqvD88qcsknwtihZogCrPEeoNCgeGc?= =?us-ascii?Q?WFgwVW+V9wkx6BBta1mOyVqCujDzc3tmKLaI13zXyRcWqlHf1mPFRbKx5SfW?= =?us-ascii?Q?f5fU4pRWW+VAnbFlb4D13RT3snpPtn948LVoGq0bLQ3RxyUrNbtVQ5I4+DQG?= =?us-ascii?Q?S1xapoRx9GUaXNDgkwFMVwuUKCgrExLm5hr3ob+w3M2xYYiTHL7fBdkqPSiq?= =?us-ascii?Q?5A2UUuiGp3vkf598F/hnT+twq6hvXP3PRyerp4JmhYX2JVZ6+MJGGxkaAx2L?= =?us-ascii?Q?Xsset5gwOiMbRg5KhTY4RHX9Rf9B3G2OjiowKQVWbEj++ur6nBaobBhC4E/+?= =?us-ascii?Q?KgqnQCKZ7eF1Ini8VP7oO3e26MYkEnHTqq/D2JcBIIC0nvJuwKuvtqGpJcHs?= =?us-ascii?Q?g3n5Q/xOzTAaIuZLktDVIhe4IJlTI7TzxJ36nvptwWOyAD4ic6twJ0vosg0I?= =?us-ascii?Q?+hhuJnwU5EssRrqYHAFQK9TL45va8HbzZneF?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB6550.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(52116014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?tZXsZHx8FoWPsAyTdmt1QexaLnIA26CpNjo0/jZmswVVS7lN1BDEgzZLBJbR?= =?us-ascii?Q?U9nImjpumsDTLLTtSWS6zHfgm6jyrQ2XLLZ5DNRXAUidRxjeCLBGo8VWOHxy?= =?us-ascii?Q?js4M5K8EJR87AtS2dIG/BhwmHpojnpJxy7GxynQcs8lnWVTdAQLZiN/L1oo5?= =?us-ascii?Q?frUG1aXI3ge6dj/H+QHL45xytdlGfi8Yfvqu+ThmS8gRLaqZaR/Pujmrqo5c?= =?us-ascii?Q?JNFTkj0U74q9+u1dfJaHsMT+wSaHrOXXKOf6n8yzfU2E85+1CSltXnyNoncg?= =?us-ascii?Q?RU8xltxHR/lrEQMGSs6Qae995F469TMWx57MKia8e7gMWOFq8o7i/uQb+fom?= =?us-ascii?Q?Y6J5jhJssLIzAbU57+AfPvXXom1al+B/iJUIQzJeXlCJQ50HhHhhwK0xqsgC?= =?us-ascii?Q?jGctjBz1emxg1EZCv5nLFjIgwddvbejQc88ZzHRb2IZZlpH9+xDyW46zlajX?= =?us-ascii?Q?oyuiXQVfFzi4GB3HaYpoeTJYAablQv/bvLYGRidUwbtokv3heHjtaC/unktp?= =?us-ascii?Q?q5fkspIg3Ou8G3EkxeJbtdpmLCO5KrMUvUiE5bMaPmpT08oSWzewWM4SSB3K?= =?us-ascii?Q?w5jPEcK8GlG4dJI/IBhTEeg8v07fbdHooIOCsugXBE32ckC68w1i0fK18pYn?= =?us-ascii?Q?TznMiDUUsA9KmLLYqGqqnId+ClnTRFyFmK2BXXNmqaBVPZ5GxwNvfHk91vg5?= =?us-ascii?Q?uAsSaukDkZR/a7VBu+3CWx/vurpr46xEMDGICqqlKqaD+DgI/QgYSjb/hsul?= =?us-ascii?Q?/+mJ9uv2HZjE+cf+iaBPaQrvVyxiwsoifiyuECQDrZn+GHldo0fJOq+PPWQn?= =?us-ascii?Q?CplyoiMaavt5k4+H0k6SJCCEascrBqL+cIpgINIlRam7KzejICQB2kaIh9RW?= =?us-ascii?Q?8OBJSRYH/1h8xnzkIl6YEhS0uLtb/2J9E1i9+fY+jNXUoH5kP3kLaPZImSgb?= =?us-ascii?Q?jNA0ynGeWusWzB6WbZx1Qdc7gm08c/8r+VzkI8BNj5V7/Xc76sFivdCnYqyM?= =?us-ascii?Q?KQ98nw3PydeygR5tbxrms7AaIl97uHmeKVTISMLBJ0EoYJW84pVJVHbGhNoe?= =?us-ascii?Q?4wk3BgcaIfTuNJHBld5nTCDLrv7+Y4wtqdbBtiLdxih9kLsWGljuqyTEwj3O?= =?us-ascii?Q?icZUx1e816q9r/kQwPQeq8BBfzbxfO1RWiNsG8KB6n99FOneIj1HskAUz5/B?= =?us-ascii?Q?EL2DW4w3PxY3TD4GQrWUqZEiZX8udQev7M54Pi/AYJ/UuPvBqwQ4yYGl9CrJ?= =?us-ascii?Q?sOvoN80b1WHyLawCcTilR1Le9dFYXHQfDaYj7sobe0vxiPVI7mJIEH2hi6OI?= =?us-ascii?Q?g+cE8CCzbRewT1QA48f9O4hqnOOp+UfH9kdzUKo+wPRGTDFHaHI4MD2PrfG/?= =?us-ascii?Q?cdQpRm6L7Erwl6LF5BiOeavJUA/y3tOfZUHOoh9qwV96a8qLrXFDwG2CccLv?= =?us-ascii?Q?c/eKnkRPjU2KHQnYayQmNsHWnGKI2h2if3PTA1xxO2CAPpYPYneZzHvkMTP+?= =?us-ascii?Q?G6OMJuNjYyL5PCgMg+vCu5CFe110VIUckcZMox9HmU+rlkjnlOIpLI4LB3yV?= =?us-ascii?Q?DVsxCSedxzgVuPXZvrNwOqe7S9GGsbpiVWIRPL//WHasGUEw6FGBqiywGMye?= =?us-ascii?Q?ow=3D=3D?= X-OriginatorOrg: windriver.com X-MS-Exchange-CrossTenant-Network-Message-Id: ccbeaa09-3441-428c-3576-08de33196601 X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB6550.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Dec 2025 09:42:11.3335 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 8ddb2873-a1ad-4a18-ae4e-4644631433be X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 4v4wsPNwigb/PEYPlO0DJy5V8Lmz1q/Otq0Zm5p9Pb1pZ+uUnrfTwI++K1TDYvNhiUAAFS/H0KhYYViulbsLmg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6532 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjA0MDA3OCBTYWx0ZWRfX86hzk7/z1h9p vRfOTr1Ilco4qNHELzvTSbXl20hIEVkAU7Py+0KXOlv1RMA62XzYZ6b+Wand/UC6L3tB9r6LxZz lYX7wgyK5IYS4Q+dz/qGbtsPgU/K4RNkIVPQi58qo2J0/Ou5yPLi7lFo5dDZdQWwtRD8/y9RCWP 81Nx9VVuppJ5SIVzyo1PZmF804zXmz/Xb9R//Be2lc2O8dUc5tCdS3QpXYKg7BAuFJzRabu6o3u YYWWscNdm9dFQYhlei2Syed82GUUsnpBJy4vM3Gu+FNRS3iCOmXYCqOwMfBDrhXbalBJQFGqDXC Qvp7IMBfGQ/4sr5ySKtzrNejWUFTTePZV4Kj8HrD+h+HPBkbRQe/nYuApgDBPeM617jkMj0pxFR qCXedXxvKYL5iGj6NmRqhtWrYryn/g== X-Authority-Analysis: v=2.4 cv=Adq83nXG c=1 sm=1 tr=0 ts=69315775 cx=c_pps a=KMP5/9L46olBb+slh8+hsQ==:117 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=t7CeM3EgAAAA:8 a=QX4gbG5DAAAA:8 a=7HQsZtMFZjd_7bt7GncA:9 a=FdTzh2GWekK77mhwV6Dw:22 a=AbAUZ8qAyYyZVLSsDulk:22 X-Proofpoint-ORIG-GUID: -ItpYf0bp1VmmiG0NeKKXC8GXrgvr2b4 X-Proofpoint-GUID: -ItpYf0bp1VmmiG0NeKKXC8GXrgvr2b4 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-04_02,2025-12-03_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 priorityscore=1501 adultscore=0 bulkscore=0 clxscore=1011 impostorscore=0 phishscore=0 malwarescore=0 suspectscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512040078 Content-Type: text/plain; charset="utf-8" Replace pm_runtime_put_sync() with pm_runtime_dont_use_autosuspend() in the remove path to properly pair with pm_runtime_use_autosuspend() from probe. This allows pm_runtime_disable() to handle reference count cleanup correctly regardless of current suspend state. The driver calls pm_runtime_put_sync() unconditionally in remove, but the device may already be suspended due to autosuspend configured in probe. When autosuspend has already suspended the device, the usage count is 0, and pm_runtime_put_sync() decrements it to -1. This causes the following warning on module unload: ------------[ cut here ]------------ WARNING: CPU: 1 PID: 963 at kernel/kthread.c:1430 kthread_destroy_worker+0x84/0x98 ... vdec 30210000.video-codec: Runtime PM usage count underflow! Fixes: 9707a6254a8a ("media: chips-media: wave5: Add the v4l2 layer") Signed-off-by: Xulin Sun Reviewed-by: Nicolas Dufresne --- drivers/media/platform/chips-media/wave5/wave5-vpu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/media/platform/chips-media/wave5/wave5-vpu.c b/drivers= /media/platform/chips-media/wave5/wave5-vpu.c index e1715d3f43b0..23aa3ab51a0e 100644 --- a/drivers/media/platform/chips-media/wave5/wave5-vpu.c +++ b/drivers/media/platform/chips-media/wave5/wave5-vpu.c @@ -356,7 +356,7 @@ static void wave5_vpu_remove(struct platform_device *pd= ev) hrtimer_cancel(&dev->hrtimer); } =20 - pm_runtime_put_sync(&pdev->dev); + pm_runtime_dont_use_autosuspend(&pdev->dev); pm_runtime_disable(&pdev->dev); =20 mutex_destroy(&dev->dev_lock); --=20 2.49.1 From nobody Fri Dec 19 18:58:12 2025 Received: from mx0b-0064b401.pphosted.com (mx0b-0064b401.pphosted.com [205.220.178.238]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3B5BC3074AA; Thu, 4 Dec 2025 09:42:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.178.238 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764841353; cv=fail; b=TmwmhxYt4E5Y5uhvS5cXDqpn0mMrG3JGQ4YjJtqbDcbS4DUA5ED1sSfRw8ZCCsHSt6Rc5oUgrpteeE46hbKYeEbf5W/zC8ojXI8B58FEtoDKpOVCh6wkoIK7gMaHrJXUovRQ8b1JYCloZk9xYlQ9OeZ/HqYMOFf6Y73wZzVUAQQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764841353; c=relaxed/simple; bh=L0tvxS2kK0671TgiFKXq1jyi7rdGt/6tesWqTDpeoXQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=Jc25nSjFA8H6QeaxGBsDhrzUI36o49wAGkmFMRV6f08zyg9fUKKC5RDPk70sfB528WWkyBZ0w4I8FraYisfuMGFPXuE02obSRdTRPEKZS3p1uo0hPzZpiu46i3DPBPV7sFGB0gaQKgT2oKSolKXVnffAjgDzoIbOcdg+D0gZUMc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=windriver.com; spf=pass smtp.mailfrom=windriver.com; dkim=pass (2048-bit key) header.d=windriver.com header.i=@windriver.com header.b=crF7ntTp; arc=fail smtp.client-ip=205.220.178.238 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=windriver.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=windriver.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=windriver.com header.i=@windriver.com header.b="crF7ntTp" Received: from pps.filterd (m0250812.ppops.net [127.0.0.1]) by mx0a-0064b401.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B4763x5911639; Thu, 4 Dec 2025 09:42:16 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=windriver.com; h=cc:content-transfer-encoding:content-type:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= PPS06212021; bh=gPxdZrBVW2OFp+v5QXYvZ8qz8X23iqmcaCUVuYux7iU=; b= crF7ntTpJkHzzgD1FpMPp7dmi6NZghfysjoIPfEvUiI6teGn/rJIDzwCgQ2cHQkv TSIrNFZMsVhuOgaNWLrK5jF0z4asihfETGYaQFYFgtaAdY+h6JGVgbccqpW8IhEM 1+InZjxF6l4U8LNIpRjPvYvBD7kIhODDJpkz8DIEaf+nPR4h0tk1YhaysqNsvd+t 3coKVNzxrPLVcI3p97fLrcYrN4JRheyvd8I73Tt/16MDuHhxnvMALbOzsABIpn0N Qp0bQeWE11EchZ+YhlkqBvsg6qL8PjWP5g8ru9m85GH77j26XDhyXAG1Pk3KQVQi myk+oP0YLvEXtJ2z/f9buA== Received: from cy7pr03cu001.outbound.protection.outlook.com (mail-westcentralusazon11010028.outbound.protection.outlook.com [40.93.198.28]) by mx0a-0064b401.pphosted.com (PPS) with ESMTPS id 4aqqt6e6n6-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Thu, 04 Dec 2025 09:42:16 +0000 (GMT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qXhxpry+HpdEPcAkZ2E5PdvrrLKBhCzwtx75HSxOMBg3UQ0KpTvCcjnYIvx+Bia7BKXOsCSQIsP17ArWPba+hl1kyFAe4fIOkUtXIJq2bQbBdXvLZ9l5bNzIhRWIP+svJw1+Y6yn/DF1fqQAJxFdGag4J3yGI752u3Idjx5+UJiFkb43zde68+Cp7/6q7j0ZGKayhRaJCe8x7lEy5juNeEklDobnuP/FOWKubpJQoiMQr8qglNQHHBdQdgSQtfCrnPnFRmx7zjwJrdHzbHLyIkeuCugsiu1tQ2FQWky88bY1n0T5JHqgO5a8hrIyBssZTYfBsF9XTnpLWQRWNU6SyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=gPxdZrBVW2OFp+v5QXYvZ8qz8X23iqmcaCUVuYux7iU=; b=vXEV868EljlfzygURHuUucDVU/qja2TPnC+0WzHVN4Tve1TC9k0cROvI/AvK5+OrBo7m29wngR9Wjot4cD0MTHeAb37015bcO11BtoztfG9TwkrhhcWZmXwDdOXlXvCD305wBWRbL5bkFjw1cBwlUm939PqsbxwyXDAMTHEgIUKRPc44Ita1NsXSGluxklEQpGKimt0AOfbkY3Nm4fVtCVEtGT8BtSBZZ/j89va7SuZAWN49iE0YXVAZSykB5h0Bg1+/9I+T4JsHjW1WF09Pv1/wDCBLw/pmxFMIiCqs6J95GrCzaWhrDeXcHIaIoSM566M7v4z+A6WM/n/KWcCdcg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=windriver.com; dmarc=pass action=none header.from=windriver.com; dkim=pass header.d=windriver.com; arc=none Received: from DM4PR11MB6550.namprd11.prod.outlook.com (2603:10b6:8:b4::15) by BL3PR11MB6532.namprd11.prod.outlook.com (2603:10b6:208:38f::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9388.9; Thu, 4 Dec 2025 09:42:15 +0000 Received: from DM4PR11MB6550.namprd11.prod.outlook.com ([fe80::9185:ad7f:4c65:a41e]) by DM4PR11MB6550.namprd11.prod.outlook.com ([fe80::9185:ad7f:4c65:a41e%3]) with mapi id 15.20.9388.003; Thu, 4 Dec 2025 09:42:14 +0000 From: Xulin Sun To: nas.chung@chipsnmedia.com, jackson.lee@chipsnmedia.com, mchehab@kernel.org Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, nicolas.dufresne@collabora.com, hverkuil@kernel.org, dafna.hirschfeld@collabora.com, xulin.sun@windriver.com Subject: [PATCH v2 2/3] media: wave5: Fix kthread worker destruction in polling mode Date: Thu, 4 Dec 2025 17:41:52 +0800 Message-Id: <20251204094153.1530331-3-xulin.sun@windriver.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251204094153.1530331-1-xulin.sun@windriver.com> References: <20251204094153.1530331-1-xulin.sun@windriver.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: KUZPR01CA0014.apcprd01.prod.exchangelabs.com (2603:1096:d10:34::15) To DM4PR11MB6550.namprd11.prod.outlook.com (2603:10b6:8:b4::15) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR11MB6550:EE_|BL3PR11MB6532:EE_ X-MS-Office365-Filtering-Correlation-Id: 5b0a86cb-0951-4e42-96b4-08de33196821 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|52116014|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?X3EwgO2loB2qah+heQ9Dy9v/YtL+GBnvJuzM73HUfbqwhKsi1+L6+k/CHY94?= =?us-ascii?Q?3XOr/QVBQh/uFmWPZkTfV5hqSkgHKAo5bYESKOg12RNHz990/YxPHwdrJC0R?= =?us-ascii?Q?sm/0/4Utmrh9N5Mex9YGQSm04jY0Vw9Qdhj0BNjeSOT/xI4Fzx3cKU7oEsLG?= =?us-ascii?Q?QW7JIfPnqYB3O1uG8iXDM+h9pMoxIFOC6svUCxCn0Hk3YPrYBuj1L9J3l3zA?= =?us-ascii?Q?mdq1jaXlX4h+bzVuYROjZ2ECgW3pIn0RwC58Luva3r9R4DXGkNVHC38c+oym?= =?us-ascii?Q?sXuAhTko05KdmyUvrUw8EOdqmkaOpoc3U7jdbAROCeclvlV4glBQy5DYCbc0?= =?us-ascii?Q?MhBzANgl9xWjvFOHuSjPoaPM7bKgRqT9JNog8KdHKYBLDX4DsJ0xePqTtL41?= =?us-ascii?Q?WYu2AeWCDnEkIJcFRgIUbbhyMDNKbFuiHhH7RK25xrhFflCedAo0sDT1AIs+?= =?us-ascii?Q?eRCzrtw0cgY8a9nb8/9Q92MMApSt0COEwJCthWC9CwVo/Q1LoXkvvEAtLwV3?= =?us-ascii?Q?B2idqSV3tL/Z3H1qR4eEW+YEKBCYVZ1lQpbtCEjKTiKTsadMVda4/6E1g7Zb?= =?us-ascii?Q?3vYHOMA2k3diAZCJeqxZI+SYNPcS+8EAcWCtusyOg2f6dVFkpjxDfUboZqtg?= =?us-ascii?Q?YsZVjA8C3a7uL3DO0l0SWVpebre6He/YEYw0wtrwb7sBsE5OPTdQWmzgKpe/?= =?us-ascii?Q?FK6Y6mRVs/QhdbI3kur2jXMDIrCG5RVH+UO/Niv9t6JKWnRJ9kryt3jObPJn?= =?us-ascii?Q?O/wlJe81xhALojbSKSvBWACUzr3nUjuoQ4TClu1ViuujcrbjW5fN/0TBuPNj?= =?us-ascii?Q?hAllKwHI/BwN5+jju+yHrvBw85dKSg+M8oxyMLz3U48Few/ZrvAAlBb/9LCU?= =?us-ascii?Q?MNDxiwyzZyWWWeUr4SH9thRmvk8zAtxL332SJ7uqtqQmzNRFMkFVhYjAIOml?= =?us-ascii?Q?B4uGtDwh0qh2GB9vOlbZTHgCP3sSwzyvteI7h+yIR+sbxnH8dXlzjXxjZlht?= =?us-ascii?Q?qwweM9knEicosOQ9M7BQ0RvrSdfA/fsQ9Rg/5XzsCFAzTcStpw5p/h4QRilO?= =?us-ascii?Q?tA7ZdQUlx7Sz7xTTfedv+L37gIDenbpgTYwrYAzAI5asoTh3fMqdcYKh2DEO?= =?us-ascii?Q?TlW+XaG2JownEwjlSz65wYqcjE/0xQjPm0r97LB2yfScls7BKeqtKu0c6ufm?= =?us-ascii?Q?2F8A1zyzUsPC4VJQ1h9kjjJ/77M35q2UvjXZSFJ+Ub8Du4W6sNk9IUWNw9A2?= =?us-ascii?Q?tXLPLXumS60UQG3K7he7X3/YQSzUbgQGrQxrSbGlZ6HdiHoKk4R4ZVQnDGPn?= =?us-ascii?Q?G7L1odlfOWiZhVQw8kgyANjz7FjKq+cqME5DZDws5rKr50Yyqn0QR01NJi9/?= =?us-ascii?Q?EawYGBgEXqYK2cUMrrQGb7TMG6id95p0D84IzzUDfjQVjHtuVTdwwAgd6Igy?= =?us-ascii?Q?o7IR7W7oHEFpOffl0rdIA9MLCph7lAoy6n7Or9s99OW+T7hkLGq+gMq9kc5c?= =?us-ascii?Q?p6drc9W7EGphgn0sOxRiXnj0objJRks38iBY?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB6550.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(52116014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?jjP2wR931Pq+gxl8tVpE1wTBNzuiX/BBwG0mNfIGvCvN89tvGeY7BIVM0e0u?= =?us-ascii?Q?PDBK44iUOOAr1iGGL3th1KYyWabI5WrmfwlSU/xlKCSoclbcUoDj8OujYE3e?= =?us-ascii?Q?i2S2T2etubpSlxbaTVwqDafX2eIcZTk47AYYsD0/iN2azNq/QDCugRjc8TRq?= =?us-ascii?Q?p/saL8xKDaQcEHfEBQ4Y0ZxC8a0D/COFMdYSnEy1UW/TPcsr8LBbyZNBwd/V?= =?us-ascii?Q?cg7kHhf2PK1hVC18oEuJc2f3WkXXY+3AT9GNTxolQDPjhV+9hWy1XWZ2PmR0?= =?us-ascii?Q?X6eBSZIqTXQ/oTq/umbHEOHjYi/c/2D5mOzRJyyGlK5oEjycf5ZL8OWY1D2L?= =?us-ascii?Q?ubOXOOtsOAmY3UcB7trMywgz1y4BTjYy4KXmMf9RCL41DeNUDq4QQy3qK6QD?= =?us-ascii?Q?84zvUpb8DQkSI080wWoS6X3pbmjd3672YAKeXS+UdfIF4MbO5QApiFoGMoiT?= =?us-ascii?Q?3OtQrHla6e53cfXh+KhWw0HLkjZwS2OPYuqijK6QTLkgyRVcF1D2piPoqe50?= =?us-ascii?Q?WGsyIikEbLNY0pqXAzVdGzqgApCbpZMbQ4Ng6030ZH7RYefRFtY94HVDEKTq?= =?us-ascii?Q?PhkHGnanZflbnotR8MX9nQz6UJhhKfXijThwMJELX8EUO1QvAeE/u8gKY2kZ?= =?us-ascii?Q?pxYnMU1bMx6kdRQSCHjcvLn90a2CAnabPT+mXH2cmyeTiiLBkXybSrWqSYY0?= =?us-ascii?Q?ezFHbkCX44eDq5oVT5+GreyH80e7qzIdFC+8SzR9YTJnAsFrTJkAUu2VpCpi?= =?us-ascii?Q?Nflh9r3foqaNvbpjyZHPlN9WpIbjZ63zusrn8iNEuzdQMtsFWTpjPTttTT6F?= =?us-ascii?Q?RQGlZ2sXzWw5cSZAvBTCQZ+iAhop6lrtU+UzJke4+fr2N6HhFB+0zZGLO361?= =?us-ascii?Q?TVbDYRffYhKgLZ/SLfWyjCV+WLUVmhclTcFd3i5vcHHugA3aUw+yYZJ7JaRm?= =?us-ascii?Q?a6MsKfCxxrz6b72QS6tPeVTK5b4zv9xD1LNi1D9caec4bPkA7Wwlr/CwwJBi?= =?us-ascii?Q?YxVPP8tiPW1fL4o3xae6S56YeSzuIA/9wvBlEPG4LdZuEj8AUiUnjbApqF6J?= =?us-ascii?Q?ENuhZatFtcKUXj8o4RYhU6k/YDT/buYdMzo8AQeWaRra2iNXt8z9kywYOKE3?= =?us-ascii?Q?GIXmzq7i+u65sda6KOGIFfhTMP3rA28kxtusxHyH5OWgKnQPesHoLIhhcMk7?= =?us-ascii?Q?j0qht1cqP4+DIJGZ0k/m7yU+1lY8alRA478Azc90rbnTGkwKpy0dYrVRsplI?= =?us-ascii?Q?y1JD08PWMZ2MVrZK7eWkJxWsvLsNVHcRkIK+vMJt23bpTHz9MwymxPY/SL0k?= =?us-ascii?Q?TWjZP33Vbrapj/SufhFMC/WiG9ih8gf6AsVe0y8xIU2yLUKEPZCDIFhflM6B?= =?us-ascii?Q?4KaOraSF0BrecEkWPDUhOVGAuqOtQXbeBiGgUDYjtCmNMW5oxwySxuQo8FzU?= =?us-ascii?Q?KI1MFa70sCe8HOEEJ2Mc1ZsHfLNPzXO3SZlnPVPrDiYr7doxoPBYsmfDddFv?= =?us-ascii?Q?K0/eRhWy/eqiPmv6ruu5+fuNNC5TkX54tAjfuZnMMA+PwzZEnVWo6bVMiY8g?= =?us-ascii?Q?V+YWkRzybyYhZ7sCsVNGCmcRF9zdIN8xyV2Z+3GBY8i516iWR95wey1W7FNd?= =?us-ascii?Q?zg=3D=3D?= X-OriginatorOrg: windriver.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5b0a86cb-0951-4e42-96b4-08de33196821 X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB6550.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Dec 2025 09:42:14.9161 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 8ddb2873-a1ad-4a18-ae4e-4644631433be X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ETkxFF9hoOQKrFIMwEl9ahZPQQJXtUtvNwgsIqttckQGN4rWvlT4XmZ4T8YC4AcTeSStf8ls0SCOYOQ1ihax4A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6532 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjA0MDA3OCBTYWx0ZWRfXx17ysSuhqT9C cpUvuYZejVZIdNztaiEjRBAR10N/UrH+mQBouI9hdN+wdZMBUTHEftpGz005bmQGYkFOEO9grhr DUQ2E/Ik+QZaOBQOkrt3MmIYjy+K655HC5b6P/cQEIsXsh6uhAi17327FXxARoJobXuql/vWVA9 MAKwaxPZCAgDh96FVig26XkRzBhMeAmNgi3mpt650ZMFnqXhb0iAGGJ87ycMFRABLdmYgsJ0GG/ mTFjCPPuUqzIQj9dp4e/bJyZ14YqCTREwN3o6yY66T1/AKJ8EMf6+JAr8A1F8yq8um/Eeen8NOE aHY+pxZROsnZNioVAlmUDMOBrm1zsTdhkYm+M/2UCLVuHKVg7EW4wcPh7D7l4HbokDdvIBhY/gm nQQkeOvq78w2QMbC+mG+5ZOtc3LoGA== X-Authority-Analysis: v=2.4 cv=Adq83nXG c=1 sm=1 tr=0 ts=69315778 cx=c_pps a=W+OgQPQm/Pc/5TU0+uq6wA==:117 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=t7CeM3EgAAAA:8 a=QX4gbG5DAAAA:8 a=jr-MYnPyfkfEh3xPMYoA:9 a=FdTzh2GWekK77mhwV6Dw:22 a=AbAUZ8qAyYyZVLSsDulk:22 X-Proofpoint-ORIG-GUID: M4QgwG7Ilik2aVwiZOyClrtfKLmbVd-g X-Proofpoint-GUID: M4QgwG7Ilik2aVwiZOyClrtfKLmbVd-g X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-04_02,2025-12-03_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 priorityscore=1501 adultscore=0 bulkscore=0 clxscore=1015 impostorscore=0 phishscore=0 malwarescore=0 suspectscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512040078 Content-Type: text/plain; charset="utf-8" Fix the cleanup order in polling mode (irq < 0) to prevent kernel warnings during module removal. Cancel the hrtimer before destroying the kthread worker to ensure work queues are empty. In polling mode, the driver uses hrtimer to periodically trigger wave5_vpu_timer_callback() which queues work via kthread_queue_work(). The kthread_destroy_worker() function validates that both work queues are empty with WARN_ON(!list_empty(&worker->work_list)) and WARN_ON(!list_empty(&worker->delayed_work_list)). The original code called kthread_destroy_worker() before hrtimer_cancel(), creating a race condition where the timer could fire during worker destruction and queue new work, triggering the WARN_ON. This causes the following warning on every module unload in polling mode: ------------[ cut here ]------------ WARNING: CPU: 2 PID: 1034 at kernel/kthread.c:1430 kthread_destroy_worker+0x84/0x98 Modules linked in: wave5(-) rpmsg_ctrl rpmsg_char ... Call trace: kthread_destroy_worker+0x84/0x98 wave5_vpu_remove+0xc8/0xe0 [wave5] platform_remove+0x30/0x58 ... ---[ end trace 0000000000000000 ]--- Fixes: ed7276ed2fd0 ("media: chips-media: wave5: Add hrtimer based polling = support") Signed-off-by: Xulin Sun Reviewed-by: Nicolas Dufresne --- drivers/media/platform/chips-media/wave5/wave5-vpu.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/media/platform/chips-media/wave5/wave5-vpu.c b/drivers= /media/platform/chips-media/wave5/wave5-vpu.c index 23aa3ab51a0e..0bcd48df49d0 100644 --- a/drivers/media/platform/chips-media/wave5/wave5-vpu.c +++ b/drivers/media/platform/chips-media/wave5/wave5-vpu.c @@ -352,8 +352,9 @@ static void wave5_vpu_remove(struct platform_device *pd= ev) struct vpu_device *dev =3D dev_get_drvdata(&pdev->dev); =20 if (dev->irq < 0) { - kthread_destroy_worker(dev->worker); hrtimer_cancel(&dev->hrtimer); + kthread_cancel_work_sync(&dev->work); + kthread_destroy_worker(dev->worker); } =20 pm_runtime_dont_use_autosuspend(&pdev->dev); --=20 2.49.1 From nobody Fri Dec 19 18:58:12 2025 Received: from mx0b-0064b401.pphosted.com (mx0b-0064b401.pphosted.com [205.220.178.238]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C00BB335556; Thu, 4 Dec 2025 09:42:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.178.238 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764841356; cv=fail; b=KiCe7qBk6eXzVt6na2ZSJ6w6vE8GVrD55SoyBGLDWHjH7zbRBTx/pltrI7AFQakbKz/c1DQ9hjQup1AepKVr1Df5FfqFL4VE7a4ZZGRP1MyJBe1BdgbUD37nnrhMT0vnzuUbR2UAK0/uU9Ccy0bVpfyPv3sUwW1nC63nCjaZp2Y= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764841356; c=relaxed/simple; bh=vL1wORwbNGe5iQEFziFN9tO75d40K+xZELBRPTUph/k=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=PIqp+t5cBSSc3sym+ZbXWcaSyS9VZQ76Q5nWw1tEUFtuv7ENSamMmMpTPgsJHq2kn8VY9ZhQOQBbqIP/35P/OVOAQF+bN0RO806vsZqAIjzjO2m/qzHlB3A7dUE0hftKpX7Vp+5NejV0qaO61EGO3vl8u91DidmiTwdk9cRlfxs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=windriver.com; spf=pass smtp.mailfrom=windriver.com; dkim=pass (2048-bit key) header.d=windriver.com header.i=@windriver.com header.b=AMGoywiZ; arc=fail smtp.client-ip=205.220.178.238 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=windriver.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=windriver.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=windriver.com header.i=@windriver.com header.b="AMGoywiZ" Received: from pps.filterd (m0250812.ppops.net [127.0.0.1]) by mx0a-0064b401.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B4763x6911639; Thu, 4 Dec 2025 09:42:20 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=windriver.com; h=cc:content-transfer-encoding:content-type:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= PPS06212021; bh=tPeZudnBXTTYkF93sbqE6hxqeY/nW4J40y4iHo58/FY=; b= AMGoywiZvV5/05ki83Tx/X4ssf+6X1JG1ZweLHrmyAs2YjR8FdpnozDiNFG7ia7R RGlfAv98jqzla+CPoK9lrjm9qApn2IOGLXj48ix6BN8ZrBtBVS9BbDLMIcfILFqu U4Y2J2Gy6hY9YuXChgCtCUZTV8DDI1TS36CUDXddtzlxSdcQ8GvPuk07o5ree98D 8ifL6uwORCWWHpiT9Ur6gSsb9+W9RdA40oFTJx5R6HFgjYk/5ClH3Onz+MMt0c1A /aUJwqDvwDQjfkLJ2Hw4hfItZiAnO2BuJUntrZmD4G1XQHBZatD5O0EkAdybczjP zyFlhuVLuD29lUyJJ/TtYg== Received: from bn1pr04cu002.outbound.protection.outlook.com (mail-eastus2azon11010021.outbound.protection.outlook.com [52.101.56.21]) by mx0a-0064b401.pphosted.com (PPS) with ESMTPS id 4aqqt6e6n9-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Thu, 04 Dec 2025 09:42:19 +0000 (GMT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GsTcuuKrS+PmX2uAyMal8k8nGYIMDkabKZpOJoRb7lfgF56tzhpILvCeftqr5nc113RekYD5kI6CmT+w8o9Z8xOFD2rTPJS+ev0+l39BlL0ZyNoFVjXPXSswwVtZzT3Om+O55UoPnm2CR9HCuDr2SW7tYqyvJnTFvdcYVfhFTec2ljorc3bUjGTP8yLrsGuTDFr2bNC1bMzz4v1rXVcUTbIKVPMTWaypko/pHzROlKfmHxqSMmrIf9TAlnPtXBCe61EF1Lqig6ySVTPmNwTZbbEG/S8jIbA2tm01upgupTJLvQT8wZqB+lES4z8o65fN7+ZykCCCiUyLSEHlVSoJPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=tPeZudnBXTTYkF93sbqE6hxqeY/nW4J40y4iHo58/FY=; b=QY4sP4qgfjnqIdd3NrCpFj92cyqqto7PApDy4I5GN3kLH8uxihp8X9M0Rc+blLpb0oNOpGgCrqD54xmk7elXIUrlj3ODeCOlP8elKRDxhx/IeXUV/HQORV3xC2lLO/JE1f8ZizkhVgV7GgcCjto8Hi39h1pugT5YuqPSyTGdZ9lEsmQNvD7d+QSk2+SQm5s+YDHERvC8vPf7PKSoTh91qx31OVRSS5vWEKxpgzsrzl/xvs1slSaJPblxYOf7s/8tpx9uz/yrGLojMsLivcNgdgid9+A8GP5tmjr6FkwSuxELzMngAY0OJNx5iouQyJ1P/R5sfOCesbHieSrBP1mymA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=windriver.com; dmarc=pass action=none header.from=windriver.com; dkim=pass header.d=windriver.com; arc=none Received: from DM4PR11MB6550.namprd11.prod.outlook.com (2603:10b6:8:b4::15) by BL3PR11MB6532.namprd11.prod.outlook.com (2603:10b6:208:38f::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9388.9; Thu, 4 Dec 2025 09:42:18 +0000 Received: from DM4PR11MB6550.namprd11.prod.outlook.com ([fe80::9185:ad7f:4c65:a41e]) by DM4PR11MB6550.namprd11.prod.outlook.com ([fe80::9185:ad7f:4c65:a41e%3]) with mapi id 15.20.9388.003; Thu, 4 Dec 2025 09:42:18 +0000 From: Xulin Sun To: nas.chung@chipsnmedia.com, jackson.lee@chipsnmedia.com, mchehab@kernel.org Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, nicolas.dufresne@collabora.com, hverkuil@kernel.org, dafna.hirschfeld@collabora.com, xulin.sun@windriver.com Subject: [PATCH v2 3/3] media: wave5: Fix device cleanup order to prevent kernel panic Date: Thu, 4 Dec 2025 17:41:53 +0800 Message-Id: <20251204094153.1530331-4-xulin.sun@windriver.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251204094153.1530331-1-xulin.sun@windriver.com> References: <20251204094153.1530331-1-xulin.sun@windriver.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: KUZPR01CA0014.apcprd01.prod.exchangelabs.com (2603:1096:d10:34::15) To DM4PR11MB6550.namprd11.prod.outlook.com (2603:10b6:8:b4::15) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR11MB6550:EE_|BL3PR11MB6532:EE_ X-MS-Office365-Filtering-Correlation-Id: 3921b3e7-68c2-4ac6-7180-08de33196a3f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|52116014|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?U7K5PqpO3M2xyepfgD/any4oWx5pi/7z7KktcgpmsnUqGRa3bEE98LE6fhm3?= =?us-ascii?Q?HhxVMH1TW7yFpqCsTJtyP+fuavQXBmlutcqQaiydEJVDAtw1XdAA9guhqvKa?= =?us-ascii?Q?+e+YDdiY9CqgYK9HQM21id72NvsLTiJRJ9RnaQEwmkQtpKGF3U4Kld58J3+s?= =?us-ascii?Q?lWm/HQtvBshrInwFeQOcAc3uGK+BKdH4wy+2nSEanRM0+WojHe/p+6MN1FZH?= =?us-ascii?Q?XE9EiqjsSPd88PQU4ECZzS6UhDUB0ESb714OpuojyhALWM0y7uuun/fyzZLa?= =?us-ascii?Q?FNW5Y5HE7+vkqZjtbnd6bG3IHEoAiR4onee5x9KO/k2zKYGr9QB6O1lweRhU?= =?us-ascii?Q?4O/Rs15GAKqwnTixhaCF7qkyCo4DXE/Ds2qYe15GO7pvJ//YyFf8ibXDa5yt?= =?us-ascii?Q?kKbRagZyfXUChcqZIrBG2vWYLFMkR9eahYORFyNsKRhK7ifE2p8DHl7UB9Za?= =?us-ascii?Q?K+7vW21eJDj4aJuxZ8MYpWe6JhLHIwNVtAQZsAzhErbUm0bjfcfTOhLkjpv6?= =?us-ascii?Q?Gdfle4h6iVNGwTfO4fDaI5WWZORxGFkvHp3QU70c/ZCLp3KtSIhjod+9Kkhm?= =?us-ascii?Q?fyJg0sC5T+8TrEnoCdXdVGQ9098O0Q6/myfwwtDEeJ5k8giRohkZr4sRJU0D?= =?us-ascii?Q?tFmMjQ+qYB9Rw2pRHXvnGVVuUj/wv+fUGGb95KZLzLl7edXIp7MwV2PXrszz?= =?us-ascii?Q?0RNJlJqtbWpWCzrrYa+LMS5hxbFinNKsn9xNaMrlNQGKMIjKw6jWcyLChFgG?= =?us-ascii?Q?Ka8gO8XgMZIUkxdalZDhweCMz3mKNwI9MeZS5ydTGkBolt49XQ+qi06fXVcg?= =?us-ascii?Q?5aIVvjrif1rLdXfrDV3/qVktCCKRb/ZOenEDPBD2jKMGVngbe24deZegApMD?= =?us-ascii?Q?vicTOjxWBvl3FrukjnHA7qgCqDKpBHo9ucGmvCxp8Cefw/NdJayGwGCtFcyA?= =?us-ascii?Q?SResE3bbp17YtkDmtC9vRcLgah6W+G9d61WvzzeIAR/quM0jNz99VSXMDZXb?= =?us-ascii?Q?cNrZ3BkTcYcRYPU88lDzopWTHsZHJwRf8eYAB9rNQmC2WY3+AzxHdgedsRES?= =?us-ascii?Q?VVvnG7YU9rfe66I1j3cDKwaOstW1vlqCBI54WXEuKYZqbOOd7hJO7JuNM7lR?= =?us-ascii?Q?nDL8c53XWzywPVUd3lGuziC3gDk4dUQtxyFiHyz507hmY4Oj32snNS2W8GSO?= =?us-ascii?Q?kePUriLTjD/xj+htM59VxYeZysPDsJPASOsgTzzAq8CjyrV+mFMOvXdLbgoH?= =?us-ascii?Q?bnl0+IXM68sH3kycTgD5FVvB8nZaco4HJ08AHf+UxSWTkDV8xafhe37FIKfh?= =?us-ascii?Q?kbbE1NNnu5k4UMCGOGaUEMMDYieALaE45WAtunMM9FCmVs2DbAZhgH329ijd?= =?us-ascii?Q?GsNT4zFbSD5mIoHwu4lKtwmsPp4qBnuj1X83JSlEhiN0GwQVpav6zM5DA+e9?= =?us-ascii?Q?H9etzjjK/vrOD210a5b3vAzexi3hv0cR+BNGER2AbeE/4QGYYFlYvaAdq6fP?= =?us-ascii?Q?mz7RJSOO43PMvgDF2Wb64oAGUL1O9+Vs4Z13?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB6550.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(52116014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?SDxWeoKxePzEYwupAefCW9T31QoAwgP8Wqnt/6tvlsHApkCCd4dWUff/QNia?= =?us-ascii?Q?PVPfxHeYZVkSu2BCzmbExvxkwAotdqpLaKXagNILyR9jjXUOPGg6SQUCNYDM?= =?us-ascii?Q?UcBExOEcYJXti+oY+/wu5rhv5Ys+v7pmJ2hjvJtUIKsZVm274pxIVDKpWq+/?= =?us-ascii?Q?Uo/5nz66UWYU/3fUOwcjjnEwXLj8XBLq30ZDyiHLjHYXom0iY8XbC5zLv3Iq?= =?us-ascii?Q?5NtB7qE0iLPcYpMLyWQJPwUOAzr22tLvInxi89DGz0m69ThlqxMRabs2r6vU?= =?us-ascii?Q?jXc8D9Q5HzBG8QMbTkNZnokPAweVeweFLqyvZF68gYDJWnhtqFsj9PPHAERF?= =?us-ascii?Q?wGGiJabO0Q84oINIh+0T8BT0tEMklZziA5cAaoDHskZg088Q0QRlzzyQJRum?= =?us-ascii?Q?6tklRBt3t2jFWB4oZJheuI4j5LU19U5EFpW/XEiGQm9X4uWgYY7aYpmYy0Eb?= =?us-ascii?Q?EWcmGo2LDzR8lcvg/rVxORP1wazl6/Vojn2vSuXkUbXhuu2ImGsbQZvpCuwV?= =?us-ascii?Q?zub33YJJUbX4AlgGf9ky58AsmRC0W4ADq8vMAWEBe7FLgiVy6QSDhVK7+UNa?= =?us-ascii?Q?oCrSXXqVl0DNlGsw244f5yXyXiNXhB4+EUekRsfL6U9cUCYrDLMzCxuFpMHl?= =?us-ascii?Q?L/XqMFt5yRkK3ycOsF7mfhb1DKyJE3LK8+X5P+mgNgC8rSsaLakaz8fZR9fT?= =?us-ascii?Q?UcL+x69/DZ9DTilXO+EndaNw/G+bCPzTioMcsrb3OA8FAF3pIOAaxyMuKgMa?= =?us-ascii?Q?1U2IYGcsFasZLZZhOo28JdGP9/+t134Y0lqpGe5rcgicBqk8wv1lnvCkgUZU?= =?us-ascii?Q?GwN8S3/XB3UoO5Lpub1vMWHapja5lK2Af13sib9GT2NjE+Vk3WlHhU1xLqz3?= =?us-ascii?Q?B8d8C1WQZl9xT2DaP12yf+pHPeZUUCMlV8bEDKEUiRbg5c36iq+OSM0J8V/i?= =?us-ascii?Q?xddPfscfnTJq6mhFz1I9DprtqLBtWGyLhB2mQjw7sEC23ggSef6A/aYUirs6?= =?us-ascii?Q?1buK2S6IYAxPwmJw4jWc4XEp0rb19tde/Pc0BTz4Q4G7dDPCr2SyscocbfGd?= =?us-ascii?Q?9j/1Lw1Y2+u6Cr8nEAitl9CKlFF1jK3Immb83F6ataoIyYMbYmsfZHvZzV0D?= =?us-ascii?Q?xIZY1Z0Q+7jTMMBj8pG8WgFe61xA9g+QLmPehaGJt0UiSucVgfTZUyQJ2lrJ?= =?us-ascii?Q?AG1lX4VPMhSn+y++riwOFDwq2BuCi3ZtvUCJ2dh1et+miMAYFzr32zbvQwDm?= =?us-ascii?Q?wN4ZZ+AQYJS7ENawRdxLbL3MGL3G8opyFcw/Cu+rudHxN9hrIkmwkl8cvgiR?= =?us-ascii?Q?t5A9esKyI5giJlHADwNA/Txb9ggQUNM2cihderEGLthVsx3at1gb7ltagM4c?= =?us-ascii?Q?yZLvoHyAaZ5tTpr65i99E7lIc/gmlme2dMdq8A1Vf51OFa2AprwEij5jagnY?= =?us-ascii?Q?NIC8tXP0VxbUqJkqwAyrjxrhc2Jt910K8jMDxFG7jYlLXbe186yKVK34eOdh?= =?us-ascii?Q?P2d3CCjfEpZevZdbYqq5wNMLfPuMHhgksAaLWkfe40N22jH8yl9BHrhQL5em?= =?us-ascii?Q?izDMl0xD+Ybgchlvmr65fyhv/WSCi7Gkw/GklRpoa3XONoze8A1jgu6NgneG?= =?us-ascii?Q?9A=3D=3D?= X-OriginatorOrg: windriver.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3921b3e7-68c2-4ac6-7180-08de33196a3f X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB6550.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Dec 2025 09:42:18.4565 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 8ddb2873-a1ad-4a18-ae4e-4644631433be X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OkhXOswbBURUlpFKmomVP8j5/cygKCsHkxJMGYWF7gI8XkZGw5Tm28H23XUExFTjDAyOuJ2mp1mY8TAZB0vI/w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6532 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjA0MDA3OCBTYWx0ZWRfX30f/9fntGP1G BZ/WFQfa4mEe+HyFwMemTMGC6x54bWqnzMmtBpBJ2cOEFh1W68BhFtxRmwClfkfy7bTcDUdV2lR 1Q+2MaiwdcAH3LlPfWJhx3N4lgKp33drWQ8f1NAUnqWd+iAKVQ7ZBfCxlZKIZeBtFBXWS0UGP/x vJ7yNCoaqZHmYUrbeGEb93bUOoaLkrlEhKpi9HNyPT8RxRNBW6uxvb6KeSpUFLlp9ARTT4bJEgV c3WWpLrBzw69ITZc1Z9/zz9q8VZqTHmiL/FqAtL2be1Tk4N8OlQyb+6uZT5UUwuyt95rToNVIfx 2O1GiWCyBJDKE3GnJKSIwVRvg5G93l6gKBP7Li75NXUmAnLWQ7I+kd+kSLVvw7Gg74YyCVx4MzH HEDPD1IXEHN8M1JZ4YYkeOU5TwLsFg== X-Authority-Analysis: v=2.4 cv=Adq83nXG c=1 sm=1 tr=0 ts=6931577c cx=c_pps a=KMYGTuEAqwcz7NPofZ4ZnA==:117 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=VkNPw1HP01LnGYTKEx00:22 a=t7CeM3EgAAAA:8 a=QX4gbG5DAAAA:8 a=sSg5oxgHRQSn7EJo2AsA:9 a=FdTzh2GWekK77mhwV6Dw:22 a=AbAUZ8qAyYyZVLSsDulk:22 X-Proofpoint-ORIG-GUID: Sf4fXOpciFzksudMoH6KZtgWH-_kBpcu X-Proofpoint-GUID: Sf4fXOpciFzksudMoH6KZtgWH-_kBpcu X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-04_02,2025-12-03_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 priorityscore=1501 adultscore=0 bulkscore=0 clxscore=1015 impostorscore=0 phishscore=0 malwarescore=0 suspectscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512040078 Content-Type: text/plain; charset="utf-8" Move video device unregistration to the beginning of the remove function to ensure all video operations are stopped before cleaning up the worker thread and disabling PM runtime. This prevents hardware register access after the device has been powered down. In polling mode, the hrtimer periodically triggers wave5_vpu_timer_callback() which queues work to the kthread worker. The worker executes wave5_vpu_irq_work_fn() which reads hardware registers via wave5_vdi_read_register(). The original cleanup order disabled PM runtime and powered down hardware before unregistering video devices. When autosuspend triggers and powers off the hardware, the video devices are still registered and the worker thread can still be triggered by the hrtimer, causing it to attempt reading registers from powered-off hardware. This results in a bus error (synchronous external abort) and kernel panic. This causes random kernel panics during encoding operations: Internal error: synchronous external abort: 0000000096000010 [#1] PREEMPT SMP Modules linked in: wave5 rpmsg_ctrl rpmsg_char ... CPU: 0 UID: 0 PID: 1520 Comm: vpu_irq_thread Tainted: G M W pc : wave5_vdi_read_register+0x10/0x38 [wave5] lr : wave5_vpu_irq_work_fn+0x28/0x60 [wave5] Call trace: wave5_vdi_read_register+0x10/0x38 [wave5] kthread_worker_fn+0xd8/0x238 kthread+0x104/0x120 ret_from_fork+0x10/0x20 Code: aa1e03e9 d503201f f9416800 8b214000 (b9400000) ---[ end trace 0000000000000000 ]--- Kernel panic - not syncing: synchronous external abort: Fatal exception Fixes: 9707a6254a8a ("media: chips-media: wave5: Add the v4l2 layer") Signed-off-by: Xulin Sun Reviewed-by: Nicolas Dufresne --- drivers/media/platform/chips-media/wave5/wave5-vpu.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/media/platform/chips-media/wave5/wave5-vpu.c b/drivers= /media/platform/chips-media/wave5/wave5-vpu.c index 0bcd48df49d0..77d6c934d0b9 100644 --- a/drivers/media/platform/chips-media/wave5/wave5-vpu.c +++ b/drivers/media/platform/chips-media/wave5/wave5-vpu.c @@ -351,6 +351,10 @@ static void wave5_vpu_remove(struct platform_device *p= dev) { struct vpu_device *dev =3D dev_get_drvdata(&pdev->dev); =20 + wave5_vpu_enc_unregister_device(dev); + wave5_vpu_dec_unregister_device(dev); + v4l2_device_unregister(&dev->v4l2_dev); + if (dev->irq < 0) { hrtimer_cancel(&dev->hrtimer); kthread_cancel_work_sync(&dev->work); @@ -364,9 +368,6 @@ static void wave5_vpu_remove(struct platform_device *pd= ev) mutex_destroy(&dev->hw_lock); reset_control_assert(dev->resets); clk_bulk_disable_unprepare(dev->num_clks, dev->clks); - wave5_vpu_enc_unregister_device(dev); - wave5_vpu_dec_unregister_device(dev); - v4l2_device_unregister(&dev->v4l2_dev); wave5_vdi_release(&pdev->dev); ida_destroy(&dev->inst_ida); } --=20 2.49.1