* Guenter Roeck <linux@xxxxxxxxxxxx> [230804 21:42]:
On Thu, Aug 03, 2023 at 10:10:32AM +0300, Tony Lindgren wrote:
While fixing DEVNAME to be more usable, I broke serial_base_match() as the
ctrl and port prefix for device names seemed unnecessary.
The prefixes are still needed by serial_base_match() to probe the serial
base controller port, and serial tx is now broken.
Let's fix the issue by checking against dev->type and drv->name instead
of the prefixes that are no longer in the DEVNAME.
Fixes: 1ef2c2df1199 ("serial: core: Fix serial core controller port name to show controller id")
Reported-by: kernel test robot <oliver.sang@xxxxxxxxx>
Closes: https://lore.kernel.org/oe-lkp/202308021529.35b3ad6c-oliver.sang@xxxxxxxxx
Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
With this patch applied, I see the following traceback in the pending-fixes
branch.
Bisect log attached as well. It actually points to commit d962de6ae51f
("serial: core: Fix serial core port id to not use port->line").
Bisect was on mips, but I also see problems on arm, ppc, and sparc.
sparc boot tests show the warning message and then stall until aborted
(which of course may be a different problem).
Sorry about all the hassles and thanks for testing again.
I too noticed several issues remaining after testing reloading the hardware
specific serial driver, the issues I saw should be fixed in tty-linus.
kobject: kobject_add_internal failed for serial8250.0:0.0 with -EEXIST, don't try to register things with the same name in the same directory.
serial8250 serial8250.0: unable to register port at index 1 (IO2f8 MEM0 IRQ3): -17
sysfs: cannot create duplicate filename '/devices/platform/serial8250.0/serial8250.0:0/serial8250.0:0.0'
The issue above should be fixed with commit:
bbb4abb1bcfb ("serial: 8250: Reinit port_id when adding back serial8250_isa_devs")