Messages in this thread | | | Date | Wed, 29 Mar 2000 10:22:56 -0800 | From | Jun Sun <> | Subject | Re: locking problems |
| |
Andrew Morton wrote: > > Jun Sun wrote: > > > > BTW, I really think interrupt handlers acquiring the same locks which > > can be acquired by processes is a *BIG* problem in Linux. We should fix > > this problem. Unfortunately I am not familiar with Linux kernel well > > enough to offer a solution. > > Why do you think this? Any specific examples in mind? >
Linus told me so. I believe him. :-)
I did sniff around the source code and spotted a couple of places where locks COULD be acquired by ISRs, but I never did a RUN-TIME check to catch this situation.
Apparently Rik seems to confirm that. See his reply.
---
I believe the problem here is that Linux does not have a CLEAR notion and separation of task-context code and interrupt-context code.
Imagine if a kernel function needs to read task list, then it must acquire a read lock on tasklist_lock. However, the function might be called from both process and ISR, then we will have the ISR acquiring lock problem.
I don't know if this has been a problem to Linux in the past. I am relatively new to Linux kernel.
Jun
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |