Commit Graph

864 Commits

Author SHA1 Message Date
Dietmar Maurer
ac39eb187d bump version to 3.4-9 2016-06-09 18:00:26 +02:00
Wolfgang Bumiller
efef9eb295 split old style pipe open call 2016-06-09 17:59:34 +02:00
Dietmar Maurer
c2625f1052 bump version to 3.4-8 2016-03-09 13:29:22 +01:00
Wolfgang Bumiller
e092f2e97b fix #909: pass rate to tap_plug()
When using OVS tap_plug() resets rate limiting so we need
to pass it along to reapply it.

The rate on its own can still be hot-plugged with the
regular tap_rate_limit() call.
2016-03-09 13:28:43 +01:00
Dietmar Maurer
1f16c5938e bump version to 3.4-7 2016-02-20 10:30:32 +01:00
Dominik Csapak
d81508fbb9 deactivate volumes if vm start command fails
prevents volumes to be active when they are not actually in use
this is a cleanup of Dhaussy Alexandre's patch from 02/15/2016

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2016-02-20 10:29:51 +01:00
Dietmar Maurer
020d4cbb78 bump version to 3.4-6 2015-05-12 07:36:56 +02:00
Alexandre Derumier
41dcd3fa1a qmp drive-mirror : set big timeout
drive-mirror is doing lseek on source image before starting, and this can take a lot of time for big nfs volume
during this time, qmp socket is hanging
http://lists.nongnu.org/archive/html/qemu-devel/2015-05/msg01838.html
so we need to setup a big timeout

qemu devs are currently working to fix this

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-05-12 07:35:34 +02:00
Alexandre Derumier
57bdd47055 qemu-mirror : block job complete : use ready flag
Since qemu 2.2, a new "ready" flag has been added to blockjob
http://git.qemu.org/?p=qemu.git;a=commit;h=ef6dbf1e46ebd1d41ab669df5bba0bbdec6bd374
to known if we can complete it.

we can't use len==offset to known if all block are mirrored, because behaviour will change soon in qemu 2.3

http://git.qemu.org/?p=qemu.git;a=commit;h=b21c76529d55bf7bb02ac736b312f5f8bf033ea2
"block/mirror: Improve progress report

Instead of taking the total length of the block device as the block
job's length, use the number of dirty sectors. The progress is now the
number of sectors mirrored to the target block device. Note that this
may result in the job's length increasing during operation, which is
however in fact desirable.
"

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-05-12 07:35:29 +02:00
Dietmar Maurer
6929c57d04 bump version to 3.4-5 2015-04-27 10:38:06 +02:00
Wolfgang Link
efbe8373a8 implement offline migration on zfs
Signed-off-by: Wolfgang Link <w.link@proxmox.com>
2015-04-27 10:35:14 +02:00
Wolfgang Link
633821b9d3 fix bug #618: correct typo
Signed-off-by: Wolfgang Link <w.link@proxmox.com>
2015-04-10 07:03:57 +02:00
Dietmar Maurer
a4211883aa bump version to 3.4-4 2015-04-10 07:01:57 +02:00
Wolfgang Link
f167b18104 fix bug #617: change command arrangement
the ovs-vsctl del-port flush the tc settings.
So we have to change the arrangement of setting up the network.

Signed-off-by: Wolfgang Link <w.link@proxmox.com>
2015-04-10 06:58:59 +02:00
Alexandre Derumier
6ed759bc83 use aio=native only with O_DIRECT (cache=none|directsync)
Currently qemu auto fallback to aio=threads if cache=none|directsync
It's better to handle that correctly

see:
https://bugzilla.redhat.com/show_bug.cgi?id=1086704

http://wiki.qemu.org/ChangeLog/2.3
Future incompatible changes:
Block device parameter aio=native has no effect without cache.direct=on. It will be made an error.

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-04-04 09:56:22 +02:00
Dietmar Maurer
94fe2d1f84 update changelog 2015-03-09 08:28:39 +01:00
Alexandre Derumier
5ce9d8a5d3 always setup balloon polling interval.
we always need to enable pooling interval, because it doesn't seem to be setup with -machine option

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-03-09 08:27:57 +01:00
Dietmar Maurer
0ba86e4d52 bump version to 3.4-3 2015-03-09 08:20:45 +01:00
Alexandre Derumier
0db7470a53 vmstatus : use vcpus if defined
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-03-09 08:19:55 +01:00
Dietmar Maurer
9cce0178ff Revert "balloon: use qom-get for guest balloon statistics V5"
This reverts commit 09f7c4dfbc.
2015-03-09 08:12:20 +01:00
Dietmar Maurer
d6fe761323 bump version to 3.4-2 2015-03-06 09:55:18 +01:00
Alexandre Derumier
09f7c4dfbc balloon: use qom-get for guest balloon statistics V5
changelog:

