> kernel will only task switch on an interrupt if the current process is in
> user space. This should mean that races like this are not a major threat in
> ELKS is it is not possible for another process to free an inode until the
> current one leaves kernel space, or sleeps. Have I got this right?

It can also task switch sleeping processes (or should be doing so). A task
sleeping in kernel space can be rescheduled. That means that with a proper disk
driver you need those locks.

Alan

Reply via email to