We must not skip the transaction_end() call for a failed
XS_TRANSACTION_START. The removed code fragment got introduced by
commit 027bd7e899 ("xen/xenbus: Avoid synchronous wait on XenBus
stalling shutdown/restart") without its description really indicating
why it was added (and hence I can't identify whether a more complex
change might be needed here).Signed-off-by: Jan Beulich <[email protected]> Cc: Konrad Rzeszutek Wilk <[email protected]> --- drivers/xen/xenbus/xenbus_xs.c | 3 --- 1 file changed, 3 deletions(-) --- 4.7-rc6-xen.orig/drivers/xen/xenbus/xenbus_xs.c +++ 4.7-rc6-xen/drivers/xen/xenbus/xenbus_xs.c @@ -249,9 +249,6 @@ void *xenbus_dev_request_and_reply(struc mutex_unlock(&xs_state.request_mutex); - if (IS_ERR(ret)) - return ret; - if ((msg->type == XS_TRANSACTION_END) || ((req_msg.type == XS_TRANSACTION_START) && (msg->type == XS_ERROR)))

