Revision 7469be95a487319514adce2304ad2af3553d2fc9 authored by Jan Beulich on 07 July 2016, 07:32:04 UTC, committed by David Vrabel on 08 July 2016, 10:14:26 UTC
xenbus_dev_request_and_reply() needs to track whether a transaction is
open.  For XS_TRANSACTION_START messages it calls transaction_start()
and for XS_TRANSACTION_END messages it calls transaction_end().

If sending an XS_TRANSACTION_START message fails or responds with an
an error, the transaction is not open and transaction_end() must be
called.

If sending an XS_TRANSACTION_END message fails, the transaction is
still open, but if an error response is returned the transaction is
closed.

Commit 027bd7e89906 ("xen/xenbus: Avoid synchronous wait on XenBus
stalling shutdown/restart") introduced a regression where failed
XS_TRANSACTION_START messages were leaving the transaction open.  This
can cause problems with suspend (and migration) as all transactions
must be closed before suspending.

It appears that the problematic change was added accidentally, so just
remove it.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
1 parent 0beef63
History
File Mode Size
9p
bluetooth
caif
irda
iucv
netfilter
netns
nfc
phonet
sctp
tc_act
6lowpan.h -rw-r--r-- 9.3 KB
Space.h -rw-r--r-- 1.1 KB
act_api.h -rw-r--r-- 5.7 KB
addrconf.h -rw-r--r-- 11.4 KB
af_ieee802154.h -rw-r--r-- 1.6 KB
af_rxrpc.h -rw-r--r-- 1.9 KB
af_unix.h -rw-r--r-- 2.1 KB
af_vsock.h -rw-r--r-- 6.2 KB
ah.h -rw-r--r-- 343 bytes
arp.h -rw-r--r-- 1.4 KB
atmclip.h -rw-r--r-- 1.4 KB
ax25.h -rw-r--r-- 14.5 KB
ax88796.h -rw-r--r-- 998 bytes
bond_3ad.h -rw-r--r-- 9.8 KB
bond_alb.h -rw-r--r-- 6.6 KB
bond_options.h -rw-r--r-- 3.8 KB
bonding.h -rw-r--r-- 18.7 KB
busy_poll.h -rw-r--r-- 3.0 KB
cfg80211-wext.h -rw-r--r-- 2.0 KB
cfg80211.h -rw-r--r-- 191.5 KB
cfg802154.h -rw-r--r-- 10.6 KB
checksum.h -rw-r--r-- 4.6 KB
cipso_ipv4.h -rw-r--r-- 8.1 KB
cls_cgroup.h -rw-r--r-- 2.1 KB
codel.h -rw-r--r-- 5.6 KB
codel_impl.h -rw-r--r-- 8.0 KB
codel_qdisc.h -rw-r--r-- 2.9 KB
compat.h -rw-r--r-- 2.1 KB
datalink.h -rw-r--r-- 580 bytes
dcbevent.h -rw-r--r-- 1.3 KB
dcbnl.h -rw-r--r-- 4.2 KB
devlink.h -rw-r--r-- 5.7 KB
dn.h -rw-r--r-- 7.0 KB
dn_dev.h -rw-r--r-- 5.3 KB
dn_fib.h -rw-r--r-- 3.9 KB
dn_neigh.h -rw-r--r-- 929 bytes
dn_nsp.h -rw-r--r-- 5.9 KB
dn_route.h -rw-r--r-- 4.4 KB
dsa.h -rw-r--r-- 8.9 KB
dsfield.h -rw-r--r-- 1.1 KB
dst.h -rw-r--r-- 13.5 KB
dst_cache.h -rw-r--r-- 2.5 KB
dst_metadata.h -rw-r--r-- 3.7 KB
dst_ops.h -rw-r--r-- 2.0 KB
esp.h -rw-r--r-- 225 bytes
ethoc.h -rw-r--r-- 538 bytes
fib_rules.h -rw-r--r-- 3.0 KB
firewire.h -rw-r--r-- 597 bytes
flow.h -rw-r--r-- 6.8 KB
flow_dissector.h -rw-r--r-- 5.3 KB
flowcache.h -rw-r--r-- 561 bytes
fou.h -rw-r--r-- 510 bytes
fq.h -rw-r--r-- 2.4 KB
fq_impl.h -rw-r--r-- 5.4 KB
garp.h -rw-r--r-- 2.6 KB
gen_stats.h -rw-r--r-- 2.2 KB
genetlink.h -rw-r--r-- 13.2 KB
geneve.h -rw-r--r-- 1.8 KB
gre.h -rw-r--r-- 2.8 KB
gro_cells.h -rw-r--r-- 1.9 KB
gtp.h -rw-r--r-- 593 bytes
gue.h -rw-r--r-- 3.2 KB
hwbm.h -rw-r--r-- 898 bytes
icmp.h -rw-r--r-- 1.5 KB
ieee80211_radiotap.h -rw-r--r-- 12.2 KB
ieee802154_netdev.h -rw-r--r-- 9.1 KB
if_inet6.h -rw-r--r-- 6.1 KB
ila.h -rw-r--r-- 498 bytes
inet6_connection_sock.h -rw-r--r-- 1.1 KB
inet6_hashtables.h -rw-r--r-- 3.5 KB
inet_common.h -rw-r--r-- 1.8 KB
inet_connection_sock.h -rw-r--r-- 10.4 KB
inet_ecn.h -rw-r--r-- 6.0 KB
inet_frag.h -rw-r--r-- 5.0 KB
inet_hashtables.h -rw-r--r-- 12.3 KB
inet_sock.h -rw-r--r-- 8.0 KB
inet_timewait_sock.h -rw-r--r-- 4.1 KB
inetpeer.h -rw-r--r-- 3.4 KB
ip.h -rw-r--r-- 16.8 KB
ip6_checksum.h -rw-r--r-- 2.9 KB
ip6_fib.h -rw-r--r-- 6.7 KB
ip6_route.h -rw-r--r-- 5.9 KB
ip6_tunnel.h -rw-r--r-- 4.6 KB
ip_fib.h -rw-r--r-- 9.3 KB
ip_tunnels.h -rw-r--r-- 11.7 KB
ip_vs.h -rw-r--r-- 46.8 KB
ipcomp.h -rw-r--r-- 620 bytes
ipconfig.h -rw-r--r-- 772 bytes
ipv6.h -rw-r--r-- 28.9 KB
ipx.h -rw-r--r-- 4.3 KB
iw_handler.h -rw-r--r-- 22.2 KB
kcm.h -rw-r--r-- 5.6 KB
l3mdev.h -rw-r--r-- 5.1 KB
lapb.h -rw-r--r-- 4.7 KB
lib80211.h -rw-r--r-- 3.9 KB
llc.h -rw-r--r-- 4.3 KB
llc_c_ac.h -rw-r--r-- 9.3 KB
llc_c_ev.h -rw-r--r-- 10.7 KB
llc_c_st.h -rw-r--r-- 1.7 KB
llc_conn.h -rw-r--r-- 4.0 KB
llc_if.h -rw-r--r-- 2.2 KB
llc_pdu.h -rw-r--r-- 14.1 KB
llc_s_ac.h -rw-r--r-- 1.6 KB
llc_s_ev.h -rw-r--r-- 2.2 KB
llc_s_st.h -rw-r--r-- 947 bytes
llc_sap.h -rw-r--r-- 1.1 KB
lwtunnel.h -rw-r--r-- 4.2 KB
mac80211.h -rw-r--r-- 222.3 KB
mac802154.h -rw-r--r-- 12.5 KB
mip6.h -rw-r--r-- 1.6 KB
mld.h -rw-r--r-- 2.8 KB
mpls.h -rw-r--r-- 1.1 KB
mpls_iptunnel.h -rw-r--r-- 815 bytes
mrp.h -rw-r--r-- 3.0 KB
ndisc.h -rw-r--r-- 5.4 KB
neighbour.h -rw-r--r-- 14.2 KB
net_namespace.h -rw-r--r-- 9.1 KB
net_ratelimit.h -rw-r--r-- 181 bytes
netevent.h -rw-r--r-- 739 bytes
netlabel.h -rw-r--r-- 17.2 KB
netlink.h -rw-r--r-- 38.7 KB
netprio_cgroup.h -rw-r--r-- 1.2 KB
netrom.h -rw-r--r-- 7.6 KB
nexthop.h -rw-r--r-- 821 bytes
nl802154.h -rw-r--r-- 12.0 KB
p8022.h -rw-r--r-- 408 bytes
ping.h -rw-r--r-- 3.4 KB
pkt_cls.h -rw-r--r-- 10.7 KB
pkt_sched.h -rw-r--r-- 3.8 KB
protocol.h -rw-r--r-- 4.0 KB
psnap.h -rw-r--r-- 312 bytes
raw.h -rw-r--r-- 1.8 KB
rawv6.h -rw-r--r-- 543 bytes
red.h -rw-r--r-- 10.0 KB
regulatory.h -rw-r--r-- 10.1 KB
request_sock.h -rw-r--r-- 6.4 KB
rose.h -rw-r--r-- 7.6 KB
route.h -rw-r--r-- 9.5 KB
rtnetlink.h -rw-r--r-- 5.7 KB
sch_generic.h -rw-r--r-- 20.7 KB
scm.h -rw-r--r-- 3.4 KB
secure_seq.h -rw-r--r-- 677 bytes
slhc_vj.h -rw-r--r-- 6.6 KB
snmp.h -rw-r--r-- 5.2 KB
sock.h -rw-r--r-- 62.5 KB
sock_reuseport.h -rw-r--r-- 824 bytes
stp.h -rw-r--r-- 344 bytes
switchdev.h -rw-r--r-- 9.4 KB
tcp.h -rw-r--r-- 55.6 KB
tcp_states.h -rw-r--r-- 1.3 KB
timewait_sock.h -rw-r--r-- 1.1 KB
transp_v6.h -rw-r--r-- 1.8 KB
tso.h -rw-r--r-- 446 bytes
udp.h -rw-r--r-- 10.4 KB
udp_tunnel.h -rw-r--r-- 3.3 KB
udplite.h -rw-r--r-- 3.8 KB
vsock_addr.h -rw-r--r-- 1.0 KB
vxlan.h -rw-r--r-- 11.1 KB
wext.h -rw-r--r-- 1.5 KB
wimax.h -rw-r--r-- 20.0 KB
x25.h -rw-r--r-- 9.3 KB
x25device.h -rw-r--r-- 348 bytes
xfrm.h -rw-r--r-- 49.2 KB

back to top