freebsd-skq/sys
gibbs 5ed6108620 Add suspend/resume support to the Xen blkfront driver.
Sponsored by: BQ Internet

sys/dev/xen/blkfront/block.h:
sys/dev/xen/blkfront/blkfront.c:
	Remove now unused blkif_vdev_t from the blkfront soft.

sys/dev/xen/blkfront/blkfront.c:
	o In blkfront_suspend(), indicate the desire to suspend
	  by changing the softc connected state to SUSPENDED, and
	  then wait for any I/O pending on the remote peer to
	  drain.  Cancel suspend processing if I/O does not
	  drain within 30 seconds.
	o Enable and update blkfront_resume().  Since I/O is
	  drained prior to the suspension of the VM, the complicated
	  recovery process performed by other Xen blkfront
	  implementations is avoided.  We simply tear down the
	  connection to our old peer, and then re-connect.
	o In blkif_initialize(), fix a resource leak and botched
	  return if we cannot allocate shadow memory for our
	  requests.
	o In blkfront_backend_changed(), correct our response to
	  the XenbusStateInitialised state.  This state indicates
	  that our backend peer has published sufficient data for
	  blkfront to publish ring information and other XenStore
	  data, not that a connection can occur.  Blkfront now
	  will only perform connection processing in response to
	  the XenbusStateConnected state.  This corrects an issue
	  where blkfront connected before the backend was ready
	  during resume processing.

Approved by:	re
MFC after:	1 week
2011-09-21 00:02:44 +00:00
..
amd64 Auto-generated code from sys_ prefixing makesyscalls.sh change 2011-09-16 14:04:14 +00:00
arm In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
boot zfstest: rename to zfsboottest and move to tools 2011-09-16 08:22:48 +00:00
bsm Add ECAPMODE, "Not permitted in capability mode", a new kernel errno 2011-03-01 13:14:28 +00:00
cam Fixes for sure bus reference miscounting and potential device and 2011-08-12 20:09:38 +00:00
cddl In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
compat Auto-generated code from sys_ prefixing makesyscalls.sh change 2011-09-16 14:04:14 +00:00
conf Improve the informations reported in case of busy buffers during the shutdown: 2011-09-08 12:56:26 +00:00
contrib Use the correct byte order for the ip_divert(4) mbuf tag port meta 2011-08-25 09:38:33 +00:00
crypto Fix a bug in the result of manual assembly. 2011-03-02 14:56:58 +00:00
ddb Follow up to r225203 refining break-to-debugger run-time configuration 2011-08-27 14:24:27 +00:00
dev Add suspend/resume support to the Xen blkfront driver. 2011-09-21 00:02:44 +00:00
fs In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
gdb Modify kdb_trap() so that it re-calls the dbbe_trap function as long as 2011-02-18 22:25:11 +00:00
geom Add some spare fields to the g_class and g_geom structures needed to implement 2011-07-17 20:35:30 +00:00
gnu Second-to-last commit implementing Capsicum capabilities in the FreeBSD 2011-08-11 12:30:23 +00:00
i386 Auto-generated code from sys_ prefixing makesyscalls.sh change 2011-09-16 14:04:14 +00:00
ia64 In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
isa MFC 2011-05-09 18:53:13 +00:00
kern Fix error handling bug that would prevent MAC structures from getting 2011-09-17 20:48:49 +00:00
kgssapi In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
libkern Fix typos - remove duplicate "is". 2011-02-23 09:22:33 +00:00
mips In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
modules Add IPv6 support to the ng_ipfw(4) [1]. Also add ifdefs to be able 2011-09-15 12:28:17 +00:00
net Make KBI changes required for future MFCing of inpcb rtentry / llentry caching. 2011-09-20 20:27:26 +00:00
net80211 This patch fixes beacon frame sequence number generation. The code 2011-08-24 08:53:33 +00:00
netatalk
netgraph Add IPv6 support to the ng_ipfw(4) [1]. Also add ifdefs to be able 2011-09-15 12:28:17 +00:00
netinet Cleanup the iterator code, remove code that is never executed. 2011-09-19 21:47:20 +00:00
netinet6 Make KBI changes required for future MFCing of inpcb rtentry / llentry caching. 2011-09-20 20:27:26 +00:00
netipsec Update packet filter (pf) code to OpenBSD 4.5. 2011-06-28 11:57:25 +00:00
netipx
netnatm
netncp
netsmb
nfs In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
nfsclient Merge 220876, 220877, and 221537 from the new NFS client to the old: 2011-08-09 15:29:58 +00:00
nfsserver Fix the NFS servers so that they can do a Lookup of "..", 2011-09-03 00:28:53 +00:00
nlm In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
ofed Add the fo_chown and fo_chmod methods to struct fileops and use them 2011-08-16 20:07:47 +00:00
opencrypto Add the fo_chown and fo_chmod methods to struct fileops and use them 2011-08-16 20:07:47 +00:00
pc98 In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
pci Add new device id of D-Link DGE-530T Rev. C controller. DGE-503T 2011-07-30 01:06:12 +00:00
powerpc In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
rpc Make sure RPC calls over UDP return RPC_INTR status is the process has 2011-08-28 18:09:17 +00:00
security In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
sparc64 It is safe to initialize locks even on early boot (and it is the same 2011-09-19 18:29:15 +00:00
sys Auto-generated code from sys_ prefixing makesyscalls.sh change 2011-09-16 14:04:14 +00:00
teken Fix various whitespace inconsistencies in sys/teken. 2011-06-26 18:25:10 +00:00
tools GNU awk does not output escaped newlines in multi-line printc statements. This 2011-03-31 21:33:33 +00:00
ufs Use nowait sync request for a vnode when doing softdep cleanup. We possibly 2011-09-20 21:53:26 +00:00
vm In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
x86 Fix a deficiency in the selinfo interface: 2011-08-25 15:51:54 +00:00
xdr
xen Properly handle suspend/resume events in the Xen device 2011-09-20 23:44:34 +00:00
Makefile Include sys/xen in cscope tag file generation. 2011-06-10 20:51:41 +00:00