Bug 2219374

Summary: s390x/memory_hotplug: standby memory are onlined automatically during boottime
Product: [Fedora] Fedora Reporter: sumanth <sumanth.korikkar>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 38CC: acaringi, adscvr, airlied, alciregi, bskeggs, dan, hca, hdegoede, hpa, jarodwilson, josef, kernel-maint, lgoncalv, linville, masami256, mchehab, ptalbert, steved
Target Milestone: ---   
Target Release: ---   
Hardware: s390x   
OS: Linux   
Whiteboard:
Fixed In Version: kernel-6.5.5-100.fc37 kernel-6.5.5-200.fc38 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-09-27 02:37:28 UTC Type: ---
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: 467765    

Description sumanth 2023-07-03 11:31:06 UTC
CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is enabled on fedora s390 kernel config. This leads to autoonlining of standby memory on zvm during boottime.

Reproducible: Always

Steps to Reproduce:
1. s390 zvm configuration:
#cp define storage 12g standby 3g

2. boot the z/vm

3. Result:
* lsmem
RANGE                                 SIZE  STATE REMOVABLE BLOCK
0x0000000000000000-0x00000003bfffffff  15G online       yes  0-59

Memory block size:       256M
Total online memory:      15G
Total offline memory:      0B

4. grep -R "CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE" config-6.2.9-300.fc38.s390x 
CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y


Actual Results:  
* grep -R "CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE" config-6.2.9-300.fc38.s390x 
CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y

* lsmem
RANGE                                 SIZE  STATE REMOVABLE BLOCK
0x0000000000000000-0x00000003bfffffff  15G online       yes  0-59

Memory block size:       256M
Total online memory:      15G
Total offline memory:      0B



* Due to enablement of auto online feature, all the standby memory are 
converted to online during boottime. 

Expected Results:  
* lsmem
RANGE                                 SIZE   STATE REMOVABLE BLOCK
0x0000000000000000-0x00000002FFFFFFFF   12G  online       yes   0-47
0x0000000300000000-0x00000003BFFFFFFF   3G   offline            48-59

Memory block size:         256M
Total online memory:       12G
Total offline memory:      3G

* Auto online feature should be disabled on s390x. 
* The  CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE config is already disabled on upstream s390 kernel defconfig, as this is recommended.

* Redhat fixes reference:
https://bugzilla.redhat.com/show_bug.cgi?id=1370161

* Redhat has disabled the autoonline feature:
grep -R "CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE" config-5.14.0*.el9.s390x 
# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set

Comment 1 Dan HorĂ¡k 2023-09-01 14:12:51 UTC
Yes, I think makes sense. Please feel free to open a MR for the ARK kernel project at https://gitlab.com/cki-project/kernel-ark/ to get it updated. The docs are at https://cki-project.gitlab.io/kernel-ark/

In RHEL there are udev rules for cpu and memory online-ing, but they are skipping s390x, see https://github.com/redhat-plumbers/systemd-rhel9/blob/main/rules.d/40-redhat.rules for details.

Comment 2 sumanth 2023-09-05 09:00:15 UTC
1.CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is disabled (s390) on os-build and fedora-39 build. Thank you.

https://gitlab.com/cki-project/kernel-ark/-/commit/e7abb86e3f05bbdd1c180a09b7324baa9a290c28
https://koji.fedoraproject.org/koji/buildinfo?buildID=2283051

2. Tested on kernel 6.5.1-300.fc39


2a.  cat config-6.5.1-300.fc39.s390x | grep CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE
# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set

2b. Also tested on boottime. Not autoonlined anymore.
Memory block size:       256M
Total online memory:      12G
Total offline memory:      4G

uname -a
6.5.1-300.fc39.s390x #1 SMP Sat Sep  2 15:45:29 UTC 2023 s390x GNU/Linux


Thanks

Comment 3 Fedora Update System 2023-09-19 17:02:00 UTC
FEDORA-2023-4c8291ba6a has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2023-4c8291ba6a

Comment 4 Fedora Update System 2023-09-19 17:02:02 UTC
FEDORA-2023-3100e4d61c has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2023-3100e4d61c

Comment 5 Fedora Update System 2023-09-20 01:15:13 UTC
FEDORA-2023-4c8291ba6a has been pushed to the Fedora 38 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-4c8291ba6a`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-4c8291ba6a

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2023-09-20 02:15:11 UTC
FEDORA-2023-3100e4d61c has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-3100e4d61c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-3100e4d61c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 7 Fedora Update System 2023-09-25 01:33:20 UTC
FEDORA-2023-3100e4d61c has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-3100e4d61c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-3100e4d61c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 8 Fedora Update System 2023-09-25 01:44:08 UTC
FEDORA-2023-4c8291ba6a has been pushed to the Fedora 38 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-4c8291ba6a`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-4c8291ba6a

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Fedora Update System 2023-09-27 02:37:28 UTC
FEDORA-2023-3100e4d61c has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 10 Fedora Update System 2023-09-27 02:43:25 UTC
FEDORA-2023-4c8291ba6a has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.