This is version 4 of the full patchset pulling in all prior changes posted to the list. Two patches sent separately to apply on top of the prior set have been included in this set.
Cooperative Memory Overcommitment (CMO) is a pSeries platform feature that enables the allocation of more memory to a set logical partitions than is physically present. For example, a system with 16Gb of memory can be configured to simultaneously run 3 logical partitions each with 8Gb of memory allocated to them. The system firmware can page out memory as needed to meet the needs of each partition. To minimize the effects of firmware paging memory, the Collaborative Memory Manager (CMM) driver acts as a balloon driver to work with firmware to provide memory ahead of any paging needs. The OS is provided with an entitlement of IO memory for device drivers to map. This amount varies with the number of virtual IO adapters present and can change as devices are hot-plugged. The VIO bus code distributes this memory to devices. Logical partitions supporting CMO may only have virtual IO devices, physical devices are not supported. Above the entitled level, IO mappings can fail and the IOMMU needed be updated to handle this change. Virtual IO adapters have been updated to handle DMA mapping failures and to size their entitlement needs. Platform support for for CMM and hot-plug entitlement events are also included in the following patches. The changes should have minimal impact to non-CMO enabled environments. This patch set has been written against 2.6.26 and has been tested at that level. Regards, Robert Jennings _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev