Gentoo Archives: gentoo-user

From: Alan Mackenzie <acm@×××.de>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Soft scrolling on framebuffer consoles - New version of the patch - with GPM handling.
Date: Sat, 31 Dec 2022 14:08:53
Message-Id: Y7BCazazLJq2A8Bi@ACM
In Reply to: Re: [gentoo-user] Soft scrolling on framebuffer consoles - New version of the patch - with GPM handling. by Peter Humphrey
1 Hello, Peter,
2
3 thanks for the reply. The photo was extremely helpful!
4
5 On Sat, Dec 31, 2022 at 09:42:54 +0000, Peter Humphrey wrote:
6 > Morning Alan,
7
8 > On Thursday, 29 December 2022 19:50:18 GMT Alan Mackenzie wrote:
9
10 > > I've got a first version of a patch which attempts to handle GPM in
11 > > conjunction with scrolling. It's imperfect - for example, I can't get it
12 > > to select anything the first 66 lines of the console's displayed boot-up
13 > > messages. Nevertheless it may be useful.
14
15 [ .... ]
16
17 > > Please let me know of any problems you encounter with this new facility,
18 > > so that I can try to fix them. Thanks!
19
20 > Bad news, I'm afraid. After following your instructions carefully, the
21 > new kernel hangs early in the boot process. The first time I tried it
22 > it seemed to be just as the first HID message had been displayed; the
23 > second time I didn't see that (could be my eyes).
24
25 > I've attached a photo of the console.
26
27 The interesting bit of the photo is right at the end, where the INIT:
28 version 3.05 booting appears. The corresponding section from my
29 (successful) boot is:
30
31 [ 4.007014] Write protecting the kernel read-only data: 24576k
32 [ 4.008379] Freeing unused kernel image (text/rodata gap) memory: 2036K
33 [ 4.009611] Freeing unused kernel image (rodata/data gap) memory: 1364K
34 [ 4.010670] Run /sbin/init as init process
35 INIT: version 3.05 booting
36 [ 4.041455] setfont (884) used greatest stack depth: 13584 bytes left
37 [ 4.048471] init-early.sh (882) used greatest stack depth: 12888 bytes left
38
39 OpenRC 0.42.1 is starting up Gentoo Linux (x86_64)
40
41 * Mounting /proc ...
42 * Mounting /run ...
43 * /run/openrc: creating directory
44 * /run/lock: creating directory
45 * /run/lock: correcting owner
46
47 What I see is a message saying something about init-early.sh being
48 called. I don't know what, exactly, is calling it, but I tracked the
49 file down to /lib/rc/sh/init-early.sh. It is a part of rc-init, despite
50 the message being printed with a kernel style time stamp. This message
51 doesn't appear in your photo. I'm guessing init-early.sh was called,
52 but never returned.
53
54 init-early.sh does two things: it sets a console font (see the message
55 about setfont) and sets a key mapping. It does that via symbolic links
56 to /etc/init.d. The console font is more interesting, here. It
57 installs the font which is in /lib/rc/console/font.
58
59 What I'm thinking here is that you might be installing a font which is
60 bigger than the 8x16 standard that you appear to be booting with. To
61 check this, would you please do:
62
63 # file /lib/rc/console/font
64
65 , which should return a message like:
66
67 /lib/rc/console/font: Linux/i386 PC Screen Font v1 data, 256 characters, Unicode directory, 8x16
68
69 What is the size of this font, here (where it says 8x16 for my font)?
70 The reason I ask is, I've got a horrible suspicion that one of the C
71 functions which copies screen data when the screen size is changed can
72 only copy to a same sized or (possibly) _bigger_ screen (i.e. with a
73 smaller font). If this is indeed the case, it might explain why you're
74 seeing a hang, here.
75
76 > --
77 > Regards,
78 > Peter.
79
80 --
81 Alan Mackenzie (Nuremberg, Germany).

Replies