From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38729) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YgDgV-0004BQ-OO for qemu-devel@nongnu.org; Thu, 09 Apr 2015 10:44:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YgDgP-0000OC-QV for qemu-devel@nongnu.org; Thu, 09 Apr 2015 10:43:59 -0400 Received: from mx1.redhat.com ([209.132.183.28]:59092) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YgDgP-0000O4-Hp for qemu-devel@nongnu.org; Thu, 09 Apr 2015 10:43:53 -0400 Date: Thu, 9 Apr 2015 16:43:36 +0200 From: Igor Mammedov Message-ID: <20150409164336.3d864600@nial.brq.redhat.com> In-Reply-To: References: <1428055432-12120-1-git-send-email-zhaoshenglong@huawei.com> <1428055432-12120-11-git-send-email-zhaoshenglong@huawei.com> <877ftl1n4j.fsf@linaro.org> <20150409151718.5eb49015@nial.brq.redhat.com> <20150409155119.0cf5bc94@nial.brq.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH v4 10/20] hw/arm/virt-acpi-build: Generate RSDT table List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: hangaohuai@huawei.com, Laszlo Ersek , "Michael S. Tsirkin" , Alexander Spyridakis , Mark Salter , Claudio Fontana , QEMU Developers , "Huangpeng (Peter)" , Hanjun Guo , Shannon Zhao , Paolo Bonzini , Alex =?UTF-8?B?QmVubsOpZQ==?= , Christoffer Dall , Shannon Zhao On Thu, 9 Apr 2015 14:59:09 +0100 Peter Maydell wrote: > On 9 April 2015 at 14:51, Igor Mammedov wrote: > > On Thu, 9 Apr 2015 14:27:58 +0100 > > Peter Maydell wrote: > > > >> On 9 April 2015 at 14:17, Igor Mammedov wrote: > >> > On Thu, 09 Apr 2015 13:50:52 +0100 > >> > Alex Benn=C3=A9e wrote: > >> > > >> >> > >> >> Shannon Zhao writes: > >> >> > + for (i =3D 0; i < table_offsets->len; ++i) { > >> >> > + /* rsdt->table_offset_entry to be filled by Guest linker= */ > >> >> > + bios_linker_loader_add_pointer(linker, > >> >> > + ACPI_BUILD_TABLE_FILE, > >> >> > + ACPI_BUILD_TABLE_FILE, > >> >> > + table_data, &rsdt->table_= offset_entry[i], > >> >> > + sizeof(uint32_t)); > >> >> > >> >> Why are these pointers always 32 bit? Can they ever be 64 bit? > >> > Laszlo, can you confirm that UEFI puts APCI tables below 4G address = space? > >> > >> In the general case you can't guarantee that there will > >> be any RAM at all below the 4G point. (The virt board > >> isn't like that, obviously, but I believe there's real > >> hardware out there that's designed that way.) I don't > >> think we should have any 32 bit assumptions in the > >> code at all -- pointer values should always be 64 bits > >> everywhere. > > > > then that forces us to use xsdt instead of 32-bit rsdt >=20 > Does that matter much? not much, using rsdt would allow to share this code with x86. also having tables below 4Gb in rsdt would make life of 32 bit guests easier, not that there are such guests now and may be there wouldn't be any. >=20 > -- PMM >=20