Date: Thu, 17 Feb 2005 19:10:22 GMT From: Sandeep Kumar <sandkumar@juniper.net> To: freebsd-gnats-submit@FreeBSD.org Subject: misc/77651: init can loose shutdown related signals Message-ID: <200502171910.j1HJAM6Y039472@www.freebsd.org> Resent-Message-ID: <200502171920.j1HJKEaa087054@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 77651 >Category: misc >Synopsis: init can loose shutdown related signals >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Feb 17 19:20:13 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Sandeep Kumar >Release: 4.10 >Organization: Juniper Networks >Environment: FreeBSD bbuild26 4.10-PRERELEASE-20040428 FreeBSD 4.10-PRERELEASE-20040428 #0: Tue May 18 11:57:20 PDT 2004 root@bbuild26.juniper.net:/usr/src/sys/compile/bbuild26 i386 >Description: When init receives SIGHUP, the state machine's requested_transition is changed to clean_ttys. Lets say SIGTERM is received while we are in clean_ttys, it will set requested_transition to death. But at the end of clean_ttys it will return multi_user directly which then resets requested_transition. So we loose the SIGTERM sent by shutdown >How-To-Repeat: Create a big /etc/ttys. kill -1 1; shutdown -r now Lot of times the machine will not reboot. >Fix: While returning, clean_ttys should check if requested_transition is no longer clean_ttys and then return requested_transition instead of multi_user >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200502171910.j1HJAM6Y039472>