Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							c22a6ebb84 
							
						 
					 
					
						
						
							
							DVM: make qvm-get-default-template use the default template, if asked  
						
						... 
						
						
						
						Via options --default-template and --default-script 
						
					 
					
						2010-09-21 18:40:15 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							c0cac005ec 
							
						 
					 
					
						
						
							
							Tiny logging fix in qfileexchgd  
						
						... 
						
						
						
						...that is impossible to happen, naturally. 
						
					 
					
						2010-09-21 16:00:40 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							ca1122cd6a 
							
						 
					 
					
						
						
							
							Add QubesDisposableVm and use class  
						
						
						
					 
					
						2010-09-21 15:59:22 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							6afdffa96f 
							
						 
					 
					
						
						
							
							qvm-dom0-network-via-netvm script (ticket  #20 )  
						
						
						
					 
					
						2010-09-21 13:36:46 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							4e7ce5f90c 
							
						 
					 
					
						
						
							
							qubes.py: another small fix to QubesHost :)  
						
						
						
					 
					
						2010-09-16 20:11:35 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							8292c25713 
							
						 
					 
					
						
						
							
							Merge branch 'qmemman' of git://qubes-os.org/rafal/core  
						
						
						
					 
					
						2010-09-16 20:01:40 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							157a18c244 
							
						 
					 
					
						
						
							
							qubes.py: a small fix to QubesHost  
						
						
						
					 
					
						2010-09-16 18:47:05 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							268789fc4c 
							
						 
					 
					
						
						
							
							dom0/qvm-core/qubes.py: added QubesHost class  
						
						
						
					 
					
						2010-09-16 17:52:52 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							c411519220 
							
						 
					 
					
						
						
							
							qmemman: do not trim the mem-set value too much  
						
						... 
						
						
						
						We used to mem-set the domain to 0.995*calculated_value; 5 promils of 4GB
is ca 19MB, and it is too visible. Use 0.999 instead of 0.995 
						
					 
					
						2010-09-16 16:40:09 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							eea01fba3b 
							
						 
					 
					
						
						
							
							qmemman: in is_balance_req_significant(), account for Xen free memory  
						
						
						
					 
					
						2010-09-16 16:00:07 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							e476531b0e 
							
						 
					 
					
						
						
							
							Leave XEN_FREE_MEM_LEFT of Xen free memory.  
						
						... 
						
						
						
						Needed for driver domain, to be able to get contiguous memory for
its drivers. 
						
					 
					
						2010-09-16 15:57:11 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							0f1700ef3d 
							
						 
					 
					
						
						
							
							Merge branch 'comment1' of git://qubes-os.org/rafal/core  
						
						... 
						
						
						
						Conflicts:
	dom0/restore/qubes_restore.c 
						
					 
					
						2010-09-16 15:55:35 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							70f8a7401c 
							
						 
					 
					
						
						
							
							Make 'make clean' clean all the object files  
						
						
						
					 
					
						2010-09-15 15:36:04 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							9b8c018bc2 
							
						 
					 
					
						
						
							
							Merge branch 'qmemman' of git://qubes-os.org/rafal/core  
						
						
						
					 
					
						2010-09-13 15:05:13 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							0c1f21a28e 
							
						 
					 
					
						
						
							
							qmemman: when a AppVM is low on memory, allow small adjustments  
						
						... 
						
						
						
						A small AppVM (say, with 100MB total) can go below prefmem, and
still not be assigned memory, because of the MIN_TOTAL_MEMORY_TRANSFER
threshold.
So, if AppVM is below prefmem, allow for smaller mem-sets. 
						
					 
					
						2010-09-10 11:35:30 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							f6e3607d2d 
							
						 
					 
					
						
						
							
							qmemman: offload some processing to meminfo-writer  
						
						... 
						
						
						
						Make meminfo-writer compute used memory, and report to qmemman only if
