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 Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies