The target machine must have sufficient free memory to accommodate the migration of a domain. In addition, the following properties must be maintained across the migration:
You must be able to create the same number of identically sized memory blocks.
The physical addresses of the memory blocks do not need to match but the same real addresses must be maintained across the migration.
In addition, the layout of the available memory on the target machine must be compatible with the memory layout of the domain to be migrated or the migration will fail. In particular, if the memory on the target machine is fragmented into multiple small address ranges but the domain to be migrated requires a single large address range, the migration will fail. The following example illustrates this scenario.
The domain to be migrated, ldg1, also has 8 Gbytes of free memory that is laid out in two memory blocks. The target has the memory laid out in three memory blocks some of which are too small.
source# ldm ls -o memory ldg1 NAME ldg1 MEMORY RA PA SIZE 0x80000000 0x400000000 2G 0x400000000 0x880000000 6G target# ldm ls-devices mem MEMORY PA SIZE 0x180880000000 5632M 0x301f70000000 2G 0x381b20000000 512M
Given this memory layout situation, the migration fails:
source# ldm migrate -n ldg1 target Target Password: Free memory layout and congruency requirements prevent binding the memory block with PA 0x880000000, RA 0x400000000, and size 6G Domain Migration of LDom ldg1 would fail if attempted