Date: Sat, 18 May 2024 12:00:32 -0700 From: Chris <bsd-lists@bsdforge.com> To: Warner Losh <imp@bsdimp.com> Cc: Oleksandr Kryvulia <shuriku@shurik.kiev.ua>, FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: usb mouse not work on boot Message-ID: <8d02b4a30515f213c6d8f2dd25230525@bsdforge.com> In-Reply-To: <CANCZdfr6XMAtq-XDeCwnHs%2BGh=tmRR36C_AcXJwCfYXh0DH_xg@mail.gmail.com> References: <ae973e80-7f06-432c-ab66-b1a2ab337eaa@shurik.kiev.ua> <20240518092649.6430ad53@ernst.home> <af05317d-8d64-4a25-b13d-785848c0d326@shurik.kiev.ua> <86ttivwikf.fsf@ltc.des.dev> <cae2b31c-68ed-46c9-9d7b-415926186766@shurik.kiev.ua> <34a397ef-ca2d-4e04-9066-3cf8a0c48616@shurik.kiev.ua> <CANCZdfpD5FeHbb2B-cMDjQesr9NS%2BUVBpzgLG%2Bg4GgSjkBxC3A@mail.gmail.com> <c98a9e1d-3ab7-4a45-b514-cfed7d475198@shurik.kiev.ua> <CANCZdfr6XMAtq-XDeCwnHs%2BGh=tmRR36C_AcXJwCfYXh0DH_xg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2024-05-18 08:33, Warner Losh wrote: > On Sat, May 18, 2024, 9:22 AM Oleksandr Kryvulia <shuriku@shurik.kiev.ua> > wrote: > >> 18.05.24 16:06, Warner Losh: >> >> >> >> On Sat, May 18, 2024, 6:51 AM Oleksandr Kryvulia <shuriku@shurik.kiev.ua> >> wrote: >> >>> 18.05.24 12:59, Oleksandr Kryvulia: >>> >>> 18.05.24 12:55, Dag-Erling Smørgrav: >>> >>> Oleksandr Kryvulia <shuriku@shurik.kiev.ua> <shuriku@shurik.kiev.ua> >>> writes: >>> >>> Gary Jennejohn <garyj@gmx.de> <garyj@gmx.de> writes: >>> >>> Try adding uhid_load="YES" to your /boot/loader.conf. With that >>> added the module should be automatically loaded during the kernel >>> boot. >>> >>> As workaround I already have kld_list+="uhid" in /etc/rc.conf. >>> >>> I hope you don't mean that literally, because /etc/rc.conf is a shell >>> script and += is not valid shell syntax. On the other hand, something >>> like >>> >>> kld_list="${kld_list} uhid" >>> >>> Yes, you are right. I mean >>> sysrc kld_list+="uhid" >>> >>> >>> One more correction. Via kld_list I need load ums(4), loading only >>> uhid(4) does not solve a problem. >>> >> >> >> You don't need to change kld_list. In fact, you should undo any changes >> you've made there. Undo everything in loader.conf you've done. >> >> This is a bug in the boot optimization stuff. Or rather, this exposes a >> long standing bug in the USB code where there's an asymmetry between the >> nomatch events and the bus tree it presents to devctl causing devmatch to >> fail when the nomatch events aren't present on boot. >> >> Just set hw.bus.devctl_nomatch_enabled=1 in /boot/loader.conf and reboot. >> Or update to the change I'm about to make. >> >> >> Thanks for the detailed explanation, Warner. Interesting that on my system >> hw.bus.devctl_nomatch_enabled=1 is set by /etc/rc.d/devmatch but only >> explicit set it in /boot/loader.conf did the trick. That is why I think >> this sysctl don't work in my case. >> > > Yea. That's the optimization. We don't start generating events until it is > one. Setting it in the bootloader causes all events to coke through. > Setting it in devmatch turns them on after we run devmatch the first time, > omitting all of the ones generated on boot. Why is sysctl.conf(5) not the best location for this? > > Warner > >> --Chris
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8d02b4a30515f213c6d8f2dd25230525>