Messages in this thread | | | Date | Mon, 18 Mar 2019 12:40:17 +0100 | From | Sebastian Andrzej Siewior <> | Subject | Re: [PATCH RT] nvdimm: make lane acquirement RT aware |
| |
On 2019-03-18 01:41:10 [+0000], Liu, Yongxin wrote: > > Consider the recursive call to nd_region_acquire_lane() in the following situation. > Will there be a dead lock? > > > Thread A Thread B > | | > | | > CPU 1 CPU 2 > | | > | | > get lock for Lane 1 get lock for Lane 2 > | | > | | > migrate to CPU 2 migrate to CPU 1 > | | > | | > wait lock for Lane 2 wait lock for Lane 1 > | | > | | > _____________________________ > | > dead lock ?
Bummer. That would dead lock indeed. Is it easily possible to recognize the recursive case?
> > Thanks, > Yognxin
Sebastian
| |