On Mon, Oct 06, 2014 at 06:14:59PM -0500, Jan Echternach wrote:
Package: libefivar0
Version: 0.12-1
Severity: critical
Justification: breaks the whole system
Upgrading libefivar0 from version 0.10-5 to 0.12-1 causes a segmentation
fault when running efibootmgr without arguments (I tried it with both
efibootmgr 0.7.0-2 and 0.9.0-1). I'm not quite sure if severity critical is
justified, but I think a broken efibootmgr is at least potentially able to
break the whole system.
gdb pointed to libefivar.so.0 which has no debugging symbols, so I built my
own and that one crashes in vars.c line 165 with var == NULL. The last two
lines in an strace log before the crash are
open("/sys/firmware/efi/vars/Boot0005-8be4[...]/raw_var", O_RDONLY) = 3
read(3, [...], 4096) = -1 EIO (Input/output error)
(Sorry, no copy&paste, just read&type; the system in question has only very
limited network connectivity at the moment and I'm sending this report from
a different system.)
var is apparently returned from a call to read_file() a few lines above.
The source code history shows that read_fd() has recently been replaced by
read_file(), but they behave differently after read errors. In particular,
read_file() resets the buffer to NULL whereas read_fd() didn't.
Jan,
Can you confirm whether this is still an issue for you? New versions of
libefivar0 are in testing and unstable. Please test against them.
--Jared
--
Jared DomÃnguez
Server OS Engineering
Dell | Enterprise Solutions Group
--
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org