xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* Data Abort while in booting when using latest version on arm32 fastmodels
@ 2016-07-12  5:20 Wonseok Ko
  2016-07-12 10:09 ` Julien Grall
  0 siblings, 1 reply; 4+ messages in thread
From: Wonseok Ko @ 2016-07-12  5:20 UTC (permalink / raw)
  To: xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 8701 bytes --]

Hi, All

I founded the previous post to solve the problem as the same as mine, the
patch was applied in latest version, but I've got the data abort.
previous post:
https://lists.xen.org/archives/html/xen-devel/2013-09/msg00606.html and I
referred to the wiki page:
http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/FastModels

I build the latest version of Xen with command as below:
# make distclean; XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf-
debug=y CONFIG_EARLY_PRINTK=fastmodel ./configure
# make xen XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- debug=y
CONFIG_EARLY_PRINTK=fastmodel -j 8

My fastmodels command as below:

FVP_VE_Cortex-A15x4-A7x4 -a coretile.cluster0.*=./linux-system-semi.axf \

                         -a coretile.cluster1.*=./linux-system-semi.axf \

                         -C motherboard.smsc_91c111.enabled=1 -C
motherboard.hostbridge.userNetworking=1 \

                         -C
coretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER=0x3 \

                         -C coretile.cluster0.cpu0.semihosting-cmd_line=" \

                            --kernel ../xen/xen/xen \

                            --module ../linux/arch/arm/boot/zImage \

                            --dtb rtsm_ve-cortex_a15x4_a7x4.dtb \

                            -- earlyprintk console=ttyAMA0 mem=2048M
root=/dev/nfs nfsroot=192.168.0.8:/srv/nfsroot/ rw ip=dhcp"

Does anybody help me to fix it? or If I did something wrong, please let me
know.

here is log:

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

- UART enabled -

- CPU 00000000 booting -

- Xen starting in Hyp mode -

- Zero BSS -

- Setting up control registers -

- Turning on paging -

- Ready -

(XEN) Checking for initrd in /chosen

(XEN) RAM: 0000000080000000 - 00000000ffffffff

(XEN)

(XEN) MODULE[0]: 0000000080d0230c - 0000000080d0473d Device Tree

(XEN) MODULE[1]: 0000000080a00000 - 0000000080d904b8 Kernel
console=ttyAMA0

(XEN)

(XEN)

(XEN) Command line: earlyprintk console=ttyAMA0 mem=2048M root=/dev/nfs
nfsroot=192.168.0.8:/srv/nfsroot/ rw ip=dhcp

(XEN) Placing Xen at 0x00000000ffe00000-0x0000000100000000

(XEN) Update BOOTMOD_XEN from 0000000080200000-00000000802fd781 =>
00000000ffe00000-00000000ffefd781

(XEN) Xen heap: 00000000fa000000-00000000fe000000 (16384 pages)

(XEN) Dom heap: 507904 pages

(XEN) Domain heap initialised

(XEN) Platform: VERSATILE EXPRESS

(XEN) Bad console= option 'ttyAMA0'

 Xen 4.8-unstable

(XEN) Xen version 4.8-unstable (wonseok@) (arm-linux-gnueabihf-gcc
(crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03)
4.7.3 20130226 (prerelease)) debug=y Tue Jul 12 13:29:41 KST 2016

(XEN) Latest ChangeSet: Thu Jun 30 14:01:02 2016 +0200 git:bb4f41b-dirty

(XEN) Processor: 412fc0f0: "ARM Limited", variant: 0x2, part 0xc0f, rev 0x0

(XEN) 32-bit Execution:

(XEN)   Processor Features: 00001131:00011011

(XEN)     Instruction Sets: AArch32 A32 Thumb Thumb-2 ThumbEE Jazelle

(XEN)     Extensions: GenericTimer Security

(XEN)   Debug Features: 02010555

(XEN)   Auxiliary Features: 00000000

(XEN)   Memory Model Features: 10201105 20000000 01240000 02102211

(XEN)  ISA Features: 02101110 13112111 21232041 11112131 10011142 00000000

(XEN) Set SYS_FLAGS to 00000000ffe0004c (0020004c)

(XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 24000 KHz

(XEN) GICv2 initialization:

(XEN)         gic_dist_addr=000000002c001000

(XEN)         gic_cpu_addr=000000002c002000

(XEN)         gic_hyp_addr=000000002c004000

(XEN)         gic_vcpu_addr=000000002c006000

(XEN)         gic_maintenance_irq=25

(XEN) GICv2: 128 lines, 8 cpus, secure (IID 3902043b).

(XEN) Using scheduler: SMP Credit Scheduler (credit)

(XEN) Allocated console ring of 64 KiB.

(XEN) VFP implementer 0x41 architecture 4 part 0x30 variant 0xf rev 0x0

(XEN) Bringing up CPU1

- CPU 00000001 booting -

- Xen starting in Hyp mode -

- Setting up control registers -

- Turning on paging -

- Ready -

(XEN) CPU 2 booted.

(XEN) Bringing up CPU3

- CPU 00000003 booting -

- Xen starting in Hyp mode -

- Setting up control registers -

- Turning on paging -

- Ready -

(XEN) CPU 3 booted.

(XEN) Bringing up CPU4

- CPU 00000100 booting -

- Xen starting in Hyp mode -

- Setting up control registers -

- Turning on paging -

- Ready -

(XEN) CPU 4 booted.

(XEN) Bringing up CPU5

- CPU 00000101 booting -

- Xen starting in Hyp mode -

- Setting up control registers -

- Turning on paging -

- Ready -

(XEN) CPU 5 booted.

(XEN) Bringing up CPU6

- CPU 00000102 booting -

- Xen starting in Hyp mode -

- Setting up control registers -

- Turning on paging -

- Ready -

(XEN) CPU 6 booted.

(XEN) Bringing up CPU7

- CPU 00000103 booting -

- Xen starting in Hyp mode -

- Setting up control registers -

- Turning on paging -

- Ready -

(XEN) CPU 7 booted.

(XEN) Brought up 8 CPUs

(XEN) P2M: 40-bit IPA

(XEN) P2M: 3 levels with order-1 root, VTCR 0x80003558

(XEN) I/O virtualisation disabled

(XEN) *** LOADING DOMAIN 0 ***

(XEN) Loading kernel from boot module @ 0000000080a00000

(XEN) Allocating 1:1 mappings totalling 128MB for dom0:

(XEN) BANK[0] 0x00000088000000-0x00000090000000 (128MB)

(XEN) Grant table range: 0x000000ffe00000-0x000000ffe5d000

(XEN) Loading zImage from 0000000080a00000 to
000000008fc00000-000000008ff904b8

(XEN) Allocating PPI 16 for event channel interrupt

(XEN) Loading dom0 DTB to 0x000000008fa00000-0x000000008fa0221e

(XEN) CPU0: Unexpected Trap: Data Abort

(XEN) ----[ Xen-4.8-unstable  arm32  debug=y  Not tainted ]----

(XEN) CPU:    0

(XEN) PC:     0021be40 page_alloc.c#free_heap_pages+0x2c0/0x42

(XEN) CPSR:   6000005a MODE:Hypervisor

(XEN)      R0: 00000001 R1: 00000000 R2: 00000000 R3: 00000000

(XEN)      R4: 00000000 R5: 02020850 R6: 00000000 R7: 02020878

(XEN)      R8: 00200200 R9: 0027c394 R10:00100100 R11:002b76c4 R12:00000000

(XEN) HYP: SP: 002b7694 LR: 0021be18

(XEN)

(XEN)   VTCR_EL2: 80003558

(XEN)  VTTBR_EL2: 0001000080d06000

(XEN)

(XEN)  SCTLR_EL2: 30cd187f

(XEN)    HCR_EL2: 000000000038663f

(XEN)  TTBR0_EL2: 00000000ffef4000

(XEN)

(XEN)    ESR_EL2: 94000006

(XEN)  HPFAR_EL2: 0000000000000000

(XEN)      HDFAR: 00000004

(XEN)      HIFAR: 00000000

(XEN)

(XEN) Xen stack trace from sp=002b7694:

(XEN)    002b76c4 002b76a4 00000014 00000000 00000303 02020878 002c0d00
00000391

(XEN)    002c0d24 002c1e5c 00000000 002b76ec 0021cbb8 00003200 00000fff
00000000

(XEN)    80d91000 00000000 00000000 0027c394 00000000 002b76fc 0021ce78
80a00000

(XEN)    00000000 002b773c 002549e8 002b7714 0008fa00 0027b0b4 002b771c
000fe000

(XEN)    00000001 002b774c 80a00000 00000000 002a0858 00000001 0027c120
0027c394

(XEN)    0027c11c 002b7774 0028b378 0021cdc8 00000000 80d91000 00000000
002b7774

(XEN)    8fa00000 00000000 00000020 00000000 40078000 002b7e80 4000e000
002b7ea4

(XEN)    0024b1b0 8fa0221e 00000000 00000080 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 4004ff58 8fc00000 00000000 00000000 00000000
40053000

(XEN)    40078000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN)    01000000 00000000 080f0000 40044000 00000000 00000000 00000000
00000001

(XEN)    00000000 88000000 00000000 08000000 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN)    00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000

(XEN) Xen call trace:

(XEN)    [<0021be40>] page_alloc.c#free_heap_pages+0x2c0/0x428 (PC)

(XEN)    [<0021be18>] page_alloc.c#free_heap_pages+0x298/0x428 (LR)

(XEN)    [<0021cbb8>] page_alloc.c#init_heap_pages+0x100/0x118

(XEN)    [<0021ce78>] init_domheap_pages+0xb0/0xb4

(XEN)    [<002549e8>] dt_unreserved_regions+0xf4/0xfc

(XEN)    [<0028b378>] discard_initial_modules+0x138/0x178

(XEN)    [<0024b1b0>] construct_dom0+0xb24/0xc8c

(XEN)    [<0028c12c>] start_xen+0xd38/0xeb0

(XEN)    [<00200550>] arm32/head.o#paging+0x94/0xd8

(XEN)

(XEN)

(XEN) ****************************************

(XEN) Panic on CPU 0:

(XEN) CPU0: Unexpected Trap: Data Abort

(XEN)

(XEN) ****************************************

(XEN)

(XEN) Reboot in five seconds...

Thanks,
Wonseok.

[-- Attachment #1.2: Type: text/html, Size: 14521 bytes --]

[-- Attachment #2: Type: text/plain, Size: 127 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Data Abort while in booting when using latest version on arm32 fastmodels
  2016-07-12  5:20 Data Abort while in booting when using latest version on arm32 fastmodels Wonseok Ko
@ 2016-07-12 10:09 ` Julien Grall
  2016-07-12 11:56   ` Wonseok Ko
  0 siblings, 1 reply; 4+ messages in thread
From: Julien Grall @ 2016-07-12 10:09 UTC (permalink / raw)
  To: Wonseok Ko, xen-devel, Stefano Stabellini, Andre Przywara



On 12/07/16 06:20, Wonseok Ko wrote:
> Hi, All

Hello,

> I founded the previous post to solve the problem as the same as mine,
> the patch was applied in latest version, but I've got the data abort.
> previous post:
> https://lists.xen.org/archives/html/xen-devel/2013-09/msg00606.html and I referred
> to the wiki page:
> http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/FastModels

This page has not been updated for a while for ARM32. It might be 
possible that the page is out-of-date for the newer models.

> I build the latest version of Xen with command as below:
> # make distclean; XEN_TARGET_ARCH=arm32
> CROSS_COMPILE=arm-linux-gnueabihf- debug=y CONFIG_EARLY_PRINTK=fastmodel
> ./configure
> # make xen XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf-
> debug=y CONFIG_EARLY_PRINTK=fastmodel -j 8
>
> My fastmodels command as below:
>
> FVP_VE_Cortex-A15x4-A7x4 -acoretile.cluster0.*=./linux-system-semi.axf \
>
> -acoretile.cluster1.*=./linux-system-semi.axf \
>
> -Cmotherboard.smsc_91c111.enabled=1-Cmotherboard.hostbridge.userNetworking=1\
>
> -Ccoretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER=0x3 \
>
> -Ccoretile.cluster0.cpu0.semihosting-cmd_line="\
>
>                              --kernel ../xen/xen/xen \
>
>                              --module ../linux/arch/arm/boot/zImage \
>
>                              --dtb rtsm_ve-cortex_a15x4_a7x4.dtb \
>
>                              -- earlyprintk console=ttyAMA0 mem=2048M
> root=/dev/nfs nfsroot=192.168.0.8:/srv/nfsroot/ rw ip=dhcp"

This should be the Xen command line and not Linux one.

>
>
> Does anybody help me to fix it? or If I did something wrong, please let
> me know.
>
> here is log:
>
> Trying 127.0.0.1...
>
> Connected to localhost.
>
> Escape character is '^]'.
>
> - UART enabled -
>
> - CPU 00000000 booting -
>
> - Xen starting in Hyp mode -
>
> - Zero BSS -
>
> - Setting up control registers -
>
> - Turning on paging -
>
> - Ready -
>
> (XEN) Checking for initrd in /chosen
>
> (XEN) RAM: 0000000080000000 - 00000000ffffffff
>
> (XEN)
>
> (XEN) MODULE[0]: 0000000080d0230c - 0000000080d0473d Device Tree
>
> (XEN) MODULE[1]: 0000000080a00000 - 0000000080d904b8 Kernel
> console=ttyAMA0

If I am not mistaken, the Device Tree and the Kernel overlaps in the 
memory. So Xen will try to free twice the same page, hence the data 
abort later one.

I would look into the bootwrapper to find out why the addresses overlap.

[...]

> (XEN) Xen call trace:
>
> (XEN)    [<0021be40>] page_alloc.c#free_heap_pages+0x2c0/0x428 (PC)
>
> (XEN)    [<0021be18>] page_alloc.c#free_heap_pages+0x298/0x428 (LR)
>
> (XEN)    [<0021cbb8>] page_alloc.c#init_heap_pages+0x100/0x118
>
> (XEN)    [<0021ce78>] init_domheap_pages+0xb0/0xb4
>
> (XEN)    [<002549e8>] dt_unreserved_regions+0xf4/0xfc
>
> (XEN)    [<0028b378>] discard_initial_modules+0x138/0x178
>
> (XEN)    [<0024b1b0>] construct_dom0+0xb24/0xc8c
>
> (XEN)    [<0028c12c>] start_xen+0xd38/0xeb0
>
> (XEN)    [<00200550>] arm32/head.o#paging+0x94/0xd8

Regards,

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Data Abort while in booting when using latest version on arm32 fastmodels
  2016-07-12 10:09 ` Julien Grall
