From nobody Tue Feb 10 21:19:12 2026 Delivered-To: importer@patchew.org Received-SPF: temperror (zoho.com: Error in retrieving data from DNS) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=temperror (zoho.com: Error in retrieving data from DNS) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (208.118.235.17 [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513877783171234.25476610454405; Thu, 21 Dec 2017 09:36:23 -0800 (PST) Received: from localhost ([::1]:60969 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eS4lL-00044j-2r for importer@patchew.org; Thu, 21 Dec 2017 12:36:07 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56220) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eS4jd-0003CZ-Er for qemu-devel@nongnu.org; Thu, 21 Dec 2017 12:34:23 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eS4ja-0007W2-AI for qemu-devel@nongnu.org; Thu, 21 Dec 2017 12:34:21 -0500 Received: from aserp2120.oracle.com ([141.146.126.78]:47448) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1eS4ja-0007VK-3U for qemu-devel@nongnu.org; Thu, 21 Dec 2017 12:34:18 -0500 Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1]) by aserp2120.oracle.com (8.16.0.21/8.16.0.21) with SMTP id vBLHRJM2030111; Thu, 21 Dec 2017 17:34:16 GMT Received: from aserv0021.oracle.com (aserv0021.oracle.com [141.146.126.233]) by aserp2120.oracle.com with ESMTP id 2f0h6ug3mq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 21 Dec 2017 17:34:15 +0000 Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by aserv0021.oracle.com (8.14.4/8.14.4) with ESMTP id vBLHP9K3016901 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 21 Dec 2017 17:25:10 GMT Received: from abhmp0007.oracle.com (abhmp0007.oracle.com [141.146.116.13]) by aserv0121.oracle.com (8.14.4/8.13.8) with ESMTP id vBLHP9AZ027609; Thu, 21 Dec 2017 17:25:09 GMT Received: from strongheart.us.oracle.com (/10.132.90.51) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Thu, 21 Dec 2017 09:25:09 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references; s=corp-2017-10-26; bh=zFnpdLd6z4rr/m0Bh13wz+T1KOHmzr1A1TQB2l/csFs=; b=rgWwB6OrPrugUTNjtHYaj5Qjw4EaZI3AQXeBV0Blr8QWlmfMQpBqehA757E5O02XG0uY IJaw2C3UkH3N0UWdN0FTIiMFEbWSk14vESNrUpAsiRNXITxa86LDkS0N9rCmo7i0dtNa FpljUrLsl4CSRFBuMJX6xGEUnGIw2EDG8FpGH+zBsnNdcEERfvZ8AbI5qbOljL6q+6QF mCs+G9E8msw9a1+n0Xk4ir5AORuD86z2GuqLCDKY8BXsPK5T2pJfrGwkEqJIEiMKmnpJ k3KwsXzCTDeAdbAsi9Nf8VZ2x33ScCfP9NxL4nF9AEAO6/EX7Gw9UyYLo9jPzmS9cdOJ TQ== From: Jack Schwartz To: qemu-devel@nongnu.org Date: Thu, 21 Dec 2017 09:25:15 -0800 Message-Id: <1513877118-3149-2-git-send-email-jack.schwartz@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1513877118-3149-1-git-send-email-jack.schwartz@oracle.com> References: <1513877118-3149-1-git-send-email-jack.schwartz@oracle.com> X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=8752 signatures=668651 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=1 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=618 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1711220000 definitions=main-1712210238 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] [fuzzy] X-Received-From: 141.146.126.78 Subject: [Qemu-devel] [PATCH QEMU v1 1/4] multiboot: bss_end_addr can be zero X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: ehabkost@redhat.com, konrad.wilk@oracle.com, daniel.kiper@oracle.com, mst@redhat.com, pbonzini@redhat.com, rth@twiddle.net Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_6 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" The multiboot spec (https://www.gnu.org/software/grub/manual/multiboot/), section 3.1.3, allows for bss_end_addr to be zero. A zero bss_end_addr signifies there is no .bss section. Suggested-by: Daniel Kiper Signed-off-by: Jack Schwartz Reviewed-by: Daniel Kiper Reviewed-by: Prasad J Pandit --- hw/i386/multiboot.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c index c7b70c9..ff2733d 100644 --- a/hw/i386/multiboot.c +++ b/hw/i386/multiboot.c @@ -233,12 +233,6 @@ int load_multiboot(FWCfgState *fw_cfg, mh_entry_addr =3D ldl_p(header+i+28); =20 if (mh_load_end_addr) { - if (mh_bss_end_addr < mh_load_addr) { - fprintf(stderr, "invalid mh_bss_end_addr address\n"); - exit(1); - } - mb_kernel_size =3D mh_bss_end_addr - mh_load_addr; - if (mh_load_end_addr < mh_load_addr) { fprintf(stderr, "invalid mh_load_end_addr address\n"); exit(1); @@ -249,8 +243,16 @@ int load_multiboot(FWCfgState *fw_cfg, fprintf(stderr, "invalid kernel_file_size\n"); exit(1); } - mb_kernel_size =3D kernel_file_size - mb_kernel_text_offset; - mb_load_size =3D mb_kernel_size; + mb_load_size =3D kernel_file_size - mb_kernel_text_offset; + } + if (mh_bss_end_addr) { + if (mh_bss_end_addr < (mh_load_addr + mb_load_size)) { + fprintf(stderr, "invalid mh_bss_end_addr address\n"); + exit(1); + } + mb_kernel_size =3D mh_bss_end_addr - mh_load_addr; + } else { + mb_kernel_size =3D mb_load_size; } =20 /* Valid if mh_flags sets MULTIBOOT_HEADER_HAS_VBE. --=20 1.8.3.1