[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Crash when using cpupools


  • To: Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>
  • Date: Fri, 3 Sep 2021 15:41:47 +0000
  • Accept-language: en-GB, en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=S/2w3w+Uf621jp6T0BcYnlrni+StxWj3wQqAu2bVjOk=; b=jHNuHUXlhPpY9T0jkDt2WRo1n7B1G1ZbhN6mvC1pqJELbXN5Eny8bPjr0ViAUKjwluzNYnPVgoE3rkEz2TP7DW/Yl80dci7svzxcSom/S98NRz9GRWReufPS4q3ixFLKqpEdiCSoC0dGhOd9gJ6Z9YGoZBYLgEp0v/CJyWs5vZtbMBiKvdlBx8T9kIEQrBiKh3hferlWI4B3LpDwK59qymG41bD9krrajJf21XSUqggt4v5YE/reQMJI7S9hUiAmcBdPW/GO7ew+y7kybA2vPRf2laAjgiMDK0AXzE2L2Wuu0YyOqG1EtnBgFxeS9/wxzXpdeXaHj+09FnO72OPwkQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mAJ//xP/Ak0GYtnAYkTXpGRaapCgREl0F3WrxCOLn3K+eNgdC89Yvsy4vkmQp+TuyJQVjDdoMcynUDK0MOXpt6VcrN23EqgVULtg2ha14CJurPCvcjHzM/qR8pLsWnoSXDZdkXJHYW6C1+OVTA5NXE1qv6zwQZv6yH+GtdT+n1cRvBRYDOoMi9QdoMy2vQP9NMbeMr7tnXBxFPiD8IKyLFTM2kKY1A5aDcBef8H2Vsf83gpe61jNq+SBwY2jJghdjrg5vv8bEVd0p7ixtfkXSrJvihDRHeYX+k0xxfvlY44vYdeXNQkNbDFodgSC2AJD9WK+2zZ2foipzvvV17QJCw==
  • Authentication-results-original: lists.xenproject.org; dkim=none (message not signed) header.d=none;lists.xenproject.org; dmarc=none action=none header.from=arm.com;
  • Cc: Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>, Dario Faggioli <dfaggioli@xxxxxxxx>
  • Delivery-date: Fri, 03 Sep 2021 15:42:10 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Nodisclaimer: true
  • Original-authentication-results: lists.xenproject.org; dkim=none (message not signed) header.d=none;lists.xenproject.org; dmarc=none action=none header.from=arm.com;
  • Thread-index: AQHXoNo0buBDGTl+VEiGgPdGr1E/CQ==
  • Thread-topic: Crash when using cpupools

Hi,

While doing some investigation with cpupools I encountered a crash when trying 
to isolate a guest to its own physical cpu.

I am using current staging status.

I did the following (on FVP with 8 cores):
- start dom0 with dom0_max_vcpus=1
- remove core 1 from dom0 cpupool: xl cpupool-cpu-remove Pool-0 1
- create a new pool: xl cpupool-create name=\"NetPool\”
- add core 1 to the pool: xl cpupool-cpu-add NetPool 1
- create a guest in NetPool using the following in the guest config: 
pool=“NetPool"

I end with a crash with the following call trace during guest creation:
(XEN) Xen call trace:
(XEN)    [<0000000000234cb0>] credit2.c#csched2_alloc_udata+0x58/0xfc (PC)
(XEN)    [<0000000000234c80>] credit2.c#csched2_alloc_udata+0x28/0xfc (LR)
(XEN)    [<0000000000242d38>] sched_move_domain+0x144/0x6c0
(XEN)    [<000000000022dd18>] cpupool.c#cpupool_move_domain_locked+0x38/0x70
(XEN)    [<000000000022fadc>] cpupool_do_sysctl+0x73c/0x780
(XEN)    [<000000000022d8e0>] do_sysctl+0x788/0xa58
(XEN)    [<0000000000273b68>] traps.c#do_trap_hypercall+0x78/0x170
(XEN)    [<0000000000274f70>] do_trap_guest_sync+0x138/0x618
(XEN)    [<0000000000260458>] entry.o#guest_sync_slowpath+0xa4/0xd4

After some debugging I found out that unit->vcpu_list is NULL after 
unit->vcpu_list = d->vcpu[unit->unit_id]; with unit_id 0 in 
common/sched/core.c:688
This makes the call to is_idle_unit(unit) in csched2_alloc_udata trigger the 
crash.

Am I doing something wrong ?
Is it a know problem ?
Does anybody have a pointer of where the source of the issue might be ?

I have a working setup to debug this if any other info is required to 
understand the issue.

Cheers
Bertrand


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.