From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NNBaU-0006LZ-20 for qemu-devel@nongnu.org; Tue, 22 Dec 2009 15:44:10 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NNBaP-0006L1-Hd for qemu-devel@nongnu.org; Tue, 22 Dec 2009 15:44:09 -0500 Received: from [199.232.76.173] (port=34564 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NNBaP-0006Ky-C4 for qemu-devel@nongnu.org; Tue, 22 Dec 2009 15:44:05 -0500 Received: from mail-yx0-f188.google.com ([209.85.210.188]:40642) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NNBaP-0003bN-18 for qemu-devel@nongnu.org; Tue, 22 Dec 2009 15:44:05 -0500 Received: by yxe26 with SMTP id 26so6319676yxe.4 for ; Tue, 22 Dec 2009 12:44:04 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <1261273167-3240-16-git-send-email-kirill@shutemov.name> References: <1261273167-3240-1-git-send-email-kirill@shutemov.name> <1261273167-3240-8-git-send-email-kirill@shutemov.name> <1261273167-3240-9-git-send-email-kirill@shutemov.name> <1261273167-3240-10-git-send-email-kirill@shutemov.name> <1261273167-3240-11-git-send-email-kirill@shutemov.name> <1261273167-3240-12-git-send-email-kirill@shutemov.name> <1261273167-3240-13-git-send-email-kirill@shutemov.name> <1261273167-3240-14-git-send-email-kirill@shutemov.name> <1261273167-3240-15-git-send-email-kirill@shutemov.name> <1261273167-3240-16-git-send-email-kirill@shutemov.name> From: Blue Swirl Date: Tue, 22 Dec 2009 20:43:44 +0000 Message-ID: Subject: Re: [Qemu-devel] [PATCH 16/18] hw/pc.c: fix warnings with _FORTIFY_SOURCE Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Kirill A. Shutemov" Cc: qemu-devel@nongnu.org On Sun, Dec 20, 2009 at 1:39 AM, Kirill A. Shutemov wrote: > =C2=A0CC =C2=A0 =C2=A0i386-softmmu/pc.o > cc1: warnings being treated as errors > /usr/src/RPM/BUILD/qemu-0.11.92/hw/pc.c: In function 'load_multiboot': > /usr/src/RPM/BUILD/qemu-0.11.92/hw/pc.c:614: error: ignoring return value= of 'fread', declared with attribute warn_unused_result > /usr/src/RPM/BUILD/qemu-0.11.92/hw/pc.c: In function 'load_linux': > /usr/src/RPM/BUILD/qemu-0.11.92/hw/pc.c:888: error: ignoring return value= of 'fread', declared with attribute warn_unused_result > /usr/src/RPM/BUILD/qemu-0.11.92/hw/pc.c:889: error: ignoring return value= of 'fread', declared with attribute warn_unused_result > make[1]: *** [pc.o] Error 1 > > Signed-off-by: Kirill A. Shutemov > --- > =C2=A0hw/pc.c | =C2=A0 15 ++++++++++++--- > =C2=A01 files changed, 12 insertions(+), 3 deletions(-) > > diff --git a/hw/pc.c b/hw/pc.c > index db7d58e..83f8dd0 100644 > --- a/hw/pc.c > +++ b/hw/pc.c > @@ -613,7 +613,10 @@ static int load_multiboot(void *fw_cfg, > > =C2=A0 =C2=A0 =C2=A0 =C2=A0 mb_kernel_data =3D qemu_malloc(mb_kernel_size= ); > =C2=A0 =C2=A0 =C2=A0 =C2=A0 fseek(f, mb_kernel_text_offset, SEEK_SET); > - =C2=A0 =C2=A0 =C2=A0 =C2=A0fread(mb_kernel_data, 1, mb_kernel_size, f); > + =C2=A0 =C2=A0 =C2=A0 =C2=A0if (fread(mb_kernel_data, 1, mb_kernel_size,= f) !=3D mb_kernel_size) { > + =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0fprintf(stderr, "fread() faile= d\n"); > + =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0exit(1); > + =C2=A0 =C2=A0 =C2=A0 =C2=A0} > =C2=A0 =C2=A0 =C2=A0 =C2=A0 fclose(f); > =C2=A0 =C2=A0 } > > @@ -887,8 +890,14 @@ static void load_linux(void *fw_cfg, > =C2=A0 =C2=A0 setup =C2=A0=3D qemu_malloc(setup_size); > =C2=A0 =C2=A0 kernel =3D qemu_malloc(kernel_size); > =C2=A0 =C2=A0 fseek(f, 0, SEEK_SET); > - =C2=A0 =C2=A0fread(setup, 1, setup_size, f); > - =C2=A0 =C2=A0fread(kernel, 1, kernel_size, f); > + =C2=A0 =C2=A0if (fread(setup, 1, setup_size, f) !=3D setup_size) { > + =C2=A0 =C2=A0 =C2=A0 =C2=A0fprintf(stderr, "fread() failed\n"); > + =C2=A0 =C2=A0 =C2=A0 =C2=A0exit(1); > + =C2=A0 =C2=A0} > + =C2=A0 =C2=A0if (fread(kernel, 1, kernel_size, f) !=3D kernel_size) { > + =C2=A0 =C2=A0 =C2=A0 =C2=A0fprintf(stderr, "fread() failed\n"); > + =C2=A0 =C2=A0 =C2=A0 =C2=A0exit(1); > + =C2=A0 =C2=A0} > =C2=A0 =C2=A0 fclose(f); > =C2=A0 =C2=A0 memcpy(setup, header, MIN(sizeof(header), setup_size)); Looks fine to me. If we can't read the kernel, PEBCAK.