VDI.copy: add extra arguments for deltas, and copying "into"

VDI.copy now takes arguments:
 vdi: the disk to copy
 base: if present, we will copy differences from here only
 SR: if no "into" VDI is provided, a fresh VDI will be created
     in this SR
 into: if present, the existing disk we will write the blocks into

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
xe vdi-copy: add new arguments base-vdi-uuid and into-vdi-uuid

We also make sr-uuid optional, since only one of sr-uuid and
into-vdi-uuid should be provided.

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
VDI.copy: add implementation for 'base' and 'into' arguments

If 'base' is provided then we will perform a delta-copy.
If 'into' is provided then we will copy into this existing VDI,
  otherwise we will create a fresh VDI in the SR given by 'sr'

However:
* if 'into' is read-only then we will fail with VDI_READONLY
* if 'into' is too small then we will fail with VDI_TOO_SMALL
* if 'base' is provided but the destination VDI (either 'into'
  or the fresh one we created in 'sr') does not support spareness
  then we fail with VDI_NOT_SPARSE

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
quicktest: add a test for new VDI.copy functionality

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
CA-122467: Fix for setting the right value of memory_actual after vm is started

There is a race condition between vm_start and monitor thread.
The monitor thread runs every 5s and updates the memory changes of the
VMs if any. It does that only if the VM's resident_on value is set to
localhost.
Currently, the memory changes are being seen by monitor thread while
VM is starting but since the start operation has'nt yet set the
resident_on, the monitor thread doesn't do anything.
However, the in-memory cache of monitor thread already has the vm_memory
changes for that VM. This needs to be removed, so that monitor thread
updates it next time when the resident_on value of the VM is set by
start operation.
Signed-off-by: Ravi Pandey <ravi.pandey@citrix.com>
CP-6649 Rename /etc/modprobe.d/blacklist-bridge to /etc/modprobe.d/blacklist-bridge.conf

Newer versions of udev warn about modprobe.d files without .conf suffix, and future versions may stop loading them entirely
Merge pull request #1581 from zli/xenserver/trunk-ring3/CP-6679

CP- 6679: VDI.copy with "base" and "into"
Merge pull request #1584 from alexbrett/CP-6649

CP-6649 Rename /etc/modprobe.d/blacklist-bridge to /etc/modprobe.d/black...
CA-125060: add bash completion for '{base,into}-vdi-uuid' params of 'xe vdi-copy'

Signed-off-by: Rob Hoes <rob.hoes@citrix.com>
Merge pull request #1600 from robhoes/vdi

CA-125060: add bash completion for '{base,into}-vdi-uuid' params of 'xe ...
CP-6172: Don't specify VBD backend-kind by default

Rather than defaulting this value (meaning we have to keep parity with
xenopsd), leave the default to be determined by xenopsd itself by not
specifying a backend-kind.

Signed-off-by: Si Beaumont <simon.beaumont@citrix.com>
Merge pull request #1603 from simonjbeaumont/cp-6172-xapi-part

CP-6172: Don't specify VBD backend-kind by default
SCTX-1649: Set SO_KEEPALIVE on server sockets

This ensures that a TCP connection is cleaned up on the server, when
the connection is closed on the client without the server knowing (for
example, if a FIN packet is not sent or went missing).

This does not affect idle connections, or long-running
XenAPI calls.

Signed-off-by: Rob Hoes <rob.hoes@citrix.com>
Merge pull request #1604 from robhoes/master

SCTX-1649: Set SO_KEEPALIVE on server sockets
CA-126652: sr-introduce CLI doesn't record sm-config param

This is not consistent with either sr-create CLI or sr-introduce API, which both take and record the sm-config param happily.

Signed-off-by: Zheng Li <zheng.li@eu.citrix.com>
Merge pull request #1618 from zli/xenserver/master/CA-126652

CA-126652
Switch GRO by default (again)

Signed-off-by: Rob Hoes <rob.hoes@citrix.com>
Merge pull request #1636 from robhoes/master

Switch GRO by default (again)
Merge pull request #1579 from ravippandey/CA-122467

CA-122467: Fix for setting the right value of memory_actual after vm is ...
CP-7684: Tweak perfmon to report io_errors.
Signed-off-by: Siddharth Vinothkumar <siddharth.vinothkumar@citrix.com>