Thread (9 messages) 9 messages, 4 authors, 2021-02-03

Re: fbcon: remove soft scrollback code (missing Doc. patch)

From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2021-01-15 08:07:42
Also in: dri-devel, linux-doc, lkml

Hi Daniel,

On Thu, Jan 14, 2021 at 5:11 PM Daniel Vetter [off-list ref] wrote:
On Thu, Jan 14, 2021 at 4:56 PM Geert Uytterhoeven [off-list ref] wrote:
quoted
On Tue, Jan 12, 2021 at 5:00 PM Daniel Vetter [off-list ref] wrote:
quoted
On Sat, Jan 9, 2021 at 12:11 AM Linus Torvalds
[off-list ref] wrote:
quoted
On Fri, Jan 8, 2021 at 11:13 AM Phillip Susi [off-list ref] wrote:
quoted
quoted
Could we pause this madness? Scrollback is still useful. I needed it
today... it was too small, so command results I was looking for
already scrolled away, but... life will be really painful with 0
scrollback.
quoted
You'll need it, too... as soon as you get oops and will want to see
errors just prior to that oops.
quoted
If it means I get to maintain it... I'm not happy about it but that's
better than no scrollback.
Amen!  What self respecting admin installs a gui on servers?  What do we
have to do to get this back in?  What was so buggy with this code that
it needed to be removed?  Why was it such a burden to just leave it be?
It really was buggy, with security implications. And we have no maintainers.

So the scroll-back code can't come back until we have a maintainer and
a cleaner and simpler implementation.

And no, maintaining it really doesn't mean "just get it back to the
old broken state".

So far I haven't actually seen any patches, which means that it's not
coming back.

The good news? If you have an actual text VGA console, that should
still work just fine.
IIRC, all of this was written for systems lacking VGA text consoles
in the first place...
quoted
Also on anything that is remotely modern (i.e. runs a drm kernel
modesetting driver undearneath the fbdev/fbcon stack) there's a pile
more issues on top of just the scrollback/fbcon code being a mess.
Would it help to remove DRM_FBDEV_EMULATION (instead)?
It's a problem with the hardware. "Write some registers and done"
isn't how display blocks work nowadays. So your proposal amounts to
"no fbdev/fbcon for anything modern-ish".
With "modern-ish" actually meaning: "desktop/gaming/mobile-style
3D-accelerated wide-color display hardware".  There's plenty of display
hardware that doesn't fall into that class, and is served by fbdev (also
out-of-tree due to the moratorium) because of that.
Also I said "a pile more", most of the issues in fbcon/fbdev code
apply for all drivers.
quoted
quoted
Specifically the locking is somewhere between yolo and outright
deadlocks. This holds even more so if the use case here is "I want
scrollback for an oops". There's rough sketches for how it could be
solved, but it's all very tricky work.
When an oops happens, all bets are off.  At that point, all information
you can extract from the system is valuable, and additional locking
issues are moot.
Except the first oops then scrolls aways because it's getting buried
under further fail. Your locking needs to be minimally good enough to
not make the situation worse.
When an oops happens, all bets are off...

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help