we use MB, not bytes

$d->{balloon} = int($info->{stats}->{"stat-total-memory"}/1024/1024);
$d->{freemem} = int($info->{stats}->{"stat-free-memory"}/1024/1024);

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-03-06 09:52:33 +01:00
Alexandre Derumier
719e634f74 drive_add : escape \ character
storage.cfg
-----------
rbd mystorage
    monhost 10.5.0.11:6789; 10.5.0.12:6789; 10.5.0.13:6789

drive_add auto "file=rbd:poolceph1/vm-101-disk-8:mon_host=10.5.0.11\\:6789; 10.5.0.12\\:6789; 10.5.0.13\\:6789:id=admin:auth_supported=cephx:keyring=/etc/pve/priv/ceph/cephzimbra.keyring,if=none,id=drive-virtio2,aio=native,cache=none,detect-zeroes=on"

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-03-05 14:00:43 +01:00
Alexandre Derumier
cd65bfe887 bugfix : allow manual balloning if shares = 0
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-03-03 06:26:31 +01:00
Dietmar Maurer
880aeaa585 bump version to 3.4-1 2015-03-02 06:51:19 +01:00
Dietmar Maurer
3030d2d35c fix max allowed vcpus error message 2015-03-02 06:45:57 +01:00
Dietmar Maurer
025e1d900b correct use hash with keys 2015-02-27 12:58:41 +01:00
Dietmar Maurer
915a73d67b bump version to 3.3-20 2015-02-15 09:06:30 +01:00
Dietmar Maurer
7498eb64a3 correctly set and remove lock 2015-02-15 09:04:30 +01:00
Dietmar Maurer
0d750e4f29 bump version to 3.3-19 2015-02-14 09:24:41 +01:00
Dietmar Maurer
34758d6608 commit pending values when changing CDROM 2015-02-14 09:20:41 +01:00
Dietmar Maurer
66822b6aaf bump version to 3.3-18 2015-02-13 09:05:44 +01:00
Alexandre Derumier
8b6c557980 bugfix : add missing queues nic option in print_net
Currently the nic queues option is removed when we try to update config

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-02-13 06:59:50 +01:00
Dietmar Maurer
093725e829 bump version to 3.3-17 2015-02-12 10:19:56 +01:00
Wolfgang Link
ba4eea15e6 QemuServer: check snapshot befor rollback
this will check, if it is possibel to rollback a snapshot befor VM will shutdown and get locked.

Signed-off-by: Wolfgang Link <w.link@proxmox.com>
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
2015-02-12 10:17:53 +01:00
Dietmar Maurer
6e62a21f17 vm_devices_list: make sure $device->{'qdev_id'} is set 2015-02-12 08:31:22 +01:00
Alexandre Derumier
200644a7f9 vm_devices_list : list devices behind pci bridge
This fix hotplug for devices behind bridges, like nic6->24 for example

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-02-12 08:31:22 +01:00
Dietmar Maurer
4de1bb2523 fix CDROM hotplug 2015-02-12 08:00:14 +01:00
Dietmar Maurer
996635e58d cleanup error messages 2015-02-12 07:11:17 +01:00
Dietmar Maurer
a0b79d95fe bump version to 3.3-16 2015-02-11 06:32:40 +01:00
Stefan Priebe
f8fa2ed734 QemuServer: fix wrong binding of pci root ports, bridges or switches to vfio
Signed-off-by: Stefan Priebe <s.priebe@profihost.ag>
2015-02-11 06:31:41 +01:00
Dietmar Maurer
515c82a9b7 update changelog 2015-02-10 13:01:54 +01:00
Wolfgang Link
8ead5ec7dc bug 597: hotplug fix
wrap params in dopple quotes, so spaces will accept.

