From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from out-174.mta0.migadu.com (out-174.mta0.migadu.com [91.218.175.174]) (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 19CC115E97 for ; Tue, 30 Dec 2025 14:24:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.218.175.174 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767104687; cv=none; b=SnBR51WLj7SM0RJ1uMB9G0I3OKbO3T8v39K45X8FX542jWtgSklYldogVsIRuVncYou4yVO6lrH9+uuwnhhGoXaLClWrLIOMCtv6Wc8CObBmBKv/qd8p3atz6yytLO2MZkkCtCbL9pgrS25XeYB25XuInlewau62CG8FE2pBKEY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767104687; c=relaxed/simple; bh=x++IhoTjScyV0yoeXb1JfmHuJ2pFI6tBJiLmy2ZTTLs=; h=Mime-Version:Content-Type:Date:Message-Id:Cc:Subject:From:To: References:In-Reply-To; b=Kbt9b/v22NAqnftTQooCjyaghJFVTlSP1ISQtLMQmSVjsm1VO+bmOZM2cKhtl06nuiRdRdFA3xNjdEiSpivxOWqkUfM4dBDpBQELi4dwvWRQJFO0IGYaH/gCjLPJrGVT4WQ37H4bGfAiLLmF06U9b6f97G+USdpMkB7k72csl6I= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=cknow-tech.com; spf=pass smtp.mailfrom=cknow-tech.com; dkim=pass (2048-bit key) header.d=cknow-tech.com header.i=@cknow-tech.com header.b=U1e62Vp3; arc=none smtp.client-ip=91.218.175.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=cknow-tech.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=cknow-tech.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=cknow-tech.com header.i=@cknow-tech.com header.b="U1e62Vp3" Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cknow-tech.com; s=key1; t=1767104681; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=F65DHavl98UgPL/qkMsKtPU/1fyxHhQMwzJ1DLVv1GQ=; b=U1e62Vp3WHgQQdDGIJddA/nZXacR7Q2CqdL918d/KN8//XhURHQPLLoFgXlYzbJsgrSVqE 89sULcLC/HWWZBmeZzmmb2wYSf4rbcsj25GzsFo/ghBqm52ZKeJJbHCD8CvR4zJjpnqkkD iy738VjmOPycJMn9y4jvJ1X02dzbUfUklsoBDyZAv3M8hpkRu5AarFZmpQH45OS2dxjU0x TR2jgos0L5gyVs/v+AF55Vnghj5n13dYlvjhJBLMdp0MClONnr6EtyF7b91oSu9thJ8zwU 3kZoxc2EPtdLaNN/wCS0CIJvMpkyQ5CnmvMSWzTkv/Uz3wOZ7EGAE16GI/tYhA== Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Tue, 30 Dec 2025 15:24:36 +0100 Message-Id: Cc: "Michael Wu" , , , , "Dragan Simic" , Subject: Re: [PATCH v3] extcon: Fixed sysfs duplicate filename issue X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: "Diederik de Haas" To: "Andy Shevchenko" , "Diederik de Haas" References: <20251024024946.16618-1-michael@allwinnertech.com> In-Reply-To: X-Migadu-Flow: FLOW_OUT On Tue Dec 30, 2025 at 12:26 PM CET, Andy Shevchenko wrote: > On Tue, Dec 30, 2025 at 12:31:17AM +0100, Diederik de Haas wrote: >> On Sun Dec 28, 2025 at 6:26 PM CET, Andy Shevchenko wrote: >> > On Sun, Dec 28, 2025 at 12:01:54PM +0100, Diederik de Haas wrote: >> >> On Sat Dec 27, 2025 at 4:08 PM CET, Andy Shevchenko wrote: >> >> > On Sun, Dec 21, 2025 at 03:01:11PM +0100, Diederik de Haas wrote: >> >> >> On Fri Oct 24, 2025 at 4:49 AM CEST, Michael Wu wrote: >> >> >> > With current extcon_dev_unregister() timing, ida_free is before >> >> >> > device_unregister(), that may cause current id re-alloc to anoth= er >> >> >> > device in extcon_dev_register() context but sysfs filename path = not >> >> >> > removal completed yet. >> >> >>=20 >> >> >> I periodically get errors like this: >> >> >>=20 >> >> >> [ 7.116152] rockchip-usb2phy fe8a0000.usb2phy: error -EEXIST: f= ailed to register extcon device >> >> >> [ 7.117005] rockchip-usb2phy fe8a0000.usb2phy: probe with drive= r rockchip-usb2phy failed with error -17 >> >> >>=20 >> >> >> This was today on a NanoPi R5S (rk3568), but I have seen it before= and >> >> >> on multiple devices. They are all Rockchip based, but that's (quit= e) >> >> >> possible because that's what I use the most (and where I pay quite= a bit >> >> >> of attention to dmesg). >> >> >>=20 >> >> >> Slightly fuller dmesg output of the above error is here: >> >> >> https://paste.sr.ht/~diederik/42c6b3405386c823cd9f837d73a9a32e8103= 61be >> >> >> And via 'journalctl' I hopefully got the full dmesg output: >> >> >> https://paste.sr.ht/~diederik/7a6109115b1ad85290de482db091dad3759e= c159 >> >> >>=20 >> >> >> Here are 2 similar logs, this time on PineTab2 and Quartz64-A (bot= h rk3566) >> >> >> https://paste.sr.ht/~diederik/cfe606801d3dab0267bea7049687d24c0d6e= 8d71 >> >> >>=20 >> >> >> Those are all the logs I have saved, but it has happened several t= imes >> >> >> besides that. But most times I just rebooted and didn't save the l= og. >> >> >> Today I looked a bit further, found commit 7bba9e81a6fb, searched = on >> >> >> lore.k.o and found this patch. >> >> >>=20 >> >> >> So I'm wondering whether this patch would also fix 'my' issue? >> >> >> Or is this a different issue? >> >> > >> >> > But have you had a chance to test it? The code looks correct after = this patch >> >> > as the first we remove the struct device and all associated data (i= ncluding >> >> > sysfs nodes) and then remove the ID from the list. Without that the= re is a >> >> > window to get the same id for the devices that is pending to be rem= oved. >> >>=20 >> >> I've build a kernel with it and it will be part of my kernels going >> >> forward. But it can take many months before the issue shows up again. >> >> So if I don't get it in a year, then I'm going to *assume* it's proba= bly >> >> fixed. >> > >> > I believe you may speed up the test case by creating two shell scripts= that >> > trying insmod / rmmod the same module in parallel. >>=20 >> I checked on several devices and the phy_rockchip_inno_usb2 module is >> used by various other modules on all of them, so I can't just 'rmmod' it= . >> I guess it should technically be possible to remove all its dependencies >> and then remove that module. I don't know if my skills are sufficient >> for that and it feels like I'm mostly testing the robustness of the USB >> subsystem. >>=20 >> As I regularly already get the following kernel warning >> ``Warning! ehci_hcd should always be loaded before uhci_hcd and ohci_hcd= , not after`` >> which often results in USB 2 ports not working, I have my doubts about >> the robustness anyway. > > This is interesting issue, have you reported it to USB people (such as Al= an Stern)? Not yet. I was reasonably sure I had mentioned this issue before, but when doing a search on lore.k.o I couldn't find it. I guess I only 'reported' it on IRC. Interestingly enough, I did find another very recent mail/patch: https://lore.kernel.org/all/20251230080014.3934590-1-chenhuacai@loongson.cn= / but looks like Greg doesn't like it ... and his suggestion (make the kernel module built-in) was exactly the thing I wanted to try before reporting it. If it's tristate it _should_ be able to be built as module, but it's extremely unlikely I'll spend time on that though. >> So I'll just keep an eye out if the ``sysfs: cannot create duplicate >> filename`` error pops up again 'naturally' and report if/when it does. > > Good, please monitor it and try to collect logs for the further investiga= tions, > if required. Will do. FWIW, Dragan asked me to enable DEBUG_DEVRES and share the logs. Maybe they're useful for you too. On Rock 5B (RK3588): https://paste.sr.ht/~diederik/2d8e0beced6477cc1abd28cd= 870ea76a1e413a9e On NanoPi R5S (RK3568): https://paste.sr.ht/~diederik/1c4026d0c277b92391136= bab4e80f64a989006f5 Cheers, Diederik