it has changed significantly enough. As it is written in C, its code is
much faster that qmemman-server; also in the idle case, it saves on xenstore
communication overhead. Allows to send updates up to 10 times per second,
with CPU load on the VM below 0.1%. 
						
					 
					
						2010-09-09 17:51:53 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							51e14fc8bb 
							
						 
					 
					
						
						
							
							qmemman: trigger do_balance() on receiving /proc/meminfo data  
						
						
						
					 
					
						2010-09-09 12:36:18 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							f4e46b63a4 
							
						 
					 
					
						
						
							
							qmemman: in client code, set FD_CLOEXEC on qmmemman.socket  
						
						
						
					 
					
						2010-09-09 12:33:48 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							7545789a26 
							
						 
					 
					
						
						
							
							qmemman: now parse_meminfo takes a single argument  
						
						
						
					 
					
						2010-09-09 11:30:02 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							9c609a23bf 
							
						 
					 
					
						
						
							
							qmemman: move /proc/meminfo parsing to qmemman_algo  
						
						... 
						
						
						
						Just cosmetics, to make code layout more coherent. 
						
					 
					
						2010-09-09 11:24:04 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							24b3baf063 
							
						 
					 
					
						
						
							
							qmemman: use 'Memtotal' from /proc/meminfo to calculate used memory  
						
						... 
						
						
						
						Previously, memory_actual (retrieved from xen) was used; it can be inconsistent.
'Memtotal' can be spoofed, but anyway we rely on other fields from /proc/meminfo. 
						
					 
					
						2010-09-09 11:08:20 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							5a33ed71ce 
							
						 
					 
					
						
						
							
							qmemman: use the fact that balloon driver retries  
						
						... 
						
						
						
						Apparently even if there is not enough xen memory to balloon up,
balloon driver will try to fulfill the request later, when
some memory is freed. Thus, in do_balloon, do not limit mem_set
to the available memory. 
						
					 
					
						2010-09-09 10:36:13 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							87d1e973c7 
							
						 
					 
					
						
						
							
							qmemman: print balance stats only when updating  
						
						
						
					 
					
						2010-09-09 10:29:35 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							8d377d19dc 
							
						 
					 
					
						
						
							
							DVM: added missing fix_savefile_all  
						
						
						
					 
					
						2010-09-07 17:45:52 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							6472e8c926 
							
						 
					 
					
						
						
							
							DVM: fix savefile to contain ip address  
						
						... 
						
						
						
						needed for routed networking 
						
					 
					
						2010-09-07 17:36:28 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							2dd9bab23a 
							
						 
					 
					
						
						
							
							DVM: add --dvm option to qvm-start  
						
						... 
						
						
						
						Currently it only forces to use a fake IP address, which can be
replaced during restore time. 
						
					 
					
						2010-09-07 16:15:24 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							5be12f8459 
							
						 
					 
					
						
						
							
							qmemman: switch off memory balancing when doing xm save  
						
						... 
						
						
						
						Apparently, it interferes:
INFO (XendCheckpoint:417) ERROR Internal error: Could not get vcpu context
INFO (XendCheckpoint:417) ERROR Internal error: Failed to map/save the p2m frame list 
						
					 
					
						2010-09-07 16:00:14 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							11abef3439 
							
						 
					 
					
						
						
							
							qmemman: xc.domain_set_target_mem can throw exceptions, too  
						
						
						
					 
					
						2010-09-07 13:10:48 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							a013973806 
							
						 
					 
					
						
						
							
							Use vif-route-qubes.  
						
						
						
					 
					
						2010-09-06 17:24:12 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							31e7e96056 
							
						 
					 
					
						
						
							
							Switch to routed VM network (instead of bridging)  
						
						... 
						
						
						
						No headache from layer 2 attacks. 
						
					 
					
						2010-09-06 17:07:42 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							64e8013dc2 
							
						 
					 
					
						
						
							
							Unify dom0 and netvm sysconfig/iptables  
						
						... 
						
						
						
						Plus:
- dedicated chain for DNAT to nameservers
- prevent intervm networking. Can be conveniently overriden in necessary cases
by inserting ACCEPT clauses (per VM, probably) at the top of FORWARD 
						
					 
					
						2010-09-06 15:10:01 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							22df517425 
							
						 
					 
					
						
						
							
							qmemman: detect domain list change by watching /vm, not /local/domain  
						
						... 
						
						
						
						The latter triggers on every memory/meminfo key update, which needlessly
adds xenstore requests. 
						
					 
					
						2010-09-06 10:46:36 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							7dcb7cb196 
							
						 
					 
					
						
						
							
							qmemman: don't use xenapi, use hypercalls to do mem-set  
						
						
						
					 
					
						2010-09-03 16:19:48 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							10408d61db 
							
						 
					 
					
						
						
							
							qmemman: when low on memory, do not make a VM go below prefmem  
						
						... 
						
						
						
						Now the balance() has two different cases: enough memory and low_on_memory.
