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

Re: [Xen-devel] [PATCH v3] libxl: Atomicaly check backend state and set it to 5 at device_remove



Roger Pau Monne writes ("[PATCH v3] libxl: Atomicaly check backend state and 
set it to 5 at device_remove"):
> libxl__initiate_device_remove was setting backend state to 5, which
> could create a race condition, since the previous check for state != 4
> and setting state to 5 was not done inside the same transaction, so
> the kernel could change the state to 6 in the space between the check
> for state != 4 and setting it to 5.
> 
> The state != 4 check and setting it to 5 should happen in the same
> transaction, to assure that nobody is modifying it behind our back.
> 
> Changes since v2:
> 
>  * Updated to match current tree, plus Ian Jackson "libxl child
>    process handling" series.
> 
>  * Moved xs_transaction_end to out_ok section.
> 
> Changes since v1:
> 
>  * Do the check and set in the same transaction, instead of removing
>    the set state to 5.

Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>

Do you want me to push it onto the end of my series or will you
repost it after mine's applied ?

Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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