[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Re: Should shadow_lock be spin_lock_recursive?



This dead lock happened on VNIF code when enabled shadow mode.
The shadow_lock path is so complex and maybe using recurisve lock
is the easiest way to avoid dead lock currently before clearing
the path or splitting the lock .

Arun Sharma wrote:

During our testing, we found this code path where xen attempts to grab the shadow_lock, while holding it - leading to a deadlock.

 >> free_dom_mem->
 >> shadow_sync_and_drop_references->
 >> shadow_lock -> ..................... first lock
 >> shadow_remove_all_access->
 >> remove_all_access_in_page->
 >> put_page->
 >> free_domheap_pages->
 >> shadow_drop_references->
 >> shadow_lock -> ..................... second lock

Questions:

- should shadow lock be recursive?
- is shadow lock too coarse grained? It seems to have led to a lot of code refactoring (__foo without lock and foo with lock). But there may be more such instances we haven't found yet.

    -Arun


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.