Date: Tue, 18 Feb 2025 13:47:18 +0200 From: Toomas Soome <tsoome@me.com> To: "Steven Harms (High-Security Mail)" <sgharms@stevengharms.com> Cc: "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: Re: Quieter startup + working experience by overriding VT_CONSWINDOW (and consequences) Message-ID: <E3CD2064-E50A-4806-A447-DB314128D119@me.com> In-Reply-To: <QVzr_cE3j_kq8ipDqQYiRGwOJfYPfcR7KX8vhpnq28HZGMczNGVcb2Qj5l5hOHdNLsMKzUK1lR9AgCW2ArbqjptpSBc1Oq8ALO8Of8jYs4o=@stevengharms.com>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] > On 18. Feb 2025, at 13:31, Steven Harms (High-Security Mail) <sgharms@stevengharms.com> wrote: > > Greetings, > > As per previous thread, I am still interested in a quieter fbsd experience: ideally no kernel / rc output on startup and no console messages on default TTY after login. > > As I was trying to see if I could extend boot_mute, I came across another approach: > > set the default console to not-zero (e.g. 4) > But then the default login prompt was also ttyv4. So I.... > Added a kernel option whereby to specify which VT the starting one (instead of following to e.g. 4). > (supporting code to make all that work) > Pair with the status quo boot_mute, you get a remarkably quiet boot up. Logo, black screen (as your getty session waits), prompt. > > Mea Culpa: I'm waaaaayyy out of my depth on the kernel hacking piece (just enough C to be dangerous). Consider these sketches. https://github.com/freebsd/freebsd-src/pull/1600 > > The suggestion separates "Which VT gets the console" and "Which VT is the starting VT." These two roles are conflated and my sketch unwinds that. Hereby one gets: > > a nice quiet boot up > a default login screen whose vi session isn't interrupted (by default) with noise from your wificard (if you're on laptop fbsd) -- frightening/annoying to some > a dedicated live sink for console messages (versus a log file or versus your vi session) closer to a real serial console or OSX's console.app > > Is this a better approach vs extending boot_mute's run? Or if this is wrong-headed I'll go back to previous paths of inquiry. > > Steven I personally like the approach to enable console log with boot -v, otherwise use your syslog kern.* once userland is there and internal message buffer for startup time before userland appears. This makes it possible to have quick check (-v) and for normal startup, we still have the information or in case of crash, we can check the message buffer… rgds, toomas [-- Attachment #2 --] <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><br id="lineBreakAtBeginningOfMessage"><div><br><blockquote type="cite"><div>On 18. Feb 2025, at 13:31, Steven Harms (High-Security Mail) <sgharms@stevengharms.com> wrote:</div><br class="Apple-interchange-newline"><div><div style="font-family: Arial, sans-serif; font-size: 14px;">Greetings,<br><br>As per previous thread, I am still interested in a quieter fbsd experience: ideally no kernel / rc output on startup and no console messages on default TTY after login. </div><div style="font-family: Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);">As I was trying to see if I could extend boot_mute, I came across another approach:</span></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);"><br></span></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><ol data-editing-info="{"orderedStyleType":1,"unorderedStyleType":1}" style="margin-top: 0px; margin-bottom: 0px;" data-listchain="__List_Chain_949"><li style="list-style-type: "1. ";"><span><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);">set the default console to not-zero (e.g. 4)</span><br></span></li><li style="list-style-type: "2. ";">But then the default login prompt was also ttyv4. So I....</li><li style="list-style-type: "3. ";"><span style="text-align: start; text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);">Added a kernel option whereby to specify which VT the starting one (instead of following to e.g. 4).</span><br></li><li style="list-style-type: "4. ";"><span style="text-align: start; text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);">(supporting code to make all that work)</span></li><li style="list-style-type: "5. ";"><span style="text-align: start; text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);"><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);">Pair with the status quo boot_mute, you get a remarkably quiet boot up. Logo, black screen (as your getty session waits), prompt.</span><br></span></li></ol></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);"><br></span></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);">Mea Culpa: I'm waaaaayyy out of my depth on the kernel hacking piece (just enough C to be dangerous). Consider these sketches. </span><span style="scrollbar-width:thin;text-decoration:none"><a target="_blank" rel="noreferrer nofollow noopener" href="https://github.com/freebsd/freebsd-src/pull/1600" style="scrollbar-width: thin; color: blue;">https://github.com/freebsd/freebsd-src/pull/1600</a></span><br></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);"><br></span></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);">The suggestion separates "Which VT gets the console" and "Which VT is the starting VT." These two roles are conflated and my sketch unwinds that. Hereby one gets:</span><br></div><div style="font-family: Arial, sans-serif; font-size: 14px;"><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);"><br></span></div><div><ul data-editing-info="{"orderedStyleType":1,"unorderedStyleType":1}" style="margin-top: 0px; margin-bottom: 0px;"><li style="font-family: Arial, sans-serif; font-size: 14px; list-style-type: disc;"><span><span style="text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);">a nice quiet boot up</span></span></li><li style="list-style-type: disc;"><span style="display: inline !important; background-color: rgb(255, 255, 255);"><font face="Arial, sans-serif">a default login screen whose vi session isn't interrupted (by default) with noise from your wificard (if you're on laptop fbsd) -- frightening/annoying to some</font></span><br></li><li style="list-style-type: disc;"><span style="display: inline !important; background-color: rgb(255, 255, 255);"><font face="Arial, sans-serif">a dedicated live sink for console messages (versus a log file or versus your vi session) closer to a real serial console or OSX's console.app</font></span></li></ul><div style="font-family: Arial, sans-serif; font-size: 14px; background-color: rgb(255, 255, 255);"><font face="Arial, sans-serif"><br></font></div></div><div style="font-family: Arial, sans-serif; font-size: 14px; background-color: rgb(255, 255, 255);"><font face="Arial, sans-serif">Is this a better approach vs extending boot_mute's run? Or if this is wrong-headed I'll go back to previous paths of inquiry.</font></div><div style="font-family: Arial, sans-serif; font-size: 14px; background-color: rgb(255, 255, 255);"><font face="Arial, sans-serif"><br></font></div><div style="font-family: Arial, sans-serif; font-size: 14px; background-color: rgb(255, 255, 255);"><font face="Arial, sans-serif">Steven</font></div><div><div><span style="font-family: Arial, sans-serif; font-size: 14px; text-decoration: none; display: inline !important; background-color: rgb(255, 255, 255);"></span><font face="Arial, sans-serif"></font></div></div></div></blockquote><br></div><div></div>I personally like the approach to enable console log with boot -v, otherwise use your syslog kern.* once userland is there and internal message buffer for startup time before userland appears. This makes it possible to have quick check (-v) and for normal startup, we still have the information or in case of crash, we can check the message buffer… <div><br></div><div>rgds,</div><div>toomas</div></body></html>home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E3CD2064-E50A-4806-A447-DB314128D119>
