Date: Sun, 02 Feb 2025 10:19:11 +0000 From: "Steven Harms (High-Security Mail)" <sgharms@stevengharms.com> To: Tomek CEDRO <tomek@cedro.info> Cc: "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: Re: Adjustments to userland for a quieter startup (RC system) Message-ID: <S0scwcCr6CV-mqjXoa25r0XOQqm86TCcIXyl9iZ0mV-BrIKOlkfuHKxqjpbH8cuinimu4-9QRren6m9GGEZ5j_euqb9Vz0Wry1kXCalH30Y=@stevengharms.com> In-Reply-To: <CAFYkXjnEW8G03VKw4B77-aMQFnPLH7RZQApxWqCZpts5rpQWiA@mail.gmail.com> References: <JDv17dtjl93rFR9A8XB9qHlawC2oW7JmmXWsnMKq2r51p61si48CAAOzIBi6pY_nTMdJ7zCvSL6M-Hics-CrqLhDJjZP2SG0v1zEHqH8Ug4=@stevengharms.com> <CAFYkXjmN7ma1GDuFP5p3KdHJtoO9Yri-iNLtuOL6mDKx91CBhA@mail.gmail.com> <CAFYkXjnEW8G03VKw4B77-aMQFnPLH7RZQApxWqCZpts5rpQWiA@mail.gmail.com>
index | next in thread | previous in thread | raw e-mail
> Okay, I am sorry, I mixed the general idea with detailed PR that aims > just updating routing and devmatch parts with user selectable option > not changing a defaults, thus my previous remarks are invalid and > updated, I apologize! :-) A goal of this PR was to flush out dialogue around whether there was a universal noise level-adjusting knob in the RC system. [jlduran]'s more ambitious PR, my PR, and the discussion to this post suggest "no." I think it's probably right to generalize the discussion! I also realize that this is a probably a controversial perspective. My motivation here is ultimately service to the FreeBSD Laptop project. Windows and OSX have conditioned many in the population of the FreeBSD-curious to expect a lot less text on startup if things are going well. To those who say "Yes, seeing the diagnostic data is why FreeBSD is so great," I say: In a server/device context, I'd not change anything (something my PR may have flubbed in its implementation). ***But***, I contend that for FreeBSD to thrive on a wider population of laptops and access a wider population of users, some options (including such a noise knob for the RC system) ought be available. The extent that [helloSystem] went to hide messages suggests an unmet need. [helloSystem]: https://hellosystem.github.io/docs/developer/boot.html#boot-mute [jlduran]: https://github.com/jlduran/freebsd-src/pull/90/files > * There is already `rc_info` that may be used? > https://github.com/freebsd/freebsd-src/blob/50c962d773705f60d32c29f8e4bb2743ab55733b/libexec/rc/rc.conf#L29 I could see that and/or rc_debug replacing RC scripts' use of `echo`, though. But (per "it's controversial"), we'd need future RC authors to adopt a notion of "log level output" versus "printf/echo to the screen." My PR was modest in its aims and didn't want to edit all the `echo`s. [jlduran] *did* dare more bravely :) Although it seems (from the comments) that rc_debug has some complex interactions with rc.subr that might make this option (my favorite thus far) more complex than expected. [rc.subr]: https://github.com/freebsd/freebsd-src/blob/50c962d773705f60d32c29f8e4bb2743ab55733b/libexec/rc/rc.conf#L26 > * There is already `rc_startmsg` that may be used? > https://github.com/freebsd/freebsd-src/blob/50c962d773705f60d32c29f8e4bb2743ab55733b/libexec/rc/rc.conf#L30 This was insufficient. It only squelched the "Starting ${name}" line :-/. e.g. all the data e.g. about setting up a default route / interface output were still logged. > * If really necessary `_msgs` can be replaced with `_verbose` suffix? > https://github.com/freebsd/freebsd-src/blob/50c962d773705f60d32c29f8e4bb2743ab55733b/libexec/rc/rc.conf#L568 Seems promising, but this would mean more conditional logic per each flag? I think that's probably insufficiently general. `info` with its control in `rc_info` per your earlier suggestion would seem the way to go. > * I guess the idea is to silence the terminal? How many flags need to > be put to silent instead just one? Why not just put a boot logo image > if you really do not want to see the boot messages? It may provide > expected user experience and will not impact diagnostic information > that are usually useful :-) Sadly boot_mute="YES" was insufficient as well. It only seems to mute /kernel/-level diagnostics. Afterward, my screen was still full of RC-originating content. And yes, suppose we /could/ do an overlay until the login prompt -- I think that should be supported. It's what I _expected_ boot_mute=YES to do by default, frankly. Perhaps the take-away should be: * Existing interfaces are insufficient to let people easily tune their level of RC output * Resolve: Is this something that should be available? * If so: resolve via log level, per-function verbosity suffixes, provide a longer overlay bitmap duration option, or some other means Thank you for your consideration, Steven Stevenhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?S0scwcCr6CV-mqjXoa25r0XOQqm86TCcIXyl9iZ0mV-BrIKOlkfuHKxqjpbH8cuinimu4-9QRren6m9GGEZ5j_euqb9Vz0Wry1kXCalH30Y=>
