Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1690532
| From | Brian Norris <briannorris@chromium.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 0/5] earlycon hang under some conditions |
| Date | 2017-07-18 20:00 +0200 |
| Message-ID | <u4EWR-5tk-7@gated-at.bofh.it> (permalink) |
| References | <u4tRL-7a0-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Hi Jeffy, On Tue, Jul 18, 2017 at 02:02:53PM +0800, Jeffy Chen wrote: > I was testing earlycon with 8250 dw serial console. And it hangs in > these cases: > 1/ kernel hang when calling early write function after free_initmem: > a) the earlycon not disabled after the init code(due to keep_bootcon or > not specify a real console to switch to) > b) the early write func is marked as __init, for example 8250_early. FWIW, I tested 8250_early with "keep_bootcon", and this fixes that: Tested-by: Brian Norris <briannorris@chromium.org> But then I get double console, if I have both a "real" and "early" console. If I were to *only* have the early console, then I might hit the problems you mention: > 2/ kernel hang when calling early write function after disable unused > clks/pm domain: > a) the earlycon not disabled after the init code > b) the disable unused clks/pm domain kill the requiered clks/pm > domain, since they are not referenced by the earlycon. > > 3/ kernel hang when calling early write function after the serial > console driver runtime suspended: > a) the earlycon not disabled after the init code > b) the serial console driver's runtime suspend kills the requiered > clks/pm domain, since they are not referenced by the earlycon. > > This serial fix 1/ case only. Problems 2 and 3 look like something that's not really in scope for early consoles. There's a reason they are mainly supported for early boot, and we try to switch off of them. There isn't really a good way to handle all the clock and PM infrastructure without...switching off the earlycon and using the real one :) So, I guess this patchset has value for systems where the clock/PM requirements are simple enough, and the earlycon can actually be useful beyond early init. Brian > > > Jeffy Chen (5): > serial: arc: Remove __init marking from early write > serial: omap: Remove __init marking from early write > serial: xuartps: Remove __init marking from early write > serial: 8250_ingenic: Remove __init marking from early write > serial: 8250_early: Remove __init marking from early write > > drivers/tty/serial/8250/8250_early.c | 8 ++++---- > drivers/tty/serial/8250/8250_ingenic.c | 8 ++++---- > drivers/tty/serial/arc_uart.c | 4 ++-- > drivers/tty/serial/omap-serial.c | 13 ++++++------- > drivers/tty/serial/xilinx_uartps.c | 2 +- > 5 files changed, 17 insertions(+), 18 deletions(-) > > -- > 2.1.4 > >
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
Re: [PATCH 0/5] earlycon hang under some conditions Brian Norris <briannorris@chromium.org> - 2017-07-18 20:00 +0200 Re: [PATCH 0/5] earlycon hang under some conditions Doug Anderson <dianders@chromium.org> - 2017-07-18 23:20 +0200
csiph-web