Message ID | 1541540283-45699-2-git-send-email-pbonzini@redhat.com |
---|---|
State | New |
Headers | show
Return-Path: <qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org> X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=<UNKNOWN>) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="uR38xXc2"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 42qNdP3G3xz9s7W for <incoming@patchwork.ozlabs.org>; Wed, 7 Nov 2018 08:55:21 +1100 (AEDT) Received: from localhost ([::1]:43941 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>) id 1gK9Jf-0005J5-0w for incoming@patchwork.ozlabs.org; Tue, 06 Nov 2018 16:55:19 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40129) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <paolo.bonzini@gmail.com>) id 1gK9Cr-0002l6-Do for qemu-devel@nongnu.org; Tue, 06 Nov 2018 16:48:19 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <paolo.bonzini@gmail.com>) id 1gK93V-0001OE-WF for qemu-devel@nongnu.org; Tue, 06 Nov 2018 16:38:41 -0500 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]:36807) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from <paolo.bonzini@gmail.com>) id 1gK93V-0008JR-42 for qemu-devel@nongnu.org; Tue, 06 Nov 2018 16:38:37 -0500 Received: by mail-wm1-x332.google.com with SMTP id a8-v6so13741234wmf.1 for <qemu-devel@nongnu.org>; Tue, 06 Nov 2018 13:38:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=Z2dLXAjqPsYiDE2KG3TA3x3OxiKYmk9EUCnKtZXwwok=; b=uR38xXc2FCafwcRWuISNhyg41/cNeFPowOGOLpKatrxv1LT8qRIKOQcklOgOG8iPaK bsrwtffvPhZv5dDednAntqJrf7y6274/jRuqVcEatr1GQOG7dqGYEIm+63hphAn1JAK0 NAOvGQLuma3jDYmX9uzR/ndb2SdtYS1ayQ5vuh3meoi4uZNfYzAJbUvGqMFOe912M7ic FQH5MxL1K9m7xdfcQDilvKipnvmIn7eglqVsMlgK80p7wCAUIx1GBeMlejx5Mmd+b0dh Q5E5mIPdyVhfi//5zWhxF96QLcTi5oDCPYULt9XcZyl5FS1a+3PaDVrhhMWNdk7AqBYY MV0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=Z2dLXAjqPsYiDE2KG3TA3x3OxiKYmk9EUCnKtZXwwok=; b=PC6nPSYSyUDwx3oqBmVB+VE7urfFY4KhJp6ZC7pjzgwBuULzXwbbXHX7k8qvIJNm8Z umJt1eAUf/Bz2M+93mg+boLypG/yLrCaYOEHAwy7aFzDe/sJRA/Vd8T9F0IJm14YeVre ubDQHFqXXGzS6xOmvhnG3ZAW980dnXasame6BpQ6omso2hBQO0FneWY0IRH6IgBy2UTW sHhaUuLS6SUaDswQ23xBe5iTWvqOywNfQyxAgg65Nb2N5fcnLnjEnZ4q/U0XtVtIV5w4 6UxqX/eBKU5S+d4jPCwR/I5UtBRyhMfS65JgfzzsvNTpnioprQp9Lmk3PwDixyVfaBOm bxyA== X-Gm-Message-State: AGRZ1gIHQFVyu2w7POJi1S2m7pKxrBYcxdiTcXOEJ1TMk10q7vMNfzr4 IXRs1jZV/ezEOcVs9uwpYJyoc9tK X-Google-Smtp-Source: AJdET5emQIRB1D5jfdJcUsgVwnVsKujhye0u+e4Okfu9BJfA388Ptx5QJuh2MCacvx5qOpZQHEKv3Q== X-Received: by 2002:a1c:84:: with SMTP id 126-v6mr3227036wma.96.1541540286607; Tue, 06 Nov 2018 13:38:06 -0800 (PST) Received: from 640k.lan ([93.56.166.5]) by smtp.gmail.com with ESMTPSA id l186-v6sm3223526wma.13.2018.11.06.13.38.05 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 06 Nov 2018 13:38:06 -0800 (PST) From: Paolo Bonzini <pbonzini@redhat.com> To: qemu-devel@nongnu.org Date: Tue, 6 Nov 2018 22:37:47 +0100 Message-Id: <1541540283-45699-2-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1541540283-45699-1-git-send-email-pbonzini@redhat.com> References: <1541540283-45699-1-git-send-email-pbonzini@redhat.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::332 Subject: [Qemu-devel] [PULL 01/17] icount: fix deadlock when all cpus are sleeping X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <http://lists.nongnu.org/archive/html/qemu-devel/> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=subscribe> Cc: Clement Deschamps <clement.deschamps@greensocs.com> Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" <qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org> |
Series |
[PULL,01/17] icount: fix deadlock when all cpus are sleeping
|
expand
|
diff --git a/cpus.c b/cpus.c index 3978f63..a2b33cc 100644 --- a/cpus.c +++ b/cpus.c @@ -1554,6 +1554,14 @@ static void *qemu_tcg_rr_cpu_thread_fn(void *arg) atomic_mb_set(&cpu->exit_request, 0); } + if (use_icount && all_cpu_threads_idle()) { + /* + * When all cpus are sleeping (e.g in WFI), to avoid a deadlock + * in the main_loop, wake it up in order to start the warp timer. + */ + qemu_notify_event(); + } + qemu_tcg_rr_wait_io_event(cpu ? cpu : first_cpu); deal_with_unplugged_cpus(); }