Date: Sat, 19 Dec 2009 11:13:59 +0000 (UTC) From: Konstantin Belousov <kib@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/compat/freebsd32 freebsd32_misc.c src/sys/kern kern_sig.c src/sys/sys signalvar.h syscallsubr.h Message-ID: <200912191118.nBJBI4AK070052@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
kib 2009-12-19 11:13:59 UTC FreeBSD src repository Modified files: (Branch: RELENG_8) sys/compat/freebsd32 freebsd32_misc.c sys/kern kern_sig.c sys/sys signalvar.h syscallsubr.h Log: SVN rev 200721 on 2009-12-19 11:13:59Z by kib MFC r198506: In kern_sigsuspend(), manipulate thread signal mask using kern_sigprocmask(). Also, do cursig/postsig loop immediately after waiting for signal, repeating the wait if wakeup was spurious due to race with other thread fetching signal from the process queue before us. MFC r199136: Use cpu_set_syscall_retval(9) to set syscall result, and return EJUSTRETURN from kern_sigsuspend() to prevent syscall return code from modifying wrong frame. Take care of possibility that pending SIGCONT might be cancelled by SIGSTOP, causing postsig() not to deliver any catched signal. Revision Changes Path 1.93.2.3 +1 -12 src/sys/compat/freebsd32/freebsd32_misc.c 1.372.2.4 +32 -26 src/sys/kern/kern_sig.c 1.79.2.3 +7 -2 src/sys/sys/signalvar.h 1.57.2.3 +0 -2 src/sys/sys/syscallsubr.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200912191118.nBJBI4AK070052>