
On Tue, Oct 13, 2009 at 10:23:27AM +0100, Mark McLoughlin wrote:
On Mon, 2009-10-12 at 20:37 +0100, Daniel P. Berrange wrote:
The fread_file_lim() function uses fread() but never handles EINTR results, causing unexpected failures when reading QEMU help arg info. It was unneccessarily using FILE * instead of plain UNIX file handles, which prevented use of saferead()
Looks like the same thing Charles Duffy reported here:
http://www.redhat.com/archives/libvir-list/2009-September/msg00662.html
Yes, that's exactly the bug. Of course you would never actually hit this were it not for the other bug I just posted a patch for - that caused the decompressor program to SEGV, and the SIGCHILD from that crash is what causes this function to be interrupted :-) Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|