@ 2016-07-12 11:56   ` Wonseok Ko
  2016-07-13  1:32     ` Wonseok Ko
  0 siblings, 1 reply; 4+ messages in thread
From: Wonseok Ko @ 2016-07-12 11:56 UTC (permalink / raw)
  To: Julien Grall; +Cc: Andre Przywara, Stefano Stabellini, xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 7818 bytes --]

Thank you for your help, Julien

I found the memory overlapping problem between Kernel and Device Tree in
bootwrapper.
The problem came from INITRD_OFFSET and PHYS_OFFSET macro(0x00d00000)
I fixed these offsets from 0x00d00000 to 0x00e00000 and then I avoided the
memory overlapping problem:

(XEN) MODULE[0]: 0000000080e0230c - 0000000080e04731 Device Tree
(XEN) MODULE[1]: 0000000080a00000 - 0000000080d904b8 Kernel
console=hvc0 earlyprintk=xen debug mem=2048M root=/dev/mmcblk0 rw ip=dhcp


However, I've got another error as below:

(XEN) Checking for initrd in /chosen
(XEN) RAM: 0000000080000000 - 00000000ffffffff
(XEN)
(XEN) MODULE[0]: 0000000080e0230c - 0000000080e04731 Device Tree
(XEN) MODULE[1]: 0000000080a00000 - 0000000080d904b8 Kernel
console=hvc0 earlyprintk=xen debug mem=2048M root=/dev/mmcblk0 rw ip=dhcp

