Hi all, I have an smp linux redhat kernel running on many cpu cores.
I know that one process running on one of cpu has tried for Big kernel lock . I am finding that another process on another CPU is trying for BKL. My question is :- ------------------------- Being on different processors , can they both try and acquire BKL ? Can two processes running on different CPUs, acquire BKL , at same time? Another doubt (for same infrastructure) *BKL and preemption and spinlock* 1) If i find from core for a process task struct that *lock_depth = 0 *, *does that ensure this process has acquired BKL ?* as without taking lock it remain -1 ?? 2) If i get preempt_count as non negative but *not 1*, instead a very big number 67174400 , does that ensure that *kernel preemption has been disabled by this process and its running in atomic context ?* 3) If a process has taken BKL , kernel premption is disabled from that point of time, now same process if tries to acquire another spinlock , thats held by some other process... will it cause a deadlock ? i assume, other process if gets to run on other cpu, will run and release the lock and hence will be acquired by this process.. is it right ? Thanks Nidhi
_______________________________________________ Kernelnewbies mailing list [email protected] http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
