Bug 1262098 - /boot partition is too small (200MB) when using custom partitioning
/boot partition is too small (200MB) when using custom partitioning
Status: CLOSED CURRENTRELEASE
Product: Beaker
Classification: Community
Component: general (Show other bugs)
21
ppc Linux
medium Severity medium (vote)
: 21.1
: ---
Assigned To: Dan Callaghan
tools-bugs
: Patch
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-09-10 15:34 EDT by Anthony Gialluca
Modified: 2015-10-20 23:25 EDT (History)
11 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-10-20 23:25:14 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
job xml to verify (6.61 KB, text/plain)
2015-10-08 23:43 EDT, Dan Callaghan
no flags Details

  None (edit)
Description Anthony Gialluca 2015-09-10 15:34:26 EDT
Description of problem:
system generates following kickstart
options for storage:
-----------------------------------------------------------------
zerombr
clearpart --drivesystem generates following kickstart
options for storage:
-----------------------------------------------------------------
zerombr
clearpart --drives sda --all --initlabel

part None --fstype 'PPC PReP Boot' --size 8 --ondisk=sda
part /boot --size 200 --recommended --asprimary --ondisk=sda
part / --size 1024 --grow --ondisk=sda
part swap --recommended --ondisk=sda
-----------------------------------------------------------------

Boot partition is too small to install 2nd RHEL7 kernel, which is causing
KT1 jobs to abort.

Version-Release number of selected component (if applicable):


How reproducible:
Always reproducible.

Steps to Reproduce:
1.
2.
3.

Actual results:
Boot partition too small.

Expected results:
Request a Boot Partition of approx 500 MB.

Additional info:
N/A
Comment 2 Dan Callaghan 2015-09-16 21:45:14 EDT
My preferred solution is drop --size 200, leaving --recommended, for the /boot line. Need to check:

* does RHEL have a documented minimum or recommended size for /boot?
* will all Anaconda releases use a sensible size if we have --recommended and no --size?
Comment 3 Roman Joost 2015-09-16 21:46:04 EDT
To be considered for inclusion in the 21.1 bugfix release.
Comment 4 Dan Callaghan 2015-10-05 21:22:24 EDT
There is no reason to think that this only affects ppc64, except that maybe the ppc64 kernels are bigger than others so that's the first place we hit this problem.
Comment 5 Dan Callaghan 2015-10-05 21:39:07 EDT
RHEL6 docs recommend 250MB for /boot, and indicate that each kernel consumes 10MB.

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s2-diskpartrecommend-x86.html
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s2-diskpartrecommend-ppc.html

For RHEL7 the recommendations were doubled (20MB for each kernel, 500MB for /boot):

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/sect-disk-partitioning-setup-x86.html#sect-recommended-partitioning-scheme-x86
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/sect-disk-partitioning-setup-ppc.html#sect-recommended-partitioning-scheme-ppc

RHEL5 recommended 100MB for /boot/efi on ia64, 100MB for /boot on POWER, and 250MB for /boot on x86 (but the inconsistencies are probably just a docs bug):

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Installation_Guide/s1-diskpartitioning-x86.html#s2-diskpartrecommend-x86
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Installation_Guide/s1-diskpartitioning-ppc.html#s2-diskpartrecommend-ppc

RHEL3 and RHEL4 docs recommended 100MB:

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/3/html/Installation_Guide_x8664/s1-diskpartitioning.html
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/3/html/Installation_Guide_ppc/s1-diskpartitioning.html
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Installation_Guide_x8664/s2-diskpartrecommend.html
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Installation_Guide_IBM_POWER_Architecure/s2-diskpartrecommend.html
Comment 6 Dan Callaghan 2015-10-06 01:10:43 EDT
Unfortunately in RHEL up to RHEL6 the --recommended option for the part command doesn't actually have any effect for partitions other than swap (contrary to what the docs indicate).

The installation bails out with:

Partition requires a size specification

Newer Anaconda in RHEL7/Fedora happily accepts the --recommended option, it seems to pick 500MB for the partition size which matches the recommendation in the docs.

So it looks like we can have --recommended without --size by default, with some hardcoded sizes as a fallback on older RHELs.
Comment 7 Dan Callaghan 2015-10-06 01:12:37 EDT
I guess we will want to use 200MB for RHEL3 and RHEL4 (which is larger than the recommended size, but it matches Beaker's current behaviour), 250MB for RHEL5 (matching the recommendation for x86, assuming that the 100MB recommendation for some arches was a mistake), and 250MB for RHEL6 (matching the recommendation).
Comment 8 Dan Callaghan 2015-10-06 03:37:02 EDT
http://gerrit.beaker-project.org/4425
Comment 9 Dan Callaghan 2015-10-08 23:40:39 EDT
Steps to verify:
Run a recipe on all supported distros, use fstype= to trigger custom partitioning, use /distribution/command to check size of boot partition using "df -h".
Because each release has different supported filesystems we need different fstype= values:
RHEL4: fstype=ext3
RHEL5: fstype=ext3
RHEL6: fstype=ext4
RHEL7: fstype=xfs (fstype=ext4 should be fine too)
F18: fstype=ext4
F19: fstype=ext4
F20: fstype=ext4
F21: fstype=ext4
F22: fstype=ext4

Expected results:
On Fedora and RHEL7, the generated kickstart should contain a line like this (no --size option):
part /boot --fstype ext4 --recommended --asprimary
and the resulting boot partition size should be 500MB.

On RHEL5/6 the kickstart should contain a line like:
part /boot --fstype ext4 --size 250 --recommended --asprimary
and the resulting boot partition size should be 250MB.

On RHEL3/4 the kickstart should contain a line like:
part /boot --fstype ext3 --size 200 --recommended --asprimary
and the resulting boot partition size should be 200MB.

RHEL3 is optional at this point because we are no longer supporting it.
Comment 10 Dan Callaghan 2015-10-08 23:43 EDT
Created attachment 1081177 [details]
job xml to verify

This is the job XML I ran in my Beaker environment to verify.

I was seeing an issue with the Fedora installations randomly failing with an Anaconda error like this:

IOException: Partition(s) 5 on /dev/vda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot now before making further changes.

but I don't think it's related to this patch. I can see from the Anaconda logs that it was going to use 500MB as the boot partition size (as expected). There are also many old and not fully resolved Fedora bug reports about this error. I suspect it is something specific to the VM setup I have in my Beaker environment.
Comment 14 Dan Callaghan 2015-10-20 23:25:14 EDT
Beaker 21.1 has been released.

Note You need to log in before you can comment on or make changes to this bug.