(XEN)
(XEN) Command line: earlyprintk console=ttyAMA0
(XEN) Placing Xen at 0x00000000ffe00000-0x0000000100000000
(XEN) Update BOOTMOD_XEN from 0000000080200000-00000000802fd781 =>
00000000ffe00000-00000000ffefd781
(XEN) Xen heap: 00000000fa000000-00000000fe000000 (16384 pages)
(XEN) Dom heap: 507904 pages
(XEN) Domain heap initialised
(XEN) Platform: VERSATILE EXPRESS
(XEN) Bad console= option 'ttyAMA0'
 Xen 4.8-unstable
(XEN) Xen version 4.8-unstable (wonseok@) (arm-linux-gnueabihf-gcc
(crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03)
4.7.3 20130226 (prerelease)) debug=y Tue Jul 12 19:59:29 KST 2016
(XEN) Latest ChangeSet: Thu Jun 30 14:01:02 2016 +0200 git:bb4f41b-dirty
(XEN) Processor: 412fc0f0: "ARM Limited", variant: 0x2, part 0xc0f, rev 0x0
(XEN) 32-bit Execution:
(XEN)   Processor Features: 00001131:00011011
(XEN)     Instruction Sets: AArch32 A32 Thumb Thumb-2 ThumbEE Jazelle
(XEN)     Extensions: GenericTimer Security
(XEN)   Debug Features: 02010555
(XEN)   Auxiliary Features: 00000000
(XEN)   Memory Model Features: 10201105 20000000 01240000 02102211
(XEN)  ISA Features: 02101110 13112111 21232041 11112131 10011142 00000000
(XEN) Set SYS_FLAGS to 00000000ffe0004c (0020004c)
(XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 24000 KHz
(XEN) GICv2 initialization:
(XEN)         gic_dist_addr=000000002c001000
(XEN)         gic_cpu_addr=000000002c002000
(XEN)         gic_hyp_addr=000000002c004000
(XEN)         gic_vcpu_addr=000000002c006000
(XEN)         gic_maintenance_irq=25
(XEN) GICv2: 128 lines, 8 cpus, secure (IID 3902043b).
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) Allocated console ring of 64 KiB.
(XEN) VFP implementer 0x41 architecture 4 part 0x30 variant 0xf rev 0x0
(XEN) Bringing up CPU1
- CPU 00000001 booting -
- Xen starting in Hyp mode -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 2 booted.
(XEN) Bringing up CPU3
- CPU 00000003 booting -
- Xen starting in Hyp mode -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 3 booted.
(XEN) Bringing up CPU4
- CPU 00000100 booting -
- Xen starting in Hyp mode -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 4 booted.
(XEN) Bringing up CPU5
- CPU 00000101 booting -
- Xen starting in Hyp mode -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 5 booted.
(XEN) Bringing up CPU6
- CPU 00000102 booting -
- Xen starting in Hyp mode -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 6 booted.
(XEN) Bringing up CPU7
(XEN) CPU7 never came online
(XEN) Failed to bring up CPU 7 (error -5)
(XEN) Brought up 7 CPUs
(XEN) P2M: 40-bit IPA
(XEN) P2M: 3 levels with order-1 root, VTCR 0x80003558
(XEN) I/O virtualisation disabled
(XEN) *** LOADING DOMAIN 0 ***
(XEN) Loading kernel from boot module @ 0000000080a00000
(XEN) Allocating 1:1 mappings totalling 128MB for dom0:
(XEN) BANK[0] 0x00000088000000-0x00000090000000 (128MB)
(XEN) Grant table range: 0x000000ffe00000-0x000000ffe5d000
(XEN) Loading zImage from 0000000080a00000 to
000000008fc00000-000000008ff904b8
(XEN) Allocating PPI 16 for event channel interrupt
(XEN) Loading dom0 DTB to 0x000000008fa00000-0x000000008fa0220e
(XEN) Scrubbing Free RAM on 1 nodes using 7 CPUs
(XEN) ...done.
(XEN) Initial low memory virq threshold set at 0x4000 pages.
(XEN) Std. Loglevel: All
(XEN) Guest Loglevel: All
(XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch input
to Xen)
(XEN) Freed 268kB init memory.
(XEN) traps.c:2506:d0v0 HSR=0x90000045 pc=0x80341924 gva=0xefffe000
gpa=0x000000f7ffe000

