From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shannon Zhao Subject: Re: Design doc of adding ACPI support for arm64 on Xen - version 2 Date: Fri, 14 Aug 2015 22:05:23 +0800 Message-ID: <55CDF5A3.8050201@linaro.org> References: <55C413D5.7000709@huawei.com> <55CAF41C.1090208@huawei.com> <55CB0DC0.4020304@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <55CB0DC0.4020304@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Julien Grall , Shannon Zhao , xen-devel , Jan Beulich , Stefano Stabellini , Ian Campbell , Parth Dixit , Christoffer Dall Cc: Hangaohuai , "Huangpeng (Peter)" List-Id: xen-devel@lists.xenproject.org On 2015/8/12 17:11, Julien Grall wrote: > On 12/08/2015 08:22, Shannon Zhao wrote: >> Hi, > > Hi Shannon, > > It's not part of the design discussion and we are avoiding to mix > discussion. Can you please create another thread (or at least renaming > the subject)? > >> I'm working on re-spinning this patchset while encountering a werid >> problem about xzalloc_bytes. >> >> Since I need to copy some ACPI tables, I need to allocate some memory >> for it. So there are a few places calling xzalloc_bytes. And it fails at >> the fifth one. The log is shown as following: > > Do you copy data in the newly allocated memory between 2 xzalloc_bytes? > No, I just use xzalloc_bytes to allocate some place and copy ACPI to the allocated place, modify the content, then call raw_copy_to_guest_flush_dcache to copy the modified tables to guest memory. > The only thing I have in mind based on the log below is your are > overriding the metadata of the memory allocator. > >> (XEN) *** LOADING DOMAIN 0 *** >> (XEN) Loading kernel from boot module @ 00000008fa315000 >> (XEN) Allocating 1:1 mappings totalling 256MB for dom0: >> (XEN) BANK[0] 0x00000090000000-0x000000a0000000 (256MB) >> (XEN) Grant table range: 0x00000087e00000-0x00000087e5b000 >> (XEN) Loading zImage from 00000008fa315000 to >> 0000000090080000-00000000909e0ec8 >> (XEN) Hypervisor Trap. HSR=0x96000044 EC=0x25 IL=1 Syndrome=0x44 >> (XEN) CPU0: Unexpected Trap: Hypervisor >> (XEN) ----[ Xen-4.6-unstable arm64 debug=y Not tainted ]---- >> (XEN) CPU: 0 >> (XEN) PC: 0000000000238b78 xmem_pool_alloc+0x348/0x4b0 >> (XEN) LR: 0000000000238960 >> (XEN) SP: 00000000002bf4e0 >> (XEN) CPSR: 20000249 MODE:64-bit EL2h (Hypervisor, handler) >> >> (XEN) Xen call trace: >> (XEN) [<0000000000238b78>] xmem_pool_alloc+0x348/0x4b0 (PC) >> (XEN) [<0000000000238960>] xmem_pool_alloc+0x130/0x4b0 (LR) >> (XEN) [<0000000000239100>] _xmalloc+0xf4/0x290 >> (XEN) [<00000000002392b0>] _xzalloc+0x14/0x38 >> (XEN) [<0000000000245430>] construct_dom0+0xbc0/0x14cc >> (XEN) [<000000000028c4c4>] start_xen+0xbf4/0xcb0 >> (XEN) [<000000000020060c>] paging+0x84/0xbc >> (XEN) >> (XEN) >> (XEN) **************************************** >> (XEN) Panic on CPU 0: >> (XEN) CPU0: Unexpected Trap: Hypervisor >> (XEN) >> (XEN) **************************************** >> (XEN) >> (XEN) Reboot in five seconds... >> > > Regards, > -- Shannon