In the former, distribute memory proportianally; in the former, dont do this, as this
makes a VM go below prefmem. 
						
					 
					
						2010-09-01 12:40:02 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							80771763cf 
							
						 
					 
					
						
						
							
							qmemman: limit total memory transfer, not each one  
						
						
						
					 
					
						2010-09-01 10:39:39 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							c66e0848f3 
							
						 
					 
					
						
						
							
							qmemman: limit domain memory to 2G to workaround for xen xml-rpc limitation  
						
						... 
						
						
						
						File "/usr/lib64/python2.6/xmlrpclib.py", line 710, in dump_int
    raise OverflowError, "int exceeds XML-RPC limits"
OverflowError: int exceeds XML-RPC limits
How crappy. 
						
					 
					
						2010-08-31 16:19:01 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							de2619fbed 
							
						 
					 
					
						
						
							
							qmemman: wrap xenapi.memset within try/except  
						
						... 
						
						
						
						It can fail e.g. when a domain is being shutdown with a pretty
message like
 File "/usr/lib64/python2.6/site-packages/xen/xend/XendDomainInfo.py", line 1322, in setMemoryTarget
    (target * 1024))
Error: (1, 'Operation not permitted') 
						
					 
					
						2010-08-31 15:53:24 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							eb6755e93c 
							
						 
					 
					
						
						
							
							qmemman: fix locking  
						
						... 
						
						
						
						We want balance() to wait on a lock even after balloon() has finished,
until socket client has closed. 
						
					 
					
						2010-08-30 14:50:48 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							2eba4c1c15 
							
						 
					 
					
						
						
							
							I will test before commit. I will test before commit. I will...  
						
						
						
					 
					
						2010-08-30 12:01:42 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							f3561b7aad 
							
						 
					 
					
						
						
							
							Fix restore completion detection in appvm/qubes_core  
						
						
						
					 
					
						2010-08-30 11:43:30 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							62487c0f1e 
							
						 
					 
					
						
						
							
							Memory management across VMs, first release  
						
						
						
					 
					
						2010-08-30 11:40:19 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							8a022d7904 
							
						 
					 
					
						
						
							
							core.git/dom0/pendrive_swapper/README  
						
						
						
					 
					
						2010-08-03 09:03:32 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							cee9d6b4d6 
							
						 
					 
					
						
						
							
							Added comments to nonobvious code fragments  
						
						
						
					 
					
						2010-08-03 07:12:59 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							4d26334709 
							
						 
					 
					
						
						
							
							dom0/init.d/qubes_core: set Dom0 mem to 1600M  
						
						
						
					 
					
						2010-07-30 16:00:18 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							557984f4b9 
							
						 
					 
					
						
						
							
							minor ident fixes  
						
						
						
					 
					
						2010-07-30 15:59:43 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							4cf0a61858 
							
						 
					 
					
						
						
							
							Before restoring DVM, check for available xen memory  
						
						... 
						
						
						
						As we already do xm mem-set 0 800 in qubes_core, this is a
correct check. Now, there should be no errors from qubes_restore
in normal circumstances. 
						
					 
					
						2010-07-27 16:08:09 +02:00 
						 
				 
			
				
					
						
							
							
								Joanna Rutkowska 
							
						 
					 
					
						
						
						
						
							
						
						
							3856f7cdbd 
							
						 
					 
					
						
						
							
							qvm-create-default-dvm: use gray label for dvm-template (be consitent with VM template label)  
						
						
						
					 
					
						2010-07-27 12:47:18 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							b578aab5d5 
							
						 
					 
					
						
						
							
							qubes_prepare_saved_domain.sh: Check exit code of xm save  
						
						
						
					 
					
						2010-07-21 12:57:02 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							aa894b5700 
							
						 
					 
					
						
						
							
							qvm-create-default-dvm script  
						
						
						
					 
					
						2010-07-21 12:57:02 +02:00 
						 
				 
			
				
					
						
							
							
								Rafal Wojtczuk 
							
						 
					 
					
						
						
						
						
							
						
						
							d46bf2a270 
							
						 
					 
					
						
						
							
							Pathnames cleanup  
						
						... 
						
						
						
						Move internal scripts to /usr/lib/qubes plus a couple of similar. 
						
					 
					
						2010-07-21 12:57:02 +02:00