Bug 530778 - Insufficient check for space on /boot - %post script fails
Summary: Insufficient check for space on /boot - %post script fails
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 12
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Kernel Maintainer List
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-10-24 23:57 UTC by Mads Kiilerich
Modified: 2014-01-21 23:11 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-12-13 14:28:24 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Mads Kiilerich 2009-10-24 23:57:34 UTC
Description of problem:

Yum checks for available disk space before installing. But it seems like the check for space on /boot isn't sufficient for kernel installation:

[root@localhost ~]# yum -y update --skip-broken --enablerepo rawhide-debuginfo
...
---> Package kernel-PAE.i686 0:2.6.31.5-96.fc12 set to be installed
---> Package kernel-devel.i686 0:2.6.31.5-96.fc12 set to be installed
...
  Installing     : kernel-PAE-2.6.31.5-96.fc12.i686              23/83 
W: Possible missing firmware ql8100_fw.bin for module qla2xxx.ko
W: Possible missing firmware aic94xx-seq.fw for module aic94xx.ko

gzip: stdout: No space left on device
grubby: error writing ../boot/grub/grub.conf-: No space left on device
...
  Cleanup        : gnome-screensaver-2.28.0-1.fc12.i686          68/83 

grubby: error writing ../boot/grub/grub.conf-: No space left on device
  Cleanup        : kernel-PAE.i686                               69/83 
...
[root@localhost ~]# grep 2.6.31.5 /boot/grub/grub.conf 
[root@localhost ~]# 


I assume it is hard to predict how big the created initrd is, but IIRC yum takes its precautions. Perhaps the new initramfs has new requirements?


(Minor detail: It seems odd that what _must_ be output from kernel uninstall appears before the progress info. Missing flush of stdout/stderr?)


Version-Release number of selected component (if applicable):
yum-3.2.25-1.fc12.noarch

Comment 1 seth vidal 2009-10-26 01:44:24 UTC
yum doesn't do the disk space check itself. It lets rpm do it.

reassigning.

Comment 2 Panu Matilainen 2009-10-26 06:41:32 UTC
Disk space on /boot is checked like everything else, but rpm has no way of knowing beforehand how much disk space scriptlets are going to consume. Especially in the case kernel and /boot that's a lot, even more so since dracut by default creates some kind of "universal" initrd with all the drivers included.

The size of %ghost files is included in the packages and accounted for when checking for disk space requirements, despite the file not actually being included in the package payload. The kernel package should create files of approximate initrd size for the initrd file instead of just touch'ing it, that'll enable rpm to make better estimate of the space needed although it can't be fully accurate as the initrd size can vary between hosts.

Comment 3 Dave Jones 2009-10-26 21:58:28 UTC
I checked in a diff to f12 & devel that replaces the touch with a 20MB dd from /dev/zero.

Comment 4 Bug Zapper 2009-11-16 14:14:04 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 12 development cycle.
Changing version to '12'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 5 Mads Kiilerich 2009-12-13 14:28:24 UTC
Seems to be solved, closing.


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