From nobody Sun May 19 08:26:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.46 as permitted sender) client-ip=209.85.221.46; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f46.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.46 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1621876441; cv=none; d=zohomail.com; s=zohoarc; b=YeH+3X/p7keNcxA7rdF8YT5FUk8VqViIUKNO2mQt7QkuI6l6aNRglqZImeAdn5dVPI6XOmX5LeIl+XvcEyfYQ8V2+FWeSW3jG4yZBjctVZDmL1y1jxOQ4kdj7JQc9y51g00jFxuf+kzma/2a2vuZWAMj339m1YjSoxIQ/iUl5m4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1621876441; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:MIME-Version:Message-ID:Sender:Subject:To; bh=DCP7Rkl74fvr8YdkDRqRx/SGO4Zze6JHMull36L2FNY=; b=XlEvsWsIpp/xEJVBEMJ1v76yWqu+xmFc6YbUeXsFKWZA2A0G5utu13PsZIpVjvZknEDglxPnZ9QGfXgfyyubRZ0/LrBCrUnkMar+h/FX7EmqUyzidD+8cjugIdOlafVTzCXY+mp7doJ3U1b7xLI1p55oqBK3twVjwuDNU6N7c1c= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.46 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.46]) by mx.zohomail.com with SMTPS id 162187644126456.55781164736959; Mon, 24 May 2021 10:14:01 -0700 (PDT) Received: by mail-wr1-f46.google.com with SMTP id x7so9693558wrt.12 for ; Mon, 24 May 2021 10:14:00 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (31.red-83-51-215.dynamicip.rima-tde.net. [83.51.215.31]) by smtp.gmail.com with ESMTPSA id p6sm8408159wma.4.2021.05.24.10.13.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 24 May 2021 10:13:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=DCP7Rkl74fvr8YdkDRqRx/SGO4Zze6JHMull36L2FNY=; b=VmhVnwnBzqp0QGrpi2n9G4oibNZ51KVe2gpKBO7Ut0dBYYN/l8wdqkl56c0FfKz6nU 4sBeYLOMYm9n37JOHmzvW/a6IUea/xf13+LbRrMkpBijMOdgQ2nzw+68rFhRWTbfWZyH NJtLSfxHC/HehX9dADCeuAU1/3PVEjy29bBJmve8wrKIXXSqkV8sYxx/eFptu5Yg33Bc 35znJ26G9cddSFHcmJtr34Dergenb+GzVCPT6HIHnnFz0qJ8j8m074Qlb1WohmVomYVL lB/ko009D5uA7BdHMrVNOEuU/ekO0J8r6laYpw77rP3vx8evJCz0RtbYG3qbtEnAUDBw qmBw== 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 :mime-version:content-transfer-encoding; bh=DCP7Rkl74fvr8YdkDRqRx/SGO4Zze6JHMull36L2FNY=; b=cED9jke2oQFew+URi6xURNa5OiVvjtZLCSL/NQ56Pe0P9vF/b+Of4NPcwK5AmTzQLU 2LAD54gEt2UWhj23zlHtpu/Msyh2aNUnJ8cr7ynGrU6sGV1Bw6Zc1ECLzjz+IauG4BJN 4ZOxXh+m8O6H7D2gZLdzBPqpvLY0CmxIcYsomvnKL1RKslVC9B8hhiMA4bO3CXvUDxYK WEwjAuWHfelvGVu/M9hF5A4ougv3Jxp7klJiFKZ43ljwEzilrVsQZHyOiT3lf16lZ0px fWoslS64lguW72RXJzIf5DiHtwL5sMzt/lep3uUgjTxGW2EqGLbIHDplkhXau1q3QTNC ioXw== X-Gm-Message-State: AOAM530emY3/UwRMRXaFpNCbSm7VWOLwA9/lqHP9ZHWPvYG1Dqx34gmG 9Zx6cY0WKyWeeXuQgAiXPOucvcqNoLF4pA== X-Google-Smtp-Source: ABdhPJxo9Drs2hxlsd8KUGVeWxqZrhLde+o/qN7Yj7CzSrc3Hs7GjjjgJUyWYe/bHQr/lTf2+pMUBw== X-Received: by 2002:a5d:4e91:: with SMTP id e17mr24006465wru.396.1621876439531; Mon, 24 May 2021 10:13:59 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: "Michael S. Tsirkin" , Igor Mammedov , qemu-trivial@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH] hw/mem/pc-dimm: Hint it is not usable on non-NUMA machines Date: Mon, 24 May 2021 19:13:52 +0200 Message-Id: <20210524171352.3796151-1-f4bug@amsat.org> X-Mailer: git-send-email 2.26.3 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) When trying to use the pc-dimm device on a non-NUMA machine, we get: $ qemu-system-arm -M none -cpu max -S -device pc-dimm Segmentation fault (core dumped) (gdb) bt #0 pc_dimm_realize (dev=3D0x555556da3e90, errp=3D0x7fffffffcd10) at hw/m= em/pc-dimm.c:184 #1 0x0000555555fe1f8f in device_set_realized (obj=3D0x555556da3e90, valu= e=3Dtrue, errp=3D0x7fffffffce18) at hw/core/qdev.c:761 #2 0x0000555555feb4a9 in property_set_bool (obj=3D0x555556da3e90, v=3D0x= 555556e54420, name=3D0x5555563c3c41 "realized", opaque=3D0x555556a704f0, er= rp=3D0x7fffffffce18) at qom/object.c:2257 Use a friendler error message instead: $ qemu-system-arm -M none -cpu max -S -device pc-dimm qemu-system-arm: -device pc-dimm: NUMA is not supported by this machine-t= ype Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mem/pc-dimm.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hw/mem/pc-dimm.c b/hw/mem/pc-dimm.c index a3a2560301c..e8851a0c3b1 100644 --- a/hw/mem/pc-dimm.c +++ b/hw/mem/pc-dimm.c @@ -181,8 +181,13 @@ static void pc_dimm_realize(DeviceState *dev, Error **= errp) PCDIMMDevice *dimm =3D PC_DIMM(dev); PCDIMMDeviceClass *ddc =3D PC_DIMM_GET_CLASS(dimm); MachineState *ms =3D MACHINE(qdev_get_machine()); - int nb_numa_nodes =3D ms->numa_state->num_nodes; + int nb_numa_nodes; =20 + if (!ms->numa_state) { + error_setg(errp, "NUMA is not supported by this machine-type"); + return; + } + nb_numa_nodes =3D ms->numa_state->num_nodes; if (!dimm->hostmem) { error_setg(errp, "'" PC_DIMM_MEMDEV_PROP "' property is not set"); return; --=20 2.26.3