Re: [9fans] another kernel implementation question

2011-01-27 Thread Anthony Martin
Steve Simon once said: > The difference comes from the fact that sleep is deep inside its > stack/errlab hierarchy when it receives a note. This causes it > to jump to the notify function (still in the users context), > the notify function then calls back into the kernel (noted()). > > this is wh

Re: [9fans] another kernel implementation question

2011-01-27 Thread Steve Simon
> Waserror increments up->nerrlab before setting up > the next label on the error stack which means the > poperror in question returns it to zero. Yep, I get this part, and for nearly all syscalls its straightforward, fork() is different (I was stumpped by that a few months ago), and it seems note

Re: [9fans] another kernel implementation question

2011-01-27 Thread Anthony Martin
Waserror increments up->nerrlab before setting up the next label on the error stack which means the poperror in question returns it to zero. Anthony

[9fans] another kernel implementation question

2011-01-27 Thread Steve Simon
I don't get gow notes work WRT up->nerrlab. say we schedule an alarm() call, and then go to sleep. the note will fire when the alarm expires and cause the processes notify function to be called. this notify function calls noted() and in doing so sets up->nerrlab to zero. assuming noted was calle