Signed-off-by: Wolfgang Link <w.link@proxmox.com>
2015-02-10 13:01:24 +01:00
Alexandre Derumier
51a6f637d2 memory hotplug option is not hotpluggable
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-02-10 06:32:08 +01:00
Dietmar Maurer
3605aaa626 bump version to 3.3-15 2015-02-09 07:05:29 +01:00
Alexandre Derumier
e059fb4ded add foreach_dimm sub
and use it in memory hotplug and config_to_cmd

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-02-09 07:04:16 +01:00
Dietmar Maurer
cd9698629f bump version to 3.3-14 2015-01-28 07:12:11 +01:00
Alexandre Derumier
4d3f29edd4 memory hotplug patch v10
This patch allow to hotplug memory dimm modules
though a new option : dimm_memory

The dimm modules are generated from a map

     dimmid       size  dimm_memory
     dimm0        512        512     100.00 0
     dimm1        512       1024      50.00 1
     dimm2        512       1536      33.33 2
     dimm3        512       2048      25.00 3
     dimm4        512       2560      20.00 0
     dimm5        512       3072      16.67 1
     dimm6        512       3584      14.29 2
     dimm7        512       4096      12.50 3
     dimm8        512       4608      11.11 0
     dimm9        512       5120      10.00 1
    dimm10        512       5632       9.09 2
    dimm11        512       6144       8.33 3
    dimm12        512       6656       7.69 0
    dimm13        512       7168       7.14 1
    dimm14        512       7680       6.67 2
    dimm15        512       8192       6.25 3
    dimm16        512       8704       5.88 0
    dimm17        512       9216       5.56 1
    dimm18        512       9728       5.26 2
    dimm19        512      10240       5.00 3
    dimm20        512      10752       4.76 0
    ...

   dimm241      65536    3260416       2.01 1
   dimm242      65536    3325952       1.97 2
   dimm243      65536    3391488       1.93 3
   dimm244      65536    3457024       1.90 0
   dimm245      65536    3522560       1.86 1
   dimm246      65536    3588096       1.83 2
   dimm247      65536    3653632       1.79 3
   dimm248      65536    3719168       1.76 0
   dimm249      65536    3784704       1.73 1
   dimm250      65536    3850240       1.70 2
   dimm251      65536    3915776       1.67 3
   dimm252      65536    3981312       1.65 0
   dimm253      65536    4046848       1.62 1
   dimm254      65536    4112384       1.59 2
   dimm255      65536    4177920       1.57 3

max dimm_memory size is 4TB, which is the current qemu limit

If the dimm_memory value is not aligned on memory module, we align the dimm_memory on the next module.

vmid.conf
---------
memory: 1024
numa:1
hotplug: memmory

when hotplug memory option is enabled, the minimum memory value must be 1GB, and also numa need to be enabled.

we assign the first 1GB as static memory, splitted on each numa nodes.
The remaining memory is assigned on hotpluggable dimm devices.

The static memory need to be also 128MB aligned, to have other dimm devices aligned too.

This 128MB alignment is a linux limitation, windows can align on 2MB size.

Numa need to be aligned, as linux guest don't boot on some setup with multi sockets,
and windows need numa to be able to hotplug memory

hotplug
----
qm set <vmid> -memory X    (where X is bigger than current value)

unplug (not yet implemented in qemu)
------
qm set <vmid> -memory X  (where X is lower than current value)

linux guest
-----------
-acpi hotplug module should be loaded in guest
-need a recent kernel. (tested with 3.10)

can be enable automaticaly, adding:

/lib/udev/rules.d/80-hotplug-cpu-mem.rules
SUBSYSTEM=="cpu", ACTION=="add", TEST=="online", ATTR{online}=="0", \
 ATTR{online}="1"

SUBSYSTEM=="memory", ACTION=="add", TEST=="state", ATTR{state}=="offline", \
 ATTR{state}="online"

windows guest
-------------

tested with:

- windows 2012 standard
- windows 2008 enterprise/datacenter

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-01-28 07:06:37 +01:00
Dietmar Maurer
d2896a14d5 bump version to 3.3-13 2015-01-27 12:39:48 +01:00
Dietmar Maurer
45827685a7 use PVE::Tools::split_list 2015-01-27 11:05:36 +01:00