diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2010-08-02 00:31:54 +0200 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2010-08-02 00:31:54 +0200 |
commit | b506a9ca2de7dc1234ef1a93d620d965c33919e0 (patch) | |
tree | a30a008ec2dd7e49f3f20a0f43ac9ccc25c1f0e4 | |
parent | 6c97398a5eb9832d20115f60d403af5a86bfdfcc (diff) |
init_fix.patch: New upstream patch to fix halt/reboot.
-rw-r--r-- | debian/changelog | 1 | ||||
-rw-r--r-- | debian/patches/init_fix.patch | 50 |
2 files changed, 51 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog index 3d60d260..2011b09f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -51,6 +51,7 @@ hurd (20100701-1) unstable; urgency=low * debian/rules: Remove debian/ChangeLog on clean. * debian/local/runsystem: Pass -g option to the console to maximize glyph usage for chinese. + * debian/patches/init_fix.patch: New upstream patch to fix halt/reboot. [ Guillem Jover ] * Update make-new-tarball.sh to exclude git instead of CVS paths. diff --git a/debian/patches/init_fix.patch b/debian/patches/init_fix.patch new file mode 100644 index 00000000..8a7f27da --- /dev/null +++ b/debian/patches/init_fix.patch @@ -0,0 +1,50 @@ +commit a6bb3e62109c72ec912d264418c5e9b95c780dbf +Author: Samuel Thibault <samuel.thibault@ens-lyon.org> +Date: Mon Aug 2 00:29:57 2010 +0200 + + Partially revert 8451b436 to fix halt/reboot + + init/init.c (S_msg_sig_post_untraced): Ignore result of + msg_sig_post_untraced_reply. + (S_msg_sig_post): Likewise. + +diff --git a/init/init.c b/init/init.c +index 4645729..d66bee0 100644 +--- a/init/init.c ++++ b/init/init.c +@@ -1353,16 +1353,12 @@ S_msg_sig_post_untraced (mach_port_t msgport, + mach_port_t reply, mach_msg_type_name_t reply_type, + int signo, natural_t sigcode, mach_port_t refport) + { +- kern_return_t err; +- + if (refport != mach_task_self ()) + return EPERM; + mach_port_deallocate (mach_task_self (), refport); + + /* Reply immediately */ +- err = msg_sig_post_untraced_reply (reply, reply_type, 0); +- if (err) +- return err; ++ msg_sig_post_untraced_reply (reply, reply_type, 0); + + process_signal (signo); + return MIG_NO_REPLY; +@@ -1373,16 +1369,12 @@ S_msg_sig_post (mach_port_t msgport, + mach_port_t reply, mach_msg_type_name_t reply_type, + int signo, natural_t sigcode, mach_port_t refport) + { +- kern_return_t err; +- + if (refport != mach_task_self ()) + return EPERM; + mach_port_deallocate (mach_task_self (), refport); + + /* Reply immediately */ +- err = msg_sig_post_reply (reply, reply_type, 0); +- if (err) +- return err; ++ msg_sig_post_reply (reply, reply_type, 0); + + process_signal (signo); + return MIG_NO_REPLY; |