Bug 26870

Summary: URPMI and RPM hangs if rootfs has no free space
Product: Mageia Reporter: Albert Rayanov <northsoft>
Component: RPM PackagesAssignee: Mageia Bug Squad <bugsquad>
Status: RESOLVED INVALID QA Contact:
Severity: minor    
Priority: Normal CC: davidwhodgins
Version: Cauldron   
Target Milestone: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Source RPM: urpmi-8.123-1.mga8, rpm-4.16.0-0.beta3.2.mga8 CVE:
Status comment:

Description Albert Rayanov 2020-06-28 10:08:14 CEST
Description of problem:
If there is no free space at root partition, URPMI and RPM freeze with no error messages, don't respond to SIGINT.

Version-Release number of selected component (if applicable):
urpmi-8.123-1.mga8, rpm-4.16.0-0.beta3.2.mga8

How reproducible:
Always

Steps to Reproduce:
1. dd if=/dev/zero of=/zeros.dat
2. urpmi some_unknown_package &
3. echo "No idea what's wrong unless rpm -vv --rebuilddb"
Comment 1 Dave Hodgins 2020-06-28 15:26:27 CEST
While urpmi could check for free space prior to starting, that wouldn't help
if the free space disappears during use, due to other tasks.

This is under the control of the kernel. The rpm or urpmi task will be stuck
in a device wait state waiting for the kernel i/o module to return. The rpm
or urpmi task can not even ask the kernel how much free space remains without
also getting stuck in a device wait state. It's the device wait state that
stops SIGINT from working, since the kernel will not kill it's own i/o module.

This is not a bug that can be fixed by Mageia. It's considered user error.

Closing the bug report as invalid.

Status: NEW => RESOLVED
CC: (none) => davidwhodgins
Resolution: (none) => INVALID