Could you please explain the reason why the above fault?

Thanks,
Wonseok



Thanks,
Wonseok.

2016-07-12 19:09 GMT+09:00 Julien Grall <julien.grall@arm.com>:

>
>
> On 12/07/16 06:20, Wonseok Ko wrote:
>
>> Hi, All
>>
>
> Hello,
>
> I founded the previous post to solve the problem as the same as mine,
>> the patch was applied in latest version, but I've got the data abort.
>> previous post:
>> https://lists.xen.org/archives/html/xen-devel/2013-09/msg00606.html and
>> I referred
>> to the wiki page:
>> http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/FastModels
>>
>
> This page has not been updated for a while for ARM32. It might be possible
> that the page is out-of-date for the newer models.
>
> I build the latest version of Xen with command as below:
>> # make distclean; XEN_TARGET_ARCH=arm32
>> CROSS_COMPILE=arm-linux-gnueabihf- debug=y CONFIG_EARLY_PRINTK=fastmodel
>> ./configure
>> # make xen XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf-
>> debug=y CONFIG_EARLY_PRINTK=fastmodel -j 8
>>
>> My fastmodels command as below:
>>
>> FVP_VE_Cortex-A15x4-A7x4 -acoretile.cluster0.*=./linux-system-semi.axf \
>>
>> -acoretile.cluster1.*=./linux-system-semi.axf \
>>
>>
>> -Cmotherboard.smsc_91c111.enabled=1-Cmotherboard.hostbridge.userNetworking=1\
>>
>> -Ccoretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER=0x3 \
>>
>> -Ccoretile.cluster0.cpu0.semihosting-cmd_line="\
>>
>>                              --kernel ../xen/xen/xen \
>>
>>                              --module ../linux/arch/arm/boot/zImage \
>>
>>                              --dtb rtsm_ve-cortex_a15x4_a7x4.dtb \
>>
>>                              -- earlyprintk console=ttyAMA0 mem=2048M
>> root=/dev/nfs nfsroot=192.168.0.8:/srv/nfsroot/ rw ip=dhcp"
>>
>
> This should be the Xen command line and not Linux one.
>
>
>>
>> Does anybody help me to fix it? or If I did something wrong, please let
>> me know.
>>
>> here is log:
>>
>> Trying 127.0.0.1...
>>
>> Connected to localhost.
>>
>> Escape character is '^]'.
>>
>> - UART enabled -
>>
>> - CPU 00000000 booting -
>>
>> - Xen starting in Hyp mode -
>>
>> - Zero BSS -
>>
>> - Setting up control registers -
>>
>> - Turning on paging -
>>
>> - Ready -
>>
>> (XEN) Checking for initrd in /chosen
>>
>> (XEN) RAM: 0000000080000000 - 00000000ffffffff
>>
>> (XEN)
>>
>> (XEN) MODULE[0]: 0000000080d0230c - 0000000080d0473d Device Tree
>>
>> (XEN) MODULE[1]: 0000000080a00000 - 0000000080d904b8 Kernel
>> console=ttyAMA0
>>
>
> If I am not mistaken, the Device Tree and the Kernel overlaps in the
> memory. So Xen will try to free twice the same page, hence the data abort
> later one.
>
> I would look into the bootwrapper to find out why the addresses overlap.
>
> [...]
>
> (XEN) Xen call trace:
>>
>> (XEN)    [<0021be40>] page_alloc.c#free_heap_pages+0x2c0/0x428 (PC)
>>
>> (XEN)    [<0021be18>] page_alloc.c#free_heap_pages+0x298/0x428 (LR)
>>
>> (XEN)    [<0021cbb8>] page_alloc.c#init_heap_pages+0x100/0x118
>>
>> (XEN)    [<0021ce78>] init_domheap_pages+0xb0/0xb4
>>
>> (XEN)    [<002549e8>] dt_unreserved_regions+0xf4/0xfc
>>
>> (XEN)    [<0028b378>] discard_initial_modules+0x138/0x178
>>
>> (XEN)    [<0024b1b0>] construct_dom0+0xb24/0xc8c
>>
>> (XEN)    [<0028c12c>] start_xen+0xd38/0xeb0
>>
>> (XEN)    [<00200550>] arm32/head.o#paging+0x94/0xd8
>>
>
> Regards,
>
> --
> Julien Grall
>

