Bug 1477459
Summary: | There wasn't any warnings when pc-dimm's slot exceeded 32. | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Min Deng <mdeng> |
Component: | qemu-kvm | Assignee: | Laurent Vivier <lvivier> |
Status: | CLOSED NOTABUG | QA Contact: | Min Deng <mdeng> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 7.4-Alt | CC: | bugproxy, dgibson, hannsj_uhl, knoel, lvivier, michen, qzhang, rbalakri, virt-maint |
Target Milestone: | rc | ||
Target Release: | 7.4-Alt | ||
Hardware: | ppc64le | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2017-08-10 05:49:27 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1440030 |
Description
Min Deng
2017-08-02 07:27:21 UTC
It also can be reproduced on P8 + RHEL7.4,thanks. The limit is not 32 anymore (except for TCG), the limit is given by KVM: hw/ppc/spapr.c: 2091 static void ppc_spapr_init(MachineState *machine) ... 2214 if (machine->ram_size < machine->maxram_size) { 2215 ram_addr_t hotplug_mem_size = machine->maxram_size - machine->ram_size; 2216 /* 2217 * Limit the number of hotpluggable memory slots to half the number 2218 * slots that KVM supports, leaving the other half for PCI and other 2219 * devices. However ensure that number of slots doesn't drop below 32. 2220 */ 2221 int max_memslots = kvm_enabled() ? kvm_get_max_memslots() / 2 : 2222 SPAPR_MAX_RAM_SLOTS; include/hw/ppc/spapr.h: 649 /* 650 * This defines the maximum number of DIMM slots we can have for sPAPR 651 * guest. This is not defined by sPAPR but we are defining it to 32 slots 652 * based on default number of slots provided by PowerPC kernel. 653 */ 654 #define SPAPR_MAX_RAM_SLOTS 32 From kernel: arch/powerpc/kvm/powerpc.c: 486 int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext) 487 { ... 606 case KVM_CAP_NR_MEMSLOTS: 607 r = KVM_USER_MEM_SLOTS; 608 break; arch/powerpc/include/asm/kvm_host.h: 38 39 #define KVM_MAX_VCPUS NR_CPUS 40 #define KVM_MAX_VCORES NR_CPUS 41 #define KVM_USER_MEM_SLOTS 512 42 So the limit is KVM_USER_MEM_SLOTS / 2 = 256 Right, we basically allow more than we used to. Is the 32 slot limit documented somewhere? In that case possibly we should update the documentation. |