boot process gets weirdly interrupted when using scroll lock
deeptech71 at gmail.com
deeptech71 at gmail.com
Wed May 19 21:39:04 UTC 2010
Doug Barton wrote:
> On 05/19/10 12:09, deeptech71 at gmail.com wrote:
>> [Topic moved away from freebsd-current as the problem doesn't seem to be
>> -CURRENT-specific, and I think there's a larger crowd here :).]
>>
>> This may give a hint. The following patch resolves the 60-second idling
>> issue.
>> --- bgfuck 2010-05-19 20:23:50.000000000 +0200
>> +++ bgfsck 2010-05-19 20:23:40.000000000 +0200
>> @@ -34,7 +34,7 @@
>> check_startmsgs && echo "${bgfsck_msg}."
>> fi
>>
>> - (sleep ${background_fsck_delay}; nice -4 fsck -B -p) 2>&1 | \
>> + (sleep 1;
>
> You can accomplish the same thing by simply setting that variable to 1
> in /etc/rc.conf.
>
>> nice -4 fsck -B -p) 2>&1 | \
>> logger -p daemon.notice -t fsck &
>> }
>>
>> So sleep is foregrounded or something?
>
> I missed the original thread, sorry, but looking at the current state of
> the code it's unclear to me why the close-paren is located where it is.
Archived at
http://lists.freebsd.org/pipermail/freebsd-current/2010-April/016562.html,
but let me rephrase it.
> Can you try the attached patch and let us know if it works for you?
Didn't work.
>
>
> Doug
>
So the problem is:
During the boot process, when the rc scripts are printing messages (for
example "Creating and/or trimming log files"), if I turn on the scroll
lock, then (1) the messages are not printed and are permanently lost,
and (2) the system waits for backgrounded (shell script) sleep calls to
end before proceeding.
Here's a test case. Insert the following text into /etc/rc.d/bgfsck:
echo TURN ON THE SCROLL LOCK NOW
sleep 4
echo HI THERE
sleep 30 &
echo HI THERE
During boot, when you see the "TURN ON THE SCROLL LOCK NOW" message,
turn on the scroll lock. Wait for 5 seconds, then turn off the scroll
lock. Confirm that the script sleeps for another ~30 seconds, and that
neither "HI THERE" message are ever printed.
More information about the freebsd-hackers
mailing list