[-- Attachment #1.2: Type: text/html, Size: 15474 bytes --]

[-- Attachment #2: Type: text/plain, Size: 127 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Data Abort while in booting when using latest version on arm32 fastmodels
  2016-07-12 11:56   ` Wonseok Ko
@ 2016-07-13  1:32     ` Wonseok Ko
  0 siblings, 0 replies; 4+ messages in thread
From: Wonseok Ko @ 2016-07-13  1:32 UTC (permalink / raw)
  To: Julien Grall; +Cc: Andre Przywara, Stefano Stabellini, xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 10410 bytes --]

Hi, Julien

I finally succeed booting xen on newer version of FVP(Fastmodels)
The problem is wrong memory size setting in command line option.

I left my command line for others who will face the same problem like me
and I marked bold memory setting part in command line.
NOTE: If you want to configure size of memory for domain 0, you should use
command as below for linux command line and xen command line(see the *BOLD*
).
            If any you configure different size of memory, you may see the
data abort error(e.g. HSR: 0x90000045 xxxx).
            In my case, domain0(mem=2048) has lager memory size than xen
configuration(dom0_mem=128M)

*1. For FVP_VE_Cortex-A15x124-A7x124 *

FVP_VE_Cortex-A15x4-A7x4 -a coretile.cluster0.*=./linux-system-semi.axf \

                         -a coretile.cluster1.*=./linux-system-semi.axf \

                         -C motherboard.smsc_91c111.enabled=1 -C
motherboard.hostbridge.userNetworking=1 \

                         -C
coretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER=0x3 \

                         -C coretile.cluster0.cpu0.semihosting-cmd_line=" \

                            --kernel ../xen/xen/xen \

                            --module ../linux/arch/arm/boot/zImage
console=ttyAMA0 earlyprintk=xen debug *mem=128M* root=/dev/nfs
nfsroot=192.168.0.8:/srv/nfsroot/ rw ip=dhcp \

                            --dtb rtsm_ve-cortex_a15x4_a7x4.dtb --
earlyprintk *dom0_mem=128M*"
*2. For FVP_VE_Cortex-A15x124*

FVP_VE_Cortex-A15x4      -a ./linux-system-semi.axf \

                                           -C
motherboard.smsc_91c111.enabled=1 -C motherboard.hostbridge.userNetworking=1
\

                                           -C cluster.cpu0.semihosting-
cmd_line=" \

                                           --kernel ../xen/xen/xen \

                                           --module
../linux/arch/arm/boot/zImage console=ttyAMA0 earlyprintk=xen debug
root=/dev/nfs nfsroot=192.168.0.8:/srv/nfsroot/ rw ip=dhcp \

                                          --dtb rtsm_ve-cortex_a15x4.dtb --
earlyprintk console=ttyAMA0"


Thanks,
Wonseok


Thanks,
Wonseok.

2016-07-12 20:56 GMT+09:00 Wonseok Ko <magicyaba@gmail.com>:

> Thank you for your help, Julien
>
> I found the memory overlapping problem between Kernel and Device Tree in
> bootwrapper.
> The problem came from INITRD_OFFSET and PHYS_OFFSET macro(0x00d00000)
> I fixed these offsets from 0x00d00000 to 0x00e00000 and then I avoided the
> memory overlapping problem:
>
> (XEN) MODULE[0]: 0000000080e0230c - 0000000080e04731 Device Tree
> (XEN) MODULE[1]: 0000000080a00000 - 0000000080d904b8 Kernel
> console=hvc0 earlyprintk=xen debug mem=2048M root=/dev/mmcblk0 rw ip=dhcp
>
>
> However, I've got another error as below:
>
> (XEN) Checking for initrd in /chosen
> (XEN) RAM: 0000000080000000 - 00000000ffffffff
> (XEN)
> (XEN) MODULE[0]: 0000000080e0230c - 0000000080e04731 Device Tree
> (XEN) MODULE[1]: 0000000080a00000 - 0000000080d904b8 Kernel
> console=hvc0 earlyprintk=xen debug mem=2048M root=/dev/mmcblk0 rw ip=dhcp
>
> (XEN)
> (XEN) Command line: earlyprintk console=ttyAMA0
> (XEN) Placing Xen at 0x00000000ffe00000-0x0000000100000000
> (XEN) Update BOOTMOD_XEN from 0000000080200000-00000000802fd781 =>
> 00000000ffe00000-00000000ffefd781
> (XEN) Xen heap: 00000000fa000000-00000000fe000000 (16384 pages)
> (XEN) Dom heap: 507904 pages
> (XEN) Domain heap initialised
> (XEN) Platform: VERSATILE EXPRESS
> (XEN) Bad console= option 'ttyAMA0'
>  Xen 4.8-unstable
> (XEN) Xen version 4.8-unstable (wonseok@) (arm-linux-gnueabihf-gcc
> (crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03)
> 4.7.3 20130226 (prerelease)) debug=y Tue Jul 12 19:59:29 KST 2016
> (XEN) Latest ChangeSet: Thu Jun 30 14:01:02 2016 +0200 git:bb4f41b-dirty
> (XEN) Processor: 412fc0f0: "ARM Limited", variant: 0x2, part 0xc0f, rev 0x0
> (XEN) 32-bit Execution:
> (XEN)   Processor Features: 00001131:00011011
> (XEN)     Instruction Sets: AArch32 A32 Thumb Thumb-2 ThumbEE Jazelle
> (XEN)     Extensions: GenericTimer Security
> (XEN)   Debug Features: 02010555
> (XEN)   Auxiliary Features: 00000000
> (XEN)   Memory Model Features: 10201105 20000000 01240000 02102211
> (XEN)  ISA Features: 02101110 13112111 21232041 11112131 10011142 00000000
> (XEN) Set SYS_FLAGS to 00000000ffe0004c (0020004c)
> (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 24000 KHz
> (XEN) GICv2 initialization:
> (XEN)         gic_dist_addr=000000002c001000
> (XEN)         gic_cpu_addr=000000002c002000
> (XEN)         gic_hyp_addr=000000002c004000
> (XEN)         gic_vcpu_addr=000000002c006000
> (XEN)         gic_maintenance_irq=25
> (XEN) GICv2: 128 lines, 8 cpus, secure (IID 3902043b).
> (XEN) Using scheduler: SMP Credit Scheduler (credit)
> (XEN) Allocated console ring of 64 KiB.
> (XEN) VFP implementer 0x41 architecture 4 part 0x30 variant 0xf rev 0x0
> (XEN) Bringing up CPU1
> - CPU 00000001 booting -
> - Xen starting in Hyp mode -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 2 booted.
> (XEN) Bringing up CPU3
> - CPU 00000003 booting -
> - Xen starting in Hyp mode -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 3 booted.
> (XEN) Bringing up CPU4
> - CPU 00000100 booting -
> - Xen starting in Hyp mode -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 4 booted.
> (XEN) Bringing up CPU5
> - CPU 00000101 booting -
> - Xen starting in Hyp mode -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 5 booted.
> (XEN) Bringing up CPU6
> - CPU 00000102 booting -
> - Xen starting in Hyp mode -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 6 booted.
> (XEN) Bringing up CPU7
> (XEN) CPU7 never came online
> (XEN) Failed to bring up CPU 7 (error -5)
> (XEN) Brought up 7 CPUs
> (XEN) P2M: 40-bit IPA
> (XEN) P2M: 3 levels with order-1 root, VTCR 0x80003558
> (XEN) I/O virtualisation disabled
> (XEN) *** LOADING DOMAIN 0 ***
> (XEN) Loading kernel from boot module @ 0000000080a00000
> (XEN) Allocating 1:1 mappings totalling 128MB for dom0:
> (XEN) BANK[0] 0x00000088000000-0x00000090000000 (128MB)
> (XEN) Grant table range: 0x000000ffe00000-0x000000ffe5d000
> (XEN) Loading zImage from 0000000080a00000 to
> 000000008fc00000-000000008ff904b8
> (XEN) Allocating PPI 16 for event channel interrupt
> (XEN) Loading dom0 DTB to 0x000000008fa00000-0x000000008fa0220e
> (XEN) Scrubbing Free RAM on 1 nodes using 7 CPUs
> (XEN) ...done.
> (XEN) Initial low memory virq threshold set at 0x4000 pages.
> (XEN) Std. Loglevel: All
> (XEN) Guest Loglevel: All
> (XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch input
> to Xen)
> (XEN) Freed 268kB init memory.
> (XEN) traps.c:2506:d0v0 HSR=0x90000045 pc=0x80341924 gva=0xefffe000
> gpa=0x000000f7ffe000
>
> Could you please explain the reason why the above fault?
>
> Thanks,
> Wonseok
>
>
>
> Thanks,
> Wonseok.
>
> 2016-07-12 19:09 GMT+09:00 Julien Grall <julien.grall@arm.com>:
>
>>
>>
>> On 12/07/16 06:20, Wonseok Ko wrote:
>>
>>> Hi, All
>>>
>>
>> Hello,
>>
>> I founded the previous post to solve the problem as the same as mine,
>>> the patch was applied in latest version, but I've got the data abort.
>>> previous post:
>>> https://lists.xen.org/archives/html/xen-devel/2013-09/msg00606.html and
>>> I referred
>>> to the wiki page:
>>>
>>> http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/FastModels
>>>
>>
>> This page has not been updated for a while for ARM32. It might be
>> possible that the page is out-of-date for the newer models.
>>
>> I build the latest version of Xen with command as below:
>>> # make distclean; XEN_TARGET_ARCH=arm32
>>> CROSS_COMPILE=arm-linux-gnueabihf- debug=y CONFIG_EARLY_PRINTK=fastmodel
>>> ./configure
>>> # make xen XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf-
>>> debug=y CONFIG_EARLY_PRINTK=fastmodel -j 8
>>>
>>> My fastmodels command as below:
>>>
>>> FVP_VE_Cortex-A15x4-A7x4 -acoretile.cluster0.*=./linux-system-semi.axf \
>>>
>>> -acoretile.cluster1.*=./linux-system-semi.axf \
>>>
>>>
>>> -Cmotherboard.smsc_91c111.enabled=1-Cmotherboard.hostbridge.userNetworking=1\
>>>
>>> -Ccoretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER=0x3 \
>>>
>>> -Ccoretile.cluster0.cpu0.semihosting-cmd_line="\
>>>
>>>                              --kernel ../xen/xen/xen \
>>>
>>>                              --module ../linux/arch/arm/boot/zImage \
>>>
>>>                              --dtb rtsm_ve-cortex_a15x4_a7x4.dtb \
>>>
>>>                              -- earlyprintk console=ttyAMA0 mem=2048M
>>> root=/dev/nfs nfsroot=192.168.0.8:/srv/nfsroot/ rw ip=dhcp"
>>>
>>
>> This should be the Xen command line and not Linux one.
>>
>>
>>>
>>> Does anybody help me to fix it? or If I did something wrong, please let
>>> me know.
>>>
>>> here is log:
>>>
>>> Trying 127.0.0.1...
>>>
>>> Connected to localhost.
>>>
>>> Escape character is '^]'.
>>>
>>> - UART enabled -
>>>
>>> - CPU 00000000 booting -
>>>
>>> - Xen starting in Hyp mode -
>>>
>>> - Zero BSS -
>>>
>>> - Setting up control registers -
>>>
>>> - Turning on paging -
>>>
>>> - Ready -
>>>
>>> (XEN) Checking for initrd in /chosen
>>>
>>> (XEN) RAM: 0000000080000000 - 00000000ffffffff
>>>
>>> (XEN)
>>>
>>> (XEN) MODULE[0]: 0000000080d0230c - 0000000080d0473d Device Tree
>>>
>>> (XEN) MODULE[1]: 0000000080a00000 - 0000000080d904b8 Kernel
>>> console=ttyAMA0
>>>
>>
>> If I am not mistaken, the Device Tree and the Kernel overlaps in the
>> memory. So Xen will try to free twice the same page, hence the data abort
>> later one.
>>
>> I would look into the bootwrapper to find out why the addresses overlap.
>>
>> [...]
>>
>> (XEN) Xen call trace:
>>>
>>> (XEN)    [<0021be40>] page_alloc.c#free_heap_pages+0x2c0/0x428 (PC)
>>>
>>> (XEN)    [<0021be18>] page_alloc.c#free_heap_pages+0x298/0x428 (LR)
>>>
>>> (XEN)    [<0021cbb8>] page_alloc.c#init_heap_pages+0x100/0x118
>>>
>>> (XEN)    [<0021ce78>] init_domheap_pages+0xb0/0xb4
>>>
>>> (XEN)    [<002549e8>] dt_unreserved_regions+0xf4/0xfc
>>>
>>> (XEN)    [<0028b378>] discard_initial_modules+0x138/0x178
>>>
>>> (XEN)    [<0024b1b0>] construct_dom0+0xb24/0xc8c
>>>
>>> (XEN)    [<0028c12c>] start_xen+0xd38/0xeb0
>>>
>>> (XEN)    [<00200550>] arm32/head.o#paging+0x94/0xd8
>>>
>>
>> Regards,
>>
>> --
>> Julien Grall
>>
>
>

[-- Attachment #1.2: Type: text/html, Size: 21396 bytes --]

[-- Attachment #2: Type: text/plain, Size: 127 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-07-13  1:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-12  5:20 Data Abort while in booting when using latest version on arm32 fastmodels Wonseok Ko
2016-07-12 10:09 ` Julien Grall
2016-07-12 11:56   ` Wonseok Ko
2016-07-13  1:32     ` Wonseok Ko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).