fork of 9front i guess
Find a file
cinap_lenrek f481ac716d kernel: fix alarm postnote race
when alarmkproc is commited to send the alarm note to the process,
the process might have exited already, or worse, being reused for
another process. pexit() zeros p->alarm at the beginning, but the
kalarmproc() might read p->alarm before pexit() zeroed it, decide
to send the note, then get preempted and pexit() releases the proc.
once kalarmproc() is resumed, the proc might be already something
different and we send the note to the wrong thing.

we now check p->alarm under the debug qlock. that way, pexit()
cannot make progress while we test the condition.

remove the error label arround postnote(). postnote does not raise
error.
2014-01-01 05:14:38 +01:00
386 change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
68000 change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
68020 change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
acme acme: fix more error messages 2013-04-28 00:19:35 +02:00
adm/timezone add Uruguay timezone (from sources) 2013-01-25 14:13:01 +01:00
alpha change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
amd64 change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
arm change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
lib fortunes: What an amazing year for the Web. 2013-12-19 15:08:28 -05:00
mips change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
power change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
power64 change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
rc window: fix various problems, cleanup 2013-12-25 01:30:43 +01:00
sparc change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
sparc64 change Rune from ushort to uint for to 21 bit runes (thanks mischief!) 2013-10-17 12:02:45 +02:00
sys kernel: fix alarm postnote race 2014-01-01 05:14:38 +01:00
.hgignore hgignore: ignore stuff in /lib/rfc 2013-06-09 11:16:33 -04:00