On Mon, Feb 17, 2025 at 11:53:01AM +0100, Amit Shah wrote: > On Fri, 2025-02-14 at 18:47 +0100, Uwe Kleine-König wrote: > > On Fri, Feb 14, 2025 at 05:55:41PM +0100, Amit Shah wrote: > > > On Fri, 2025-02-14 at 17:52 +0100, Uwe Kleine-König wrote: > > > > Hello Amit, > > > > > > > > On Fri, Feb 14, 2025 at 05:37:52PM +0100, Amit Shah wrote: > > > > > I'm thinking of the two combinations of interest: REMOTEPROC=m, > > > > > VIRTIO_CONSOLE can be y or m. Say virtcons_probe() happens > > > > > when > > > > > the > > > > > remoteproc module isn't yet loaded. Even after later loading > > > > > remoteproc, virtio console won't do anything interesting with > > > > > remoteproc. > > > > > > > > Where does the interesting thing happen if remoteproc is already > > > > loaded > > > > at that time? I'm not seeing anything interesting in that case > > > > either > > > > ... > > > > > > The code I pointed to, > > > > > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/char/virtio_console.c#n1993 > > > > > > either enables remoteproc if the module is present; or it enables > > > multiport, but not both at the same time. If remoteproc isn't > > > present > > > when this probe routine is executed, multiport might get enabled. > > > And > > > then there's no chance for remoteproc to get enabled. > > > > The only case where there is a difference between IS_REACHABLE and > > IS_ENABLED is: > > > > CONFIG_REMOTEPROC=m > > CONFIG_VIRTIO_CONSOLE=y > > Well, also if CONFIG_VIRTIO_CONSOLE=m; and virtio_console.ko is loaded > before remoteproc.ko. There is nothing about module load ordering in my patch. What virtio_console does or does not doesn't depend on the remoteproc module being loaded or not. It only depends on .config. This is true for both IS_ENABLED() and IS_REACHABLE() which both evaluate to a constant known at compile time. And already now it can happen that the virtio_console init code runs before remoteproc is properly loaded. Having said that your mail just confuses me more than it helps. The problem I thought there is and that made me propose my patch doesn't exist. So I suggest we just drop the patch and the discussion. Best regards Uwe
Attachment:
signature.asc
Description: PGP signature