Joanna Rutkowska
0863244561
dom0: qvm-backup-restore: also restore appmenus for template VMs
2011-09-12 14:28:44 +02:00
Joanna Rutkowska
f2770e2d03
dom0: Fix create_xenstore_entries in other classes to not require xid argument
2011-09-09 18:49:15 +02:00
Marek Marczykowski
2319083631
dom0: use default kernel opts when custom opts isn't set
...
This can happen after rpm upgrade.
2011-09-09 14:24:17 +02:00
Joanna Rutkowska
583720c676
dom0: qvm-dom0-upgrade: actually check if running as root only when used 'manually'
2011-09-08 14:12:56 +02:00
Joanna Rutkowska
89d532ef11
dom0: qubes.py: do not use pci=nomsi as a default argument for passthrough VM kernels anymore
2011-09-08 14:09:03 +02:00
Joanna Rutkowska
b2a3515f4f
dom0: qvm-dom0-upgrade: fail when run as non-root user
2011-09-08 13:55:33 +02:00
Marek Marczykowski
f9fcd3393e
dom0: set static-max for dom0
...
To make 'xl mem-set 0 <size>' happy.
2011-09-08 01:19:59 +02:00
Marek Marczykowski
5e09af2b46
dom0: limit default swiotlb size for NetVM ( #342 )
2011-09-08 01:19:25 +02:00
Marek Marczykowski
6b4cf305d8
dom0/qvm-backup: include custom kernel of StandaloneVM
2011-09-06 01:52:48 +02:00
Marek Marczykowski
320847de91
dom0: correctly remove appmenus for ServiceVM (if any)
2011-09-06 01:17:09 +02:00
Marek Marczykowski
77ec31d164
dom0: appmenus templates handling for StandaloneVM ( #317 )
...
StandaloneVM also needs apps.templates dir in order to qubes-appmenu-select
works. Also can be helpful for backup/restore.
2011-09-06 01:15:35 +02:00
Marek Marczykowski
c1f0296e66
dom0: automatically determine domain xid in create_xenstore_entries
2011-09-06 01:14:49 +02:00
Marek Marczykowski
2d97c3399e
dom0/qvm-dom0-upgrade: Run yum after downloading new packages
...
yum will ask for confirmation.
2011-09-03 16:43:22 +02:00
Marek Marczykowski
f85fcc06aa
dom0: replace obsolete swiotlb=force with iommu=soft
2011-09-03 16:15:02 +02:00
Marek Marczykowski
5cb6cd2aa7
dom0: fix uses_default_kernelopts typo
2011-09-03 16:14:51 +02:00
Marek Marczykowski
07dc5d1430
dom0: detach vif at qvm-dom0-network-via-netvm down
2011-09-03 16:14:12 +02:00
Marek Marczykowski
2b26350cb2
dom0/qvm-prefs: remove message duplication
2011-09-03 16:13:35 +02:00
Marek Marczykowski
58985193e7
dom0: move network-attach logic to qubes.py
...
Main reason is to remove code duplication.
Also fixes #260 and workaround (by sleep...) some race at NetVM restart
(fronted driver does not noticed vif-detach+vif-attach).
2011-09-03 16:13:14 +02:00
Marek Marczykowski
5fe147729d
dom0: copy only selected files for StandaloneVM kernel
...
Especially ignore modules dir - already included in modules.img
2011-09-03 16:04:25 +02:00
Marek Marczykowski
7f24727b2b
dom0: fix waiting for vif detach
2011-09-03 16:01:22 +02:00
Marek Marczykowski
73fc87efa2
dom0: replace obsolete xencons=hvc with console=hvc0
2011-09-03 16:00:21 +02:00
Joanna Rutkowska
16a46f9a9c
Use proper dracut module and conf files...
...
... instead of the ugly and incompatible /usr/share/qubes/regenerate_initramfs.sh script
2011-09-02 16:55:39 +02:00
Marek Marczykowski
11da1633d3
dom0: Copy default template kernel to StandaloneVM dir ( #333 )
...
Just prepare kernel for qvm-set -s <vmname> kernel none
2011-09-01 15:01:37 +02:00
Marek Marczykowski
ac917ef1d8
dom0: Set modules.img device R/W for StandaloneVM ( #333 )
2011-09-01 14:56:23 +02:00
Marek Marczykowski
577dd2b076
dom0: when cleaning up network devices, wait for actual device destroy
...
Otherwise subsequent network-attach will not be noticed by frontend driver.
2011-09-01 00:01:53 +02:00
Marek Marczykowski
951b2b0b69
dom0: fix clock problems which caused VM hangs during boot (~#253)
...
The source of problem was clockevent_program_event returns -ETIME:
------------ kernel/time/clockevents.c:
/**
* clockevents_program_event - Reprogram the clock event device.
* @expires: absolute expiry time (monotonic clock)
*
* Returns 0 on success, -ETIME when the event is in the past.
*/
int clockevents_program_event(struct clock_event_device *dev, ktime_t
expires,
ktime_t now)
-------------
xen_vcpuop_set_next_event schedules event by getting current time
(xen_clocksource_read()) (*1) adding delta (expires-now) and programming
event with VCPUOP_set_singleshot_timer hypercall. Then xen gets current
time (*2) and in some rare cases this time is after expected timer
expiration... Even after VCPUOP_set_singleshot_timer hypercal,
xen_clocksource_read() reports time slightly in the past comparing to
xen time (reported by NOW() macro).
I think this is because "current" time is calculated different way in *1
and *2. The *1 way is controlled by tsc_mode, which is described here:
http://lxr.xensource.com/lxr/source/docs/misc/tscmode.txt . Default
tsc_mode=0 is "smart" and I think because of that can be slightly before
NOW() time. tsc_mode=2 is almost the same as NOW() macro works.
After all tsc_mode=2 was default in xen-3.4.
2011-08-31 22:08:24 +02:00
Marek Marczykowski
be5e5a98a1
dom0: use full patch for network script
...
xl (apart from xm) doesn't prefix script with dir.
2011-08-31 22:01:08 +02:00
Marek Marczykowski
f5f69c904e
dom0/qvm-run: Add -p as alias for --pass_io
2011-08-31 21:01:24 +02:00
Marek Marczykowski
3cf1af0321
dom0: implement custom kernelopts ( #323 )
2011-08-31 20:39:26 +02:00
Marek Marczykowski
691545c492
dom0/qvm-prefs: support for vcpus count
2011-08-31 19:41:36 +02:00
Marek Marczykowski
fbce32ae1f
dom0/qvm-prefs: info when kernel setting is from template
2011-08-31 18:32:37 +02:00
Joanna Rutkowska
ccda3d6642
dom0: make qvm-sync-dom0-clock executable
2011-08-02 14:24:43 +02:00
Joanna Rutkowska
9c58c97571
dom0: qubes-watch-updates & qvm-dom0-upgrade: use qvm-sync-dom0-clock
2011-08-02 14:14:50 +02:00
Joanna Rutkowska
49bfe8921c
dom0: qvm-sync-dom0-clock
2011-08-02 14:12:03 +02:00
Joanna Rutkowska
708263bec4
Revert "Dom0: use kpackagekit for updates GUI"
...
This reverts commit 94c0f6c9d3
.
Kpackagekit is not so nice-behaving as gpk-update-viewer is,
e.g. it complains there are is no network connectivity, and, perhaps
as a result, doesn't display the list of avilable updates.
2011-08-02 13:01:42 +02:00
Joanna Rutkowska
94c0f6c9d3
Dom0: use kpackagekit for updates GUI
2011-08-01 16:07:53 +02:00
Joanna Rutkowska
7309cc2f04
Merge branch 'prebeta2' of git.qubes-os.org:/var/lib/qubes/git/rafal/core
2011-08-01 15:41:56 +02:00
Rafal Wojtczuk
d2301ab125
qvm-prefs: allow on the fly netvm switch ( #302 )
...
When changing netvm of a running vm, detach/attach eth0.
Some functionality of qubes_core_netvm thus is duplicated in setup_ip.
REQUIRES http://git.qubes-os.org/?p=rafal/xen.git;a=commit;h=42c72e6173586a807f8f153391e2e57352d362b1
2011-08-01 15:06:01 +02:00
Rafal Wojtczuk
f264b76a61
qvm-backup: handle standaloneVM properly
...
Do not attempt to copy apps.templates; copy apps/ instead.
2011-08-01 11:14:35 +02:00
Joanna Rutkowska
7a6ccae638
Dom0: set metadata_expiry=0 for qubes-dom0-cached repo
...
This way the list of dowloaded packages (via qvm-dom0-upgrade) will be immediately seen by yum.
2011-07-30 14:07:35 +02:00
Joanna Rutkowska
7a12cbd0e8
Dom0: restart ehci_hcd module on resume for all netvms ( #299 )
2011-07-30 11:20:11 +02:00
Joanna Rutkowska
71209b5b39
Merge branch 'prebeta2' of git.qubes-os.org:/var/lib/qubes/git/rafal/core
2011-07-30 11:01:23 +02:00
Rafal Wojtczuk
8ecd6134d9
firewall: call iptables-restore once per domain ( #311 )
...
qubes.py now places rules for each domain in a separate key under
/local/domain/fw_XID/qubes_iptables_domainrules/
plus the header in /local/domain/fw_XID/qubes_iptables_header.
/local/domain/fw_XID/qubes_iptables is now just a trigger.
So, if iptables-restore fails dues to e.g. error resolving a domain name
in a rules for a domain, then only this domain will not get connectivity,
others will work fine.
2011-07-29 16:50:12 +02:00
Rafal Wojtczuk
4ad919bf6d
Correct usage of "date -s" when syncing clock in dom0
...
Apparently, "date -s" does not like the output of "date +%s.%N".
While at it, add basic date format sanitization.
2011-07-29 12:12:15 +02:00
Rafal Wojtczuk
6fc358bd20
dispvm: honour current choice of template for dispvm
...
... when auto-refreshing the dispvm savefile.
While at it, also copy dispvm-prerun.sh script in qvm-clone.
2011-07-26 17:09:59 +02:00
Rafal Wojtczuk
3df2e9783d
dispvm: when updating savefile on demand, present zenity progress bar
2011-07-26 16:36:59 +02:00
Marek Marczykowski
002fad72c4
dom0+vm: Polishing qvm-dom0-upgrade ( #287 )
...
Do not print error message when no package downloaded. Also some more covenient
usage when dowloading new packages (implied --resolve --nogui).
2011-07-25 13:45:36 +02:00
Joanna Rutkowska
5e95380db9
dom0: qvm-prefs: allow to change template for a VM
2011-07-24 23:24:45 +02:00
Joanna Rutkowska
2b2cae61ee
Merge branch 'prebeta2' of git.qubes-os.org:/var/lib/qubes/git/rafal/core
2011-07-24 17:20:33 +02:00
Rafal Wojtczuk
dc4d9b32f1
Add comments to policy files.
2011-07-22 16:11:03 +02:00
Rafal Wojtczuk
c23cc480b8
qrexec: use $anyvm and $dispvm symbols
2011-07-22 16:07:06 +02:00
Rafal Wojtczuk
7cfbe1c7d8
qubes.py: postpone qmmeman.close()
...
There are indications that when parent "xl" process exits, the domain is not
booted completely; and xl actions may interfere with qmemman memory balancing.
Thus, in VM.start(), we delay releasing of qmemman handle until qrexec_daemon
connects successfully.
2011-07-22 15:07:04 +02:00
Rafal Wojtczuk
9192a42b91
qmemman: when balooning, make sure that past mem-set will not steal memory
2011-07-22 13:40:21 +02:00
Rafal Wojtczuk
2fc5d190fd
qmemman: calculate dom0 maxmem properly
...
In fact, set to ALL_PHYS_MEM (and the same for other domains that do not
have static-max key, although there should not be any). Previous method
of using maxmem_kb was broken, as qmemman sets maxmem_kb to the memory target
(which I do not like btw).
2011-07-22 11:33:11 +02:00
Marek Marczykowski
1b1073d1ff
dom0: Force NetVM shutdown ( #304 )
...
Just allow to shut down netvm and firewallvm at the same time.
2011-07-21 01:01:31 +02:00
Marek Marczykowski
342261ff10
dom0: Do not clone config file with template
...
Not needed any more
2011-07-21 00:49:03 +02:00
Marek Marczykowski
1b093d5cc4
dom0/qvm-clone-template: *_xen_storage call once again... ( #291 )
2011-07-21 00:48:57 +02:00
Marek Marczykowski
6fc8d1b811
dom0/qvm-backup: ignore *-dvm VMs ( #292 )
2011-07-21 00:14:25 +02:00
Marek Marczykowski
fd4821a1ff
dom0/qvm-backup: update list of backed up files ( #294 )
...
Config and kernel not needed any more, but added appmenus list.
2011-07-21 00:12:54 +02:00
Marek Marczykowski
1dc226aba1
dom0/qvm-backup-restore: remove --recreate-conf-files option ( #295 )
...
Now useless, as config files are regenerated at each VM start
2011-07-21 00:04:57 +02:00
Marek Marczykowski
c9ad2314ea
dom0: variable names conflict ( #290 )
...
uuid is also name of (used here) python module...
2011-07-20 16:12:28 +02:00
Marek Marczykowski
f1153a5413
dom0: initialize vmtype in create_appmenus ( #212 )
2011-07-20 16:06:22 +02:00
Marek Marczykowski
c1f4fcc172
dom0: qvm-backup-restore change restore loop logic ( #212 )
2011-07-20 16:02:57 +02:00
Joanna Rutkowska
2c2b7111eb
sony-vaio-fixes v1.6.1
...
* display quirks no longer needed for 2.6.38 kernel
* i8042.nopnp no longer needed for 2.6.38 kernel
2011-07-17 14:15:14 +02:00
Joanna Rutkowska
4044c2da8b
dom0: qvm-run: Disable verbose mode when using --pass_io
...
We should really fix all the qvm-rools to use stderr for diagnastic output instead...
2011-07-17 13:56:09 +02:00
Marek Marczykowski
99dfdd70c3
dom0: Hide some messages from 'xl' tool ( #265 )
2011-07-17 01:54:27 +02:00
Marek Marczykowski
700aff406f
dom0: create link also for dvm.conf ( #262 )
2011-07-17 01:30:44 +02:00
Marek Marczykowski
e5a0fc4d05
dom0: force permissions on qubes-dom0-cache repo dirs
2011-07-17 01:30:44 +02:00
Marek Marczykowski
906741c361
dom0: do not use os.getlogin()
...
It doesn't work when VM started from init.d script
2011-07-17 01:30:44 +02:00
Marek Marczykowski
059ecb3224
dom0: run netvm+firewallvm daemons as group qubes
...
To give them access to X server.
2011-07-17 01:30:44 +02:00
Marek Marczykowski
79d593e191
dom0: Allow UID as parameter to qfile-dom0-unpacker
2011-07-17 01:28:14 +02:00
Marek Marczykowski
4f10835d83
dom0: create directory for rpm updates ( #198 )
2011-07-17 01:20:13 +02:00
Marek Marczykowski
7c5aa0d3ea
dom0: Place DispVM savefile in shm only when exists ( #262 )
2011-07-17 01:20:13 +02:00
Marek Marczykowski
182e1ccf2b
dom0: watch for updates from dom0 ( #198 )
...
Additionally synchronize clock every 6h. This is started by xdg-autostart (not
qvm-core) to have running Xorg - needed to prompt user for updates download.
2011-07-17 01:20:13 +02:00
Marek Marczykowski
02ae961bf0
dom0: hide warnings from tar ( #265 )
...
Unfortunately tar in Fedora 13 is to old to support --warning option, which
disables only particular kind of warnings..
2011-07-17 01:20:13 +02:00
Marek Marczykowski
4607428c38
dom0: validate downloaded packages names ( #198 )
2011-07-17 01:20:13 +02:00
Marek Marczykowski
49257d488b
dom0+vm: download updates as normal user ( #198 )
2011-07-17 01:20:13 +02:00
Marek Marczykowski
977b058395
dom0: implement size/file-count limit of downloaded updates ( #198 )
...
Currently limit is 2GB and 2048 files, but can be adjusted by env variables
(UPDATES_MAX_BYTES, UPDATES_MAX_FILES).
2011-07-17 01:20:13 +02:00
Marek Marczykowski
60d14758d6
dom0: create xen-hotplug state dir
2011-07-17 01:20:06 +02:00
Marek Marczykowski
8121e80db0
dom0: script for initrd regeneration ( #7 )
2011-07-15 12:52:01 +02:00
Marek Marczykowski
a68faecc35
dom0: initialize default_kernel parameter
2011-07-15 12:24:27 +02:00
Marek Marczykowski
a5429c31fa
dom0: provide explicit config path to xl save
...
The default behaviour is to take it from /var/lib/xen, where files are created
with mode 600, so unable to read it as normal user.
2011-07-14 02:11:51 +02:00
Marek Marczykowski
7bf51a71e7
dom0: Set correct qubes_vm_type for DispVM ( #271 )
2011-07-13 01:21:55 +02:00
Marek Marczykowski
8a933a76ec
dom0: Fix appmenu-select desktop file name ( #266 )
2011-07-12 19:46:00 +02:00
Marek Marczykowski
9f67e5de9d
dom0: Regenerate appmenus also for TemplateVM in create_appmenus()
2011-07-10 23:39:48 +02:00
Marek Marczykowski
0813f49186
dom0: Clone whitelisted-apps.list with template clone
2011-07-10 23:37:35 +02:00
Marek Marczykowski
817735fc92
dom0: Do not copy obsolete apps-template.templates dir on template clone
2011-07-10 23:36:50 +02:00
Marek Marczykowski
4bab5e8834
dom0: Use appmenu directory template directly from /usr/share/qubes
...
This allows to use common apps.templates for both AppVM and TemplateVM menu
items.
2011-07-10 23:33:21 +02:00
Marek Marczykowski
1d2680944c
dom0: qvm-pci verify PCI device before adding
2011-07-09 23:48:55 +02:00
Marek Marczykowski
87ebdeefd4
dom0: use qrexec_client instead of qvm-run to not start guid
...
guid doesn't makes sense in /etc/init.d/qubes_netvm
2011-07-09 21:20:36 +02:00
Marek Marczykowski
f6609cb1c4
dom0: minor #252 fix
2011-07-09 20:43:57 +02:00
Marek Marczykowski
7f940cefde
dom0: load pciback module ( #252 )
2011-07-09 20:43:27 +02:00
Marek Marczykowski
3543b0271e
dom0: Fix QfileDaemonDvm error message
2011-07-09 17:56:40 +02:00
Marek Marczykowski
973d79e932
dom0: remove calls to not existing *_xen_storage methods in qvm-*
2011-07-09 17:56:06 +02:00
Marek Marczykowski
aa77d13170
dom0: reload firewall rules after DispVM start ( #247 )
2011-07-09 17:54:23 +02:00
Marek Marczykowski
7e234a4a8d
dom0: store dispid in QubesDisposableVm object and generate proper IP ( #247 )
2011-07-09 17:52:47 +02:00
Marek Marczykowski
ff70ded003
dom0: fix typo in qfile-daemon-dvm
2011-07-09 16:52:55 +02:00
Marek Marczykowski
371fdf5884
Merge branch 'qrexec2' of git://git.qubes-os.org/rafal/core
2011-07-09 16:52:54 +02:00
Marek Marczykowski
202fb0c676
dom0: fix syntax
2011-07-09 00:36:00 +02:00
Marek Marczykowski
3e6bd65b73
Revert "[REMOVEME] Dom0: Add UGLY sleeps hoping they will temporarily prevent the race condition"
...
This reverts commit 3bd1c700f6
.
Conflicts:
dom0/qvm-core/qubes.py
2011-07-08 21:38:24 +02:00