From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.8) Gecko/20020204 Description of problem: The rpm command checks for adequate disk space on installs, however the addition of a check for sufficient inodes as well caused the disk space check to be skipped for file systems that report useful disk space via statfs, but not useful inode counts. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1.Attempt an rpm install to a fat or vfat file system w/o enough space 2.The install will fail to recognize the disk space problem Actual Results: One botched install, half finished when it ran out of space. Expected Results: I expected an error message instead. Additional info: This is particular critical for ia64 systems, which install kernels to the /boot/efi directory, which is a vfat file system. Depending on just how far one gets, one could get a system that the end user doesn't know how to reboot again, which is why I rated this bug High severity. Suggested patch: diff -Naur rpm-4.0.4.orig/lib/transaction.c rpm-4.0.4/lib/transaction.c --- rpm-4.0.4.orig/lib/transaction.c Sun Feb 3 14:46:52 2002 +++ rpm-4.0.4/lib/transaction.c Tue Apr 30 12:28:25 2002 @@ -1895,11 +1895,7 @@ dip = ts->di + i; - /* XXX Avoid FAT and other file systems that have not inodes. */ - if (dip->iavail <= 0) - continue; - - if (adj_fs_blocks(dip->bneeded) > dip->bavail) + if (dip->iavail > 0 && adj_fs_blocks(dip->bneeded) > dip->bavail) psAppend(ts->probs, RPMPROB_DISKSPACE, fi->ap, ts->filesystems[i], NULL, NULL, (adj_fs_blocks(dip->bneeded) - dip->bavail) * dip->bsize);
Patch added in my next checkin, should be in rpm-4.1-0.23.