Bug #1344
closedshutdown now" does not work
Added by sepherosa over 15 years ago. Updated over 15 years ago.
0%
Description
Hi all,
"shutdown now" does not work on HEAD. I don't know when it starts,
but it should be quite recent.
Symptom:
xanadu:~# shutdown now
Shutdown NOW!
shutdown: [pid 737]
xanadu:~#
- FINAL System shutdown message from root@xanadu ***
System going down IMMEDIATELY
...
...
Enter full pathname of shell or RETURN for /bin/sh:
After the above line, "enter" does not work at all, and nothing could be input.
CTRL-ALT-DEL still works.
Best Regards,
sephe
Updated by swildner over 15 years ago
Sepherosa Ziehau schrieb:
Hi all,
"shutdown now" does not work on HEAD. I don't know when it starts,
but it should be quite recent.Symptom:
xanadu:~# shutdown now
Shutdown NOW!
shutdown: [pid 737]
xanadu:~#
- FINAL System shutdown message from root@xanadu ***
System going down IMMEDIATELY...
...
Enter full pathname of shell or RETURN for /bin/sh:After the above line, "enter" does not work at all, and nothing could be input.
CTRL-ALT-DEL still works.
I tried this too yesterday and i had one more line after the "Enter full
pathname" line:
init: can't exec for single user: No such file or directory
This is coming from shutdown.
Sascha
Updated by Anonymous over 15 years ago
: "shutdown now" does not work on HEAD. I don't know when it starts,
: but it should be quite recent.
I am git-bisect'ing it. I started before the libc merge, which translates to
~200 commits until HEAD. I'll need 7-8 buildworlds to track it down.
Cheers,
Stathis
Updated by Anonymous over 15 years ago
:: "shutdown now" does not work on HEAD. I don't know when it starts,
:: but it should be quite recent.
:I am git-bisect'ing it. I started before the libc merge, which translates to
:~200 commits until HEAD. I'll need 7-8 buildworlds to track it down.
Hi.
The commit after 'shutdown now' has stopped working is
b8477cda8783596a7c765667658de9a94dd368fd
" Revoke reimplementation - primary commit part 1/2"
Any ideas on how to further debug it ? Breaking into ddb doesn't show much, just
that we are in scgetc(), a syscons function. Also, ktrace'ing init and then
invoking the command in discussion, produces this output:
http://leaf.dragonflybsd.org/~beket/ktrace.out.txt
Cheers,
Stathis
Updated by qhwt+dfly over 15 years ago
On Mon, Apr 27, 2009 at 10:43:27AM +0000, Stathis Kamperis (via DragonFly issue tracker) wrote:
Stathis Kamperis <ekamperi@gmail.com> added the comment:
:: "shutdown now" does not work on HEAD. I don't know when it starts,
:: but it should be quite recent.:I am git-bisect'ing it. I started before the libc merge, which translates to
:~200 commits until HEAD. I'll need 7-8 buildworlds to track it down.Hi.
The commit after 'shutdown now' has stopped working is
b8477cda8783596a7c765667658de9a94dd368fd
" Revoke reimplementation - primary commit part 1/2"Any ideas on how to further debug it ? Breaking into ddb doesn't show much, just
that we are in scgetc(), a syscons function. Also, ktrace'ing init and then
invoking the command in discussion, produces this output:
http://leaf.dragonflybsd.org/~beket/ktrace.out.txtCheers,
Stathis_____________________________________________
DragonFly issue tracker <bugs@lists.dragonflybsd.org>
<http://bugs.dragonflybsd.org/issue1344>
_____________________________________________
Any progress on this issue?
If I issue shutdown command from an ssh session, the console is usable.
If I switch to ttyv1(alt+F2), login as root, then issue `shutdown now',
the screen locks up but I can switch to ttyv0(alt+F1) and it accepts
the keystroke. An odd thing is that you can switch back to ttyv1 from
ttyv0 after going to single-user mode.
Updated by sepherosa over 15 years ago
Hi all,
Any insights into this issue? I do hope it could be solved.
On Sat, May 9, 2009 at 4:53 PM, YONETANI Tomokazu <qhwt+dfly@les.ath.cx> wrote:
On Mon, Apr 27, 2009 at 10:43:27AM +0000, Stathis Kamperis (via DragonFly issue tracker) wrote:
Stathis Kamperis <ekamperi@gmail.com> added the comment:
:: "shutdown now" does not work on HEAD. I don't know when it starts,
:: but it should be quite recent.:I am git-bisect'ing it. I started before the libc merge, which translates to
:~200 commits until HEAD. I'll need 7-8 buildworlds to track it down.Hi.
The commit after 'shutdown now' has stopped working is
b8477cda8783596a7c765667658de9a94dd368fd
" Revoke reimplementation - primary commit part 1/2"Any ideas on how to further debug it ? Breaking into ddb doesn't show much, just
that we are in scgetc(), a syscons function. Also, ktrace'ing init and then
invoking the command in discussion, produces this output:
http://leaf.dragonflybsd.org/~beket/ktrace.out.txtCheers,
Stathis_____________________________________________
DragonFly issue tracker <bugs@lists.dragonflybsd.org>
<http://bugs.dragonflybsd.org/issue1344>
_____________________________________________Any progress on this issue?
If I issue shutdown command from an ssh session, the console is usable.
If I switch to ttyv1(alt+F2), login as root, then issue `shutdown now',
the screen locks up but I can switch to ttyv0(alt+F1) and it accepts
the keystroke. An odd thing is that you can switch back to ttyv1 from
ttyv0 after going to single-user mode.
Updated by qhwt+dfly over 15 years ago
On Wed, Jun 03, 2009 at 09:32:35PM +0800, Sepherosa Ziehau wrote:
Hi all,
Any insights into this issue? I do hope it could be solved.
I think I found something (not the fix, tho). From revoke(9) man page:
DESCRIPTION
The revoke() function invalidates all current open file descriptors in
the system for the file named by path. Subsequent operations on any such
descriptors fail, with the exceptions that a read() from a character
device file which has been revoked returns a count of zero (end of file),
and a close() call will succeed.
This is true on my 2.2-RELEASE box, but not on -DEVELOPMENT. Below is a
code snippet to demonstrate this difference.
%%%%%%
$ cat > a.c
#include <errno.h>
#include <stdio.h>
#include <syslog.h>
#include <unistd.h>
int
main()
{
char buf[10];
syslog(LOG_ALERT, "TEST");
if (revoke(ttyname(STDIN_FILENO)) != 0)
perror("revoke");
size_t got = read(STDIN_FILENO, buf, 1);
syslog(LOG_ALERT, "got:%d, errno:%d\n", got, errno);
return 0;
}
$ gcc -W -Wall a.c && ./a.out
%%%%%%
On 2.2-RELEASE, it logs `a.out: got:0, errno:0' to /var/log/messages
while it logs `a.out: got:-1, errno:9' on -DEVELOPMENT. This may or
may not affect init(8) or programs invoked from it.
On Sat, May 9, 2009 at 4:53 PM, YONETANI Tomokazu <qhwt+dfly@les.ath.cx> wrote:
On Mon, Apr 27, 2009 at 10:43:27AM +0000, Stathis Kamperis (via DragonFly issue tracker) wrote:
Stathis Kamperis <ekamperi@gmail.com> added the comment:
:: "shutdown now" does not work on HEAD. 〓I don't know when it starts,
:: but it should be quite recent.:I am git-bisect'ing it. I started before the libc merge, which translates to
:~200 commits until HEAD. I'll need 7-8 buildworlds to track it down.Hi.
The commit after 'shutdown now' has stopped working is
b8477cda8783596a7c765667658de9a94dd368fd
" Revoke reimplementation - primary commit part 1/2"Any ideas on how to further debug it ? Breaking into ddb doesn't show much, just
that we are in scgetc(), a syscons function. Also, ktrace'ing init and then
invoking the command in discussion, produces this output:
http://leaf.dragonflybsd.org/~beket/ktrace.out.txtCheers,
Stathis_____________________________________________
DragonFly issue tracker <bugs@lists.dragonflybsd.org>
<http://bugs.dragonflybsd.org/issue1344>
_____________________________________________Any progress on this issue?
If I issue shutdown command from an ssh session, the console is usable.
If I switch to ttyv1(alt+F2), login as root, then issue `shutdown now',
the screen locks up but I can switch to ttyv0(alt+F1) and it accepts
the keystroke. 〓An odd thing is that you can switch back to ttyv1 from
ttyv0 after going to single-user mode.--
Live Free or Die
Updated by sepherosa over 15 years ago
Fixed by dillon@:
a32446b7b42983c7cb48c360d105496b4a3596c3