|
|
|
|
|
|
|
|
|
|
xen-users
Re: [Xen-users] domU kernel.org kernel
Hello,
You should try with a 2.6.32 pvops dom0 and with xen 4. It can't work with xen 3.2 and a 2.6.26 kernel
Regards
Olivier
2010/10/25 Micah Anderson <micah@xxxxxxxxxx>
I've been trying to get a kernel.org 2.6.32.24 kernel to work as the
domU kernel, but have had nothing but failures. The Dom0 is running a
Debian stable (lenny) 2.6.26-2-xen-686 and 3.2-1 xen. I would appreciate
some pointers as to what I am missing to make this work.
I took the kernel.org source, made a .config with these options:
CONFIG_XEN=y
CONFIG_XEN_MAX_DOMAIN_MEMORY=8
CONFIG_XEN_SAVE_RESTORE=y
# CONFIG_XEN_DEBUG_FS is not set
CONFIG_NETXEN_NIC=m
CONFIG_XEN_NETDEV_FRONTEND=y
CONFIG_HVC_XEN=y
CONFIG_XEN_BALLOON=y
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DEV_EVTCHN=y
CONFIG_XENFS=y
CONFIG_XEN_COMPAT_XENFS=y
CONFIG_XEN_SYS_HYPERVISOR=y
CONFIG_PARAVIRT_GUEST=y
CONFIG_PARAVIRT=y
# CONFIG_PARAVIRT_SPINLOCKS is not set
CONFIG_PARAVIRT_CLOCK=y
# CONFIG_PARAVIRT_DEBUG is not set
Then I build the kernel with a regular 'make' and 'make
modules_install'.
strip vmlinux -o vmlinux-stripped
gzip vmlinux-stripped -c > vmlinuz
Then I copy the vmlinuz out to the dom0 and setup the xen configuration
for the domU to boot from it, but it fails:
[ 0.000000] Reserving virtual address space above 0xf5800000
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.32.24 (root@xxxxxxxxxxxxxxxxxxxx) (gcc version 4.3.2 (Debian 4.3.2-1.1) ) #1 SMP Mon Oct 25 17:27:32 UTC 2010
[ 0.000000] KERNEL supported cpus:
[ 0.000000] Intel GenuineIntel
[ 0.000000] AMD AuthenticAMD
[ 0.000000] NSC Geode by NSC
[ 0.000000] Cyrix CyrixInstead
[ 0.000000] Centaur CentaurHauls
[ 0.000000] Transmeta GenuineTMx86
[ 0.000000] Transmeta TransmetaCPU
[ 0.000000] UMC UMC UMC UMC
[ 0.000000] ACPI in unprivileged domain disabled
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] Xen: 0000000000000000 - 00000000000a0000 (usable)
[ 0.000000] Xen: 00000000000a0000 - 0000000000100000 (reserved)
[ 0.000000] Xen: 0000000000100000 - 0000000020000000 (usable)
[ 0.000000] DMI not present or invalid.
[ 0.000000] last_pfn = 0x20000 max_arch_pfn = 0x1000000
[ 0.000000] init_memory_mapping: 0000000000000000-0000000020000000
[ 0.000000] Node: 0, start_pfn: 0, end_pfn: 20000
[ 0.000000] Reserving total of 600 pages for numa KVA remap
[ 0.000000] kva_start_pfn ~ 1f400 max_low_pfn ~ 20000
[ 0.000000] max_pfn = 20000
[ 0.000000] 0MB HIGHMEM available.
[ 0.000000] 512MB LOWMEM available.
[ 0.000000] 1 multicall(s) failed: cpu 0
[ 0.000000] Pid: 0, comm: swapper Not tainted 2.6.32.24 #1
[ 0.000000] Call Trace:
[ 0.000000] [<c1004111>] ? xen_mc_flush+0xa2/0x150
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1005676>] ? xen_set_pmd_hyper+0x59/0x61
[ 0.000000] [<c102502a>] ? set_pmd_pfn+0xc3/0xd5
[ 0.000000] [<c13bb5f5>] ? initmem_init+0x525/0x66b
[ 0.000000] [<c13abf92>] ? setup_arch+0x7e3/0xa17
[ 0.000000] [<c10378e7>] ? release_console_sem+0x174/0x1a2
[ 0.000000] [<c1037da4>] ? vprintk+0x2e7/0x31f
[ 0.000000] [<c13d0020>] ? pci_pcbios_init+0x107/0x20d
[ 0.000000] [<c1005752>] ? __raw_callee_save_xen_irq_disable+0x6/0x8
[ 0.000000] [<c13a85ac>] ? start_kernel+0xb7/0x363
[ 0.000000] [<c13aa1d5>] ? xen_start_kernel+0x515/0x51c
[ 0.000000] ------------[ cut here ]------------
[ 0.000000] WARNING: at arch/x86/xen/multicalls.c:182 xen_mc_issue+0x11/0x1f()
[ 0.000000] Modules linked in:
[ 0.000000] Pid: 0, comm: swapper Not tainted 2.6.32.24 #1
[ 0.000000] Call Trace:
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c10373ad>] ? warn_slowpath_common+0x5e/0x8a
[ 0.000000] [<c10373e3>] ? warn_slowpath_null+0xa/0xc
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1005676>] ? xen_set_pmd_hyper+0x59/0x61
[ 0.000000] [<c102502a>] ? set_pmd_pfn+0xc3/0xd5
[ 0.000000] [<c13bb5f5>] ? initmem_init+0x525/0x66b
[ 0.000000] [<c13abf92>] ? setup_arch+0x7e3/0xa17
[ 0.000000] [<c10378e7>] ? release_console_sem+0x174/0x1a2
[ 0.000000] [<c1037da4>] ? vprintk+0x2e7/0x31f
[ 0.000000] [<c13d0020>] ? pci_pcbios_init+0x107/0x20d
[ 0.000000] [<c1005752>] ? __raw_callee_save_xen_irq_disable+0x6/0x8
[ 0.000000] [<c13a85ac>] ? start_kernel+0xb7/0x363
[ 0.000000] [<c13aa1d5>] ? xen_start_kernel+0x515/0x51c
[ 0.000000] ---[ end trace a7919e7f17c0a725 ]---
[ 0.000000] 1 multicall(s) failed: cpu 0
[ 0.000000] Pid: 0, comm: swapper Tainted: G W 2.6.32.24 #1
[ 0.000000] Call Trace:
[ 0.000000] [<c1004111>] ? xen_mc_flush+0xa2/0x150
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1005676>] ? xen_set_pmd_hyper+0x59/0x61
[ 0.000000] [<c102502a>] ? set_pmd_pfn+0xc3/0xd5
[ 0.000000] [<c13bb5f5>] ? initmem_init+0x525/0x66b
[ 0.000000] [<c13abf92>] ? setup_arch+0x7e3/0xa17
[ 0.000000] [<c10378e7>] ? release_console_sem+0x174/0x1a2
[ 0.000000] [<c1037da4>] ? vprintk+0x2e7/0x31f
[ 0.000000] [<c13d0020>] ? pci_pcbios_init+0x107/0x20d
[ 0.000000] [<c1005752>] ? __raw_callee_save_xen_irq_disable+0x6/0x8
[ 0.000000] [<c13a85ac>] ? start_kernel+0xb7/0x363
[ 0.000000] [<c13aa1d5>] ? xen_start_kernel+0x515/0x51c
[ 0.000000] ------------[ cut here ]------------
[ 0.000000] WARNING: at arch/x86/xen/multicalls.c:182 xen_mc_issue+0x11/0x1f()
[ 0.000000] Modules linked in:
[ 0.000000] Pid: 0, comm: swapper Tainted: G W 2.6.32.24 #1
[ 0.000000] Call Trace:
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c10373ad>] ? warn_slowpath_common+0x5e/0x8a
[ 0.000000] [<c10373e3>] ? warn_slowpath_null+0xa/0xc
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1005676>] ? xen_set_pmd_hyper+0x59/0x61
[ 0.000000] [<c102502a>] ? set_pmd_pfn+0xc3/0xd5
[ 0.000000] [<c13bb5f5>] ? initmem_init+0x525/0x66b
[ 0.000000] [<c13abf92>] ? setup_arch+0x7e3/0xa17
[ 0.000000] [<c10378e7>] ? release_console_sem+0x174/0x1a2
[ 0.000000] [<c1037da4>] ? vprintk+0x2e7/0x31f
[ 0.000000] [<c13d0020>] ? pci_pcbios_init+0x107/0x20d
[ 0.000000] [<c1005752>] ? __raw_callee_save_xen_irq_disable+0x6/0x8
[ 0.000000] [<c13a85ac>] ? start_kernel+0xb7/0x363
[ 0.000000] [<c13aa1d5>] ? xen_start_kernel+0x515/0x51c
[ 0.000000] ---[ end trace a7919e7f17c0a726 ]---
[ 0.000000] 1 multicall(s) failed: cpu 0
[ 0.000000] Pid: 0, comm: swapper Tainted: G W 2.6.32.24 #1
[ 0.000000] Call Trace:
[ 0.000000] [<c1004111>] ? xen_mc_flush+0xa2/0x150
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1005676>] ? xen_set_pmd_hyper+0x59/0x61
[ 0.000000] [<c102502a>] ? set_pmd_pfn+0xc3/0xd5
[ 0.000000] [<c13bb5f5>] ? initmem_init+0x525/0x66b
[ 0.000000] [<c13abf92>] ? setup_arch+0x7e3/0xa17
[ 0.000000] [<c10378e7>] ? release_console_sem+0x174/0x1a2
[ 0.000000] [<c1037da4>] ? vprintk+0x2e7/0x31f
[ 0.000000] [<c13d0020>] ? pci_pcbios_init+0x107/0x20d
[ 0.000000] [<c1005752>] ? __raw_callee_save_xen_irq_disable+0x6/0x8
[ 0.000000] [<c13a85ac>] ? start_kernel+0xb7/0x363
[ 0.000000] [<c13aa1d5>] ? xen_start_kernel+0x515/0x51c
[ 0.000000] ------------[ cut here ]------------
[ 0.000000] WARNING: at arch/x86/xen/multicalls.c:182 xen_mc_issue+0x11/0x1f()
[ 0.000000] Modules linked in:
[ 0.000000] Pid: 0, comm: swapper Tainted: G W 2.6.32.24 #1
[ 0.000000] Call Trace:
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c10373ad>] ? warn_slowpath_common+0x5e/0x8a
[ 0.000000] [<c10373e3>] ? warn_slowpath_null+0xa/0xc
[ 0.000000] [<c1004a6f>] ? xen_mc_issue+0x11/0x1f
[ 0.000000] [<c1005676>] ? xen_set_pmd_hyper+0x59/0x61
[ 0.000000] [<c102502a>] ? set_pmd_pfn+0xc3/0xd5
[ 0.000000] [<c13bb5f5>] ? initmem_init+0x525/0x66b
[ 0.000000] [<c13abf92>] ? setup_arch+0x7e3/0xa17
[ 0.000000] [<c10378e7>] ? release_console_sem+0x174/0x1a2
[ 0.000000] [<c1037da4>] ? vprintk+0x2e7/0x31f
[ 0.000000] [<c13d0020>] ? pci_pcbios_init+0x107/0x20d
[ 0.000000] [<c1005752>] ? __raw_callee_save_xen_irq_disable+0x6/0x8
[ 0.000000] [<c13a85ac>] ? start_kernel+0xb7/0x363
[ 0.000000] [<c13aa1d5>] ? xen_start_kernel+0x515/0x51c
[ 0.000000] ---[ end trace a7919e7f17c0a727 ]---
[ 0.000000] mapped low ram: 0 - 20000000
[ 0.000000] low ram: 0 - 20000000
[ 0.000000] node 0 low ram: 00000000 - 20000000
[ 0.000000] node 0 bootmap 00002000 - 00006000
[ 0.000000] (10 early reservations) ==> bootmem [0000000000 - 0020000000]
[ 0.000000] #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000]
[ 0.000000] #1 [0001666000 - 0001674000] XEN PAGETABLES ==> [0001666000 - 0001674000]
[ 0.000000] #2 [0000001000 - 0000002000] EX TRAMPOLINE ==> [0000001000 - 0000002000]
[ 0.000000] #3 [0000006000 - 0000007000] TRAMPOLINE ==> [0000006000 - 0000007000]
[ 0.000000] #4 [0001000000 - 00014bd2e4] TEXT DATA BSS ==> [0001000000 - 00014bd2e4]
[ 0.000000] #5 [00015e3000 - 0001666000] XEN START INFO ==> [00015e3000 - 0001666000]
[ 0.000000] #6 [0000100000 - 00001f3000] PGTABLE ==> [0000100000 - 00001f3000]
[ 0.000000] #7 [001fa00000 - 0020000000] KVA RAM ==> [001fa00000 - 0020000000]
[ 0.000000] #8 [001f400000 - 001fa00000] KVA PG ==> [001f400000 - 001fa00000]
[ 0.000000] #9 [0000002000 - 0000006000] BOOTMAP ==> [0000002000 - 0000006000]
[ 0.000000] Zone PFN ranges:
[ 0.000000] DMA 0x00000000 -> 0x00001000
[ 0.000000] Normal 0x00001000 -> 0x00020000
[ 0.000000] HighMem 0x00020000 -> 0x00020000
[ 0.000000] Movable zone start PFN for each node
[ 0.000000] early_node_map[2] active PFN ranges
[ 0.000000] 0: 0x00000000 -> 0x000000a0
[ 0.000000] 0: 0x00000100 -> 0x0001fa00
[ 0.000000] Using APIC driver default
[ 0.000000] SFI: Simple Firmware Interface v0.7 http://simplefirmware.org
[ 0.000000] SMP: Allowing 1 CPUs, 0 hotplug CPUs
[ 0.000000] Local APIC disabled by BIOS -- you can enable it with "lapic"
[ 0.000000] APIC: disable apic facility
[ 0.000000] PM: Registered nosave memory: 00000000000a0000 - 0000000000100000
[ 0.000000] Allocating PCI resources starting at 20000000 (gap: 20000000:e0000000)
[ 0.000000] Booting paravirtualized kernel on Xen
[ 0.000000] Xen version: 3.2-1
[ 0.000000] NR_CPUS:32 nr_cpumask_bits:32 nr_cpu_ids:1 nr_node_ids:8
[ 0.000000] PERCPU: Embedded 15 pages/cpu @c14c3000 s37784 r0 d23656 u65536
[ 0.000000] pcpu-alloc: s37784 r0 d23656 u65536 alloc=16*4096
[ 0.000000] pcpu-alloc: [0] 0
[ 0.000000] Xen: using vcpu_info placement
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 128428
[ 0.000000] Policy zone: Normal
[ 0.000000] Kernel command line: root=/dev/sda2 ro
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Enabling fast FPU save and restore... done.
[ 0.000000] Enabling unmasked SIMD FPU exception support... done.
[ 0.000000] Initializing CPU#0
[ 0.000000] Initializing HighMem for node 0 (00000000:00000000)
[ 0.000000] Memory: 504704k/524288k available (2486k kernel code, 13052k reserved, 1256k data, 372k init, 0k highmem)
[ 0.000000] virtual kernel memory layout:
[ 0.000000] fixmap : 0xf5556000 - 0xf57ff000 (2724 kB)
[ 0.000000] pkmap : 0xf5000000 - 0xf5200000 (2048 kB)
[ 0.000000] vmalloc : 0xe0800000 - 0xf4ffe000 ( 327 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] .init : 0xc13a8000 - 0xc1405000 ( 372 kB)
[ 0.000000] .data : 0xc126d8a1 - 0xc13a7934 (1256 kB)
[ 0.000000] .text : 0xc1000000 - 0xc126d8a1 (2486 kB)
[ 0.000000] SLUB: Genslabs=14, HWalign=128, Order=0-3, MinObjects=0, CPUs=1, Nodes=8
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] NR_IRQS:1280
[ 0.000000] Console: colour dummy device 80x25
[ 0.000000] console [tty0] enabled
[ 0.000000] console [hvc0] enabled
[ 0.000000] installing Xen timer for CPU 0
[ 0.000000] Detected 3189.366 MHz processor.
[ 0.004000] Calibrating delay loop (skipped), value calculated using timer frequency.. 6378.73 BogoMIPS (lpj=12757464)
[ 0.004000] Security Framework initialized
[ 0.004000] SELinux: Disabled at boot.
[ 0.004000] Mount-cache hash table entries: 512
[ 0.004000] Initializing cgroup subsys ns
[ 0.004000] Initializing cgroup subsys cpuacct
[ 0.004000] Initializing cgroup subsys devices
[ 0.004000] Initializing cgroup subsys freezer
[ 0.004000] Initializing cgroup subsys net_cls
[ 0.004000] CPU: Trace cache: 12K uops, L1 D cache: 8K
[ 0.004000] CPU: L2 cache: 512K
[ 0.004000] CPU: L3 cache: 1024K
[ 0.004000] CPU: Unsupported number of siblings 2
[ 0.004000] Performance Events: no PMU driver, software events only.
[ 0.004000] SMP alternatives: switching to UP code
[ 0.004000] Freeing SMP alternatives: 14k freed
[ 0.005073] Brought up 1 CPUs
[ 0.005177] BUG: unable to handle kernel NULL pointer dereference at (null)
[ 0.005218] IP: [<c1030956>] cpu_attach_domain+0x66/0x15f
[ 0.005261] *pdpt = 000000000140b001 *pde = 0000000000000000
[ 0.005295] Oops: 0000 [#1] SMP
[ 0.005320] last sysfs file:
[ 0.005334] Modules linked in:
[ 0.005353]
[ 0.005369] Pid: 1, comm: swapper Tainted: G W (2.6.32.24 #1)
[ 0.005390] EIP: 0061:[<c1030956>] EFLAGS: 00010206 CPU: 0
[ 0.005414] EIP is at cpu_attach_domain+0x66/0x15f
[ 0.005447] EAX: 00000000 EBX: c14c749c ECX: 00000000 EDX: 0000042f
[ 0.005483] ESI: c14c7430 EDI: c14c7358 EBP: 0000102f ESP: df035f34
[ 0.005503] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: e021
[ 0.005523] Process swapper (pid: 1, ti=df034000 task=df030000 task.ti=df034000)
[ 0.005542] Stack:
[ 0.005554] 00000000 df044000 c14cbea0 0000042f 00000008 00000000 c13ff358 00000008
[ 0.005608] <0> 00000020 c103113b c13ff4fc c13ff49c 00000000 df001058 c1005768 df001058
[ 0.005672] <0> 00000020 00000001 c1005dbc 00000000 00000004 00000000 00000001 00000001
[ 0.005743] Call Trace:
[ 0.005768] [<c103113b>] ? __build_sched_domains+0x6ec/0x74d
[ 0.005798] [<c1005768>] ? xen_force_evtchn_callback+0xc/0x10
[ 0.005828] [<c1005dbc>] ? check_events+0x8/0xc
[ 0.005858] [<c13bc138>] ? sched_init_smp+0xc2/0x161
[ 0.005883] [<c13a82a1>] ? kernel_init+0xd0/0x15d
[ 0.005905] [<c13a81d1>] ? kernel_init+0x0/0x15d
[ 0.005932] [<c1008d47>] ? kernel_thread_helper+0x7/0x10
[ 0.005950] Code: eb 73 8b 1e 85 db 74 71 8b 43 38 8b 6e 38 89 44 24 0c 8b 43 5c e8 83 91 11 00 48 74 4b 8b 53 38 f7 c2 8f 02 00 00 74 0b 8b 43 08 <3b> 00 0f 85 c5 00 00 00 80 e2 20 0f 85 bc 00 00 00 eb 2a 8b 43
[ 0.006308] EIP: [<c1030956>] cpu_attach_domain+0x66/0x15f SS:ESP e021:df035f34
[ 0.006339] CR2: 0000000000000000
[ 0.006356] ---[ end trace a7919e7f17c0a728 ]---
[ 0.006390] Kernel panic - not syncing: Attempted to kill init!
[ 0.006410] Pid: 1, comm: swapper Tainted: G D W 2.6.32.24 #1
[ 0.006427] Call Trace:
[ 0.006445] [<c12682c5>] ? panic+0x38/0xe4
[ 0.006468] [<c1039f82>] ? do_exit+0x5a/0x5e6
[ 0.006493] [<c126837f>] ? printk+0xe/0x17
[ 0.006512] [<c126a848>] ? oops_end+0x98/0x9d
[ 0.006532] [<c1020f60>] ? no_context+0x134/0x13d
[ 0.006551] [<c102107e>] ? __bad_area_nosemaphore+0x115/0x11d
[ 0.006574] [<c1094202>] ? __alloc_pages_nodemask+0xef/0x4d1
[ 0.006594] [<c1005768>] ? xen_force_evtchn_callback+0xc/0x10
[ 0.008000] [<c1005dbc>] ? check_events+0x8/0xc
[ 0.008000] [<c1005768>] ? xen_force_evtchn_callback+0xc/0x10
[ 0.008000] [<c1005dbc>] ? check_events+0x8/0xc
[ 0.008000] [<c1005db3>] ? xen_restore_fl_direct_end+0x0/0x1
[ 0.008000] [<c126b873>] ? do_page_fault+0x115/0x307
[ 0.008000] [<c126b75e>] ? do_page_fault+0x0/0x307
[ 0.008000] [<c1021090>] ? bad_area_nosemaphore+0xa/0xc
[ 0.008000] [<c1269f43>] ? error_code+0x73/0x78
[ 0.008000] [<c102007b>] ? get_call_destination+0x55/0x83
[ 0.008000] [<c1030956>] ? cpu_attach_domain+0x66/0x15f
[ 0.008000] [<c103113b>] ? __build_sched_domains+0x6ec/0x74d
[ 0.008000] [<c1005768>] ? xen_force_evtchn_callback+0xc/0x10
[ 0.008000] [<c1005dbc>] ? check_events+0x8/0xc
[ 0.008000] [<c13bc138>] ? sched_init_smp+0xc2/0x161
[ 0.008000] [<c13a82a1>] ? kernel_init+0xd0/0x15d
[ 0.008000] [<c13a81d1>] ? kernel_init+0x0/0x15d
[ 0.008000] [<c1008d47>] ? kernel_thread_helper+0x7/0x10
--
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- Re: [Xen-users] domU kernel.org kernel,
Olivier Hanesse <=
|
|
|
|
|