From nobody Sun Feb 8 11:38:44 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602762925; cv=none; d=zohomail.com; s=zohoarc; b=Bo7Up+FNjHCe+FiBIQRiEzscKD7pUjhI74IhMuD1qqf9VuFmsTdpApjsLMORQFRlin4iM64hv3/6kktnRYCRnEEsp6ISiSPtq+mlWqTgTLrxpTdBQWJVRJ+MJXx6bMMOwvpqX86ZBZ/hiJthdACqDB3Px9BnORKLSJihqqf8KnE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602762925; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+GpNs/t/qJwV7hmRrMsEBIPirpG4deXYMjvFLM1k6to=; b=BE3ahR2zV3pp5hoQBg3xUA3CQcarMAMVoGbxjuAVfxjR7rHvmR3xDGyr+Rby0soDkVRqxl4Z1vXFGQPRJKZJmBxoP208wqR9MqJQKsWWLpJ2+bRas62zeC9ZaewHmNIR2K+fwILM1RCkLwkHNTx2yjCdH0KduZjPdSgX1t/3RCE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602762925657422.1055160961405; Thu, 15 Oct 2020 04:55:25 -0700 (PDT) Received: from localhost ([::1]:54682 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kT1qu-0004Rq-DR for importer@patchew.org; Thu, 15 Oct 2020 07:55:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54082) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kT1pQ-0002uw-RY for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:53:53 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:45867) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kT1pO-0003JA-Jq for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:53:52 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-551-jKVuRGcDNo6QZprJR2FBHA-1; Thu, 15 Oct 2020 07:53:48 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 08CE31091070; Thu, 15 Oct 2020 11:53:47 +0000 (UTC) Received: from laptop.redhat.com (ovpn-113-210.ams2.redhat.com [10.36.113.210]) by smtp.corp.redhat.com (Postfix) with ESMTP id 62F337366A; Thu, 15 Oct 2020 11:53:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602762829; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+GpNs/t/qJwV7hmRrMsEBIPirpG4deXYMjvFLM1k6to=; b=cI/hWOdvhMAEj1LTGz29b8Zovn1Y0CZJvkVimR4lNgwSVLb+fMIMEKmi/QpSTKWWz8Ongq IVu1uEnfe6TW4IaiRvwkD9E4lWE34IOx1WUsGnkAfJiwkjepPWAjKHe5Nc1FgGBpxz4pKV LzCxLu9WpC8m1dN/Mc953vaFiuNQXNA= X-MC-Unique: jKVuRGcDNo6QZprJR2FBHA-1 From: Eric Auger To: eric.auger.pro@gmail.com, eric.auger@redhat.com, qemu-devel@nongnu.org, qemu-arm@nongnu.org, stefanha@redhat.com, fam@euphon.net, philmd@redhat.com, alex.williamson@redhat.com Subject: [RFC 1/5] block/nvme: use some NVME_CAP_* macros Date: Thu, 15 Oct 2020 13:52:48 +0200 Message-Id: <20201015115252.15582-2-eric.auger@redhat.com> In-Reply-To: <20201015115252.15582-1-eric.auger@redhat.com> References: <20201015115252.15582-1-eric.auger@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=eric.auger@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=eric.auger@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 02:38:26 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" let's use NVME_CAP_DSTRD, NVME_CAP_MPSMIN and NVME_CAP_TO macros Signed-off-by: Eric Auger --- block/nvme.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/block/nvme.c b/block/nvme.c index f4f27b6da7..e3d96f20d0 100644 --- a/block/nvme.c +++ b/block/nvme.c @@ -728,10 +728,10 @@ static int nvme_init(BlockDriverState *bs, const char= *device, int namespace, goto out; } =20 - s->page_size =3D MAX(4096, 1 << (12 + ((cap >> 48) & 0xF))); - s->doorbell_scale =3D (4 << (((cap >> 32) & 0xF))) / sizeof(uint32_t); + s->page_size =3D MAX(4096, 1 << (12 + NVME_CAP_MPSMIN(cap))); + s->doorbell_scale =3D (4 << ((NVME_CAP_DSTRD(cap)))) / sizeof(uint32_t= ); bs->bl.opt_mem_alignment =3D s->page_size; - timeout_ms =3D MIN(500 * ((cap >> 24) & 0xFF), 30000); + timeout_ms =3D MIN(500 * NVME_CAP_TO(cap), 30000); =20 /* Reset device to get a clean state. */ s->regs->ctrl.cc =3D cpu_to_le32(le32_to_cpu(s->regs->ctrl.cc) & 0xFE); --=20 2.21.3 From nobody Sun Feb 8 11:38:44 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602762947; cv=none; d=zohomail.com; s=zohoarc; b=E3fXPiTXQMYPu3ZPfrP61mvmGxEOVa4PYCJkrrs26Bdo3M3LTBo7ik1x8wBBHtF//AolcTNrXSPGcDQ+Xgr3t4dhGIk93oIJcn90OY4q5gfmQK3+GpxVJOI97w8USuPMbX1t+H2XSuwb2VvCBgXAUsz8FD/FAl4aeYR0J1ZlfnI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602762947; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=05+UVqiqsXjy7Np70DZiepXxuaoYNbo+1ntJdcmVjao=; b=CDa5HFlrmYjdBY7DeWjSRAiDeQGdj9tiQVr9I9sEd/1LJl+QCUYJKKHK5/eJp1pzkdR2c6xO8M82CW2soN9cWad4emgAPVjyioCvtlzxBgxRZbYXP4luO3WLiG3AC4OWbMbbOPsSI54dghasXTexkFoib86kyBm3QAm6ccYDl5M= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 160276294799063.645342411883576; Thu, 15 Oct 2020 04:55:47 -0700 (PDT) Received: from localhost ([::1]:56132 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kT1rG-000561-Oa for importer@patchew.org; Thu, 15 Oct 2020 07:55:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54144) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kT1pg-0003II-6k for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:54:08 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:20411) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kT1pd-0003Jh-5G for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:54:07 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-496-Enp0q7MaN2eKQw0Q2h4Q3Q-1; Thu, 15 Oct 2020 07:54:02 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5F102803646; Thu, 15 Oct 2020 11:54:00 +0000 (UTC) Received: from laptop.redhat.com (ovpn-113-210.ams2.redhat.com [10.36.113.210]) by smtp.corp.redhat.com (Postfix) with ESMTP id 6089C6EF51; Thu, 15 Oct 2020 11:53:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602762844; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=05+UVqiqsXjy7Np70DZiepXxuaoYNbo+1ntJdcmVjao=; b=cEzJ9kSy9+FgNnu5GNx8E9thGd5UfLgVUsyptSvV+vLztJyhPV8wsmol4Kz+7PClzFm+S6 iP9ypX4iKd+fnyw5LKHGz73ptkJqKsRHQvJsvwiD8NxTpsKPU4WbxB5PabQ/UNfcenaZYM +CO6SHAPTxoYfbq14lVBsjPf/fbfjR8= X-MC-Unique: Enp0q7MaN2eKQw0Q2h4Q3Q-1 From: Eric Auger To: eric.auger.pro@gmail.com, eric.auger@redhat.com, qemu-devel@nongnu.org, qemu-arm@nongnu.org, stefanha@redhat.com, fam@euphon.net, philmd@redhat.com, alex.williamson@redhat.com Subject: [RFC 2/5] block/nvme: Change size and alignment of IDENTIFY response buffer Date: Thu, 15 Oct 2020 13:52:49 +0200 Message-Id: <20201015115252.15582-3-eric.auger@redhat.com> In-Reply-To: <20201015115252.15582-1-eric.auger@redhat.com> References: <20201015115252.15582-1-eric.auger@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=eric.auger@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=eric.auger@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 02:10:02 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" In preparation of 64kB host page support, let's change the size and alignment of the IDENTIFY command response buffer so that the VFIO DMA MAP succeeds. We align on the host page size. Signed-off-by: Eric Auger Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- block/nvme.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/block/nvme.c b/block/nvme.c index e3d96f20d0..088ff1825a 100644 --- a/block/nvme.c +++ b/block/nvme.c @@ -513,19 +513,21 @@ static void nvme_identify(BlockDriverState *bs, int n= amespace, Error **errp) .opcode =3D NVME_ADM_CMD_IDENTIFY, .cdw10 =3D cpu_to_le32(0x1), }; + size_t id_size =3D QEMU_ALIGN_UP(sizeof(*id), qemu_real_host_page_size= ); =20 - id =3D qemu_try_memalign(s->page_size, sizeof(*id)); + id =3D qemu_try_memalign(qemu_real_host_page_size, id_size); if (!id) { error_setg(errp, "Cannot allocate buffer for identify response"); goto out; } - r =3D qemu_vfio_dma_map(s->vfio, id, sizeof(*id), true, &iova); + r =3D qemu_vfio_dma_map(s->vfio, id, id_size, true, &iova); if (r) { error_setg(errp, "Cannot map buffer for DMA"); goto out; } =20 - memset(id, 0, sizeof(*id)); + memset(id, 0, id_size); + cmd.dptr.prp1 =3D cpu_to_le64(iova); if (nvme_cmd_sync(bs, s->queues[INDEX_ADMIN], &cmd)) { error_setg(errp, "Failed to identify controller"); @@ -547,7 +549,7 @@ static void nvme_identify(BlockDriverState *bs, int nam= espace, Error **errp) s->supports_write_zeroes =3D !!(oncs & NVME_ONCS_WRITE_ZEROES); s->supports_discard =3D !!(oncs & NVME_ONCS_DSM); =20 - memset(id, 0, sizeof(*id)); + memset(id, 0, id_size); cmd.cdw10 =3D 0; cmd.nsid =3D cpu_to_le32(namespace); if (nvme_cmd_sync(bs, s->queues[INDEX_ADMIN], &cmd)) { --=20 2.21.3 From nobody Sun Feb 8 11:38:44 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602762966; cv=none; d=zohomail.com; s=zohoarc; b=iCw4qgJJC2yS0T9aUmeg8c8h6PQTcGmnMucPxLdHQmTTl74+xoi0QbvqYzSGBLDgC4HGclYdmd3fbOIaKxiMbC1k8fi0MLVsf6QS91GXWzM+QewcZoXjWbd0I8XAcog7yzH9irwpxQJCK1NthA4Yu9SQ4pZpNRLhzOP9prROWc4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602762966; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=VNPuxVO9rJzoSEMdXhnDc51fdnLWxanvWU6sjXozZto=; b=C+OZolaeuNH4LP7NLEplRd5edraJlsgvXiPFcrSztQ2tJyFoJ/PbFlrZi8oZ0dRcTAmQKQjepJGcN0G3EgxWtoy5Q+F5hsvcFseu29ZfM8UdJYVHmfT0vpOHxlKGGU4QoYWCJIdjquZqtqwfPlVmOsmdUsI5diDmKi6fpupYGCs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602762966049594.3387300671769; Thu, 15 Oct 2020 04:56:06 -0700 (PDT) Received: from localhost ([::1]:56844 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kT1rY-0005Os-RX for importer@patchew.org; Thu, 15 Oct 2020 07:56:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54158) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kT1pi-0003NM-Df for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:54:10 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:56354) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kT1pe-0003Jy-NV for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:54:10 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-395-7wiEJ1vkNBqCitoIo_g8oA-1; Thu, 15 Oct 2020 07:54:04 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 1011B6414F; Thu, 15 Oct 2020 11:54:03 +0000 (UTC) Received: from laptop.redhat.com (ovpn-113-210.ams2.redhat.com [10.36.113.210]) by smtp.corp.redhat.com (Postfix) with ESMTP id B6DC66EF51; Thu, 15 Oct 2020 11:54:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602762845; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VNPuxVO9rJzoSEMdXhnDc51fdnLWxanvWU6sjXozZto=; b=RDYgIAeprQN+PzSkyEM+Lv0UOfW+WEmkA9Kc71RCUbY710NswfigwRbaEe3iUL6TQMvtDd COuOdB6jGDcWy+af93GTbFclHb7lHRDuLNK/QzG/N8dJMUalxZUjrHPgnrWZeIAaAJRj52 ls+Aq1yhNYhxdiUcJZr5/wkHWBELaq8= X-MC-Unique: 7wiEJ1vkNBqCitoIo_g8oA-1 From: Eric Auger To: eric.auger.pro@gmail.com, eric.auger@redhat.com, qemu-devel@nongnu.org, qemu-arm@nongnu.org, stefanha@redhat.com, fam@euphon.net, philmd@redhat.com, alex.williamson@redhat.com Subject: [RFC 3/5] block/nvme: Change size and alignment of queue Date: Thu, 15 Oct 2020 13:52:50 +0200 Message-Id: <20201015115252.15582-4-eric.auger@redhat.com> In-Reply-To: <20201015115252.15582-1-eric.auger@redhat.com> References: <20201015115252.15582-1-eric.auger@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=eric.auger@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=eric.auger@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 02:38:26 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" In preparation of 64kB host page support, let's change the size and alignment of the queue so that the VFIO DMA MAP succeeds. We align on the host page size. Signed-off-by: Eric Auger --- block/nvme.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/block/nvme.c b/block/nvme.c index 088ff1825a..cf8ec200af 100644 --- a/block/nvme.c +++ b/block/nvme.c @@ -164,9 +164,9 @@ static void nvme_init_queue(BDRVNVMeState *s, NVMeQueue= *q, size_t bytes; int r; =20 - bytes =3D ROUND_UP(nentries * entry_bytes, s->page_size); + bytes =3D ROUND_UP(nentries * entry_bytes, qemu_real_host_page_size); q->head =3D q->tail =3D 0; - q->queue =3D qemu_try_memalign(s->page_size, bytes); + q->queue =3D qemu_try_memalign(qemu_real_host_page_size, bytes); if (!q->queue) { error_setg(errp, "Cannot allocate queue"); return; --=20 2.21.3 From nobody Sun Feb 8 11:38:44 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602763109; cv=none; d=zohomail.com; s=zohoarc; b=SvPHS0cCymxd5paXN/Tww9AKspC2m356zPG4mZIME0ZYZbC4NcFdGmXoC8FwDc2j6/BBP8Do930rDb9ELCK7EZdSdhksBLbpvB71shh3hnPUDnEYuivXs2TmP6CAUhl4ZbivvRJNFd4JKpj04qrCmSOoSBmqeLzu31CNmLSMJdk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602763109; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=4yxs1c/4iaxsYQiNdwuXpCrreWqd+LrLkK671WD+ltE=; b=eBuiVDDQN5HX1rOjxQHAsed1emwDEOxIKk9eFC7Maf99JPIkjDxbZMVI5q5gd7iaWlyKWWe8JghgX+4Y+PoGjE9GO17mypIktdppnEsIDJTM0ihNfHB6hnkvo4/BRYvzxqKHNdECyoaEcuOgFq4ryatp2syqMPplCkVFWpQdvKg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602763109015416.2051782751205; Thu, 15 Oct 2020 04:58:29 -0700 (PDT) Received: from localhost ([::1]:33878 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kT1tr-0007fX-Rs for importer@patchew.org; Thu, 15 Oct 2020 07:58:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54170) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kT1pj-0003PH-Te for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:54:11 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:30876) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kT1pi-0003KN-4P for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:54:11 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-236-3Kz0U5iFOAKZ_9RgaNZB9Q-1; Thu, 15 Oct 2020 07:54:07 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id BE2E11091062; Thu, 15 Oct 2020 11:54:05 +0000 (UTC) Received: from laptop.redhat.com (ovpn-113-210.ams2.redhat.com [10.36.113.210]) by smtp.corp.redhat.com (Postfix) with ESMTP id 6A6EC6EF51; Thu, 15 Oct 2020 11:54:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602762848; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=4yxs1c/4iaxsYQiNdwuXpCrreWqd+LrLkK671WD+ltE=; b=OwX4wfV7tqN9BFUF72tMM3wYchHf8zcb3+xYznmsBWetWC/lZ8iy6F1RNucjN/MdROnHvi coC+ixsWP6TV3cn8p4AzwBWzLGC22puhq31xECAi4VzfBM0Vq7apdTJdllE8d02ou2Jld0 aApth3aoG+ujinyzrlUBHXNhjJw5vfs= X-MC-Unique: 3Kz0U5iFOAKZ_9RgaNZB9Q-1 From: Eric Auger To: eric.auger.pro@gmail.com, eric.auger@redhat.com, qemu-devel@nongnu.org, qemu-arm@nongnu.org, stefanha@redhat.com, fam@euphon.net, philmd@redhat.com, alex.williamson@redhat.com Subject: [RFC 4/5] block/nvme: Change size and alignment of prp_list_pages Date: Thu, 15 Oct 2020 13:52:51 +0200 Message-Id: <20201015115252.15582-5-eric.auger@redhat.com> In-Reply-To: <20201015115252.15582-1-eric.auger@redhat.com> References: <20201015115252.15582-1-eric.auger@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=eric.auger@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=eric.auger@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 02:10:02 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" In preparation of 64kB host page support, let's change the size and alignment of the prp_list_pages so that the VFIO DMA MAP succeeds with 64kB host page size. We align on the host page size. Signed-off-by: Eric Auger --- block/nvme.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/block/nvme.c b/block/nvme.c index cf8ec200af..be8ec48bf2 100644 --- a/block/nvme.c +++ b/block/nvme.c @@ -210,24 +210,24 @@ static NVMeQueuePair *nvme_create_queue_pair(BDRVNVMe= State *s, Error *local_err =3D NULL; NVMeQueuePair *q; uint64_t prp_list_iova; + size_t bytes; =20 q =3D g_try_new0(NVMeQueuePair, 1); if (!q) { return NULL; } - q->prp_list_pages =3D qemu_try_memalign(s->page_size, - s->page_size * NVME_NUM_REQS); + bytes =3D QEMU_ALIGN_UP(s->page_size * NVME_NUM_REQS, qemu_real_host_p= age_size); + q->prp_list_pages =3D qemu_try_memalign(qemu_real_host_page_size, byte= s); if (!q->prp_list_pages) { goto fail; } - memset(q->prp_list_pages, 0, s->page_size * NVME_NUM_REQS); + memset(q->prp_list_pages, 0, bytes); qemu_mutex_init(&q->lock); q->s =3D s; q->index =3D idx; qemu_co_queue_init(&q->free_req_queue); q->completion_bh =3D aio_bh_new(aio_context, nvme_process_completion_b= h, q); - r =3D qemu_vfio_dma_map(s->vfio, q->prp_list_pages, - s->page_size * NVME_NUM_REQS, + r =3D qemu_vfio_dma_map(s->vfio, q->prp_list_pages, bytes, false, &prp_list_iova); if (r) { goto fail; --=20 2.21.3 From nobody Sun Feb 8 11:38:44 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602763111; cv=none; d=zohomail.com; s=zohoarc; b=GizhMxN8GWjaM+YUr693T+bycmGxus32e7sMm91Eol1Y8DpNaqLPhfUvUO+345CryfpifN2pNpgI5h0IMF3YeuksAO0TJYinwBDtwePsqeZNCZwiZlkvnuxg+FXJWjiGSxosvZT+wiLG/gvnJIr5joD79+QQZ/adcutKVjfYSf0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602763111; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=kMVMwCUPwIjBUEUO2/ANQICpZSE+/w+eh9kynvP9o8o=; b=WGYHWlOQN0chV6WvILhYWrP+x5PO5borRk0hyryU8M/tls19nEIwt2jm4ka1NW6P+D1pFRzYhOnI14zU2kb90SBeVFIPHyDR3tT1gJKpvaZ5aWxqlVhO/jxJ0PPuEkh63hm61h82YnrMH3mLUBVVMqfsjbQuH1HcjanPbahe+jU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602763111624171.66478667169997; Thu, 15 Oct 2020 04:58:31 -0700 (PDT) Received: from localhost ([::1]:34042 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kT1tu-0007jo-Ex for importer@patchew.org; Thu, 15 Oct 2020 07:58:30 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54206) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kT1po-0003TS-Q7 for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:54:16 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:21660) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kT1pk-0003Ke-1z for qemu-devel@nongnu.org; Thu, 15 Oct 2020 07:54:14 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-570-w0_ghJvFM62y6YrZO5EqaA-1; Thu, 15 Oct 2020 07:54:09 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8167018C89C0; Thu, 15 Oct 2020 11:54:08 +0000 (UTC) Received: from laptop.redhat.com (ovpn-113-210.ams2.redhat.com [10.36.113.210]) by smtp.corp.redhat.com (Postfix) with ESMTP id 214FF73661; Thu, 15 Oct 2020 11:54:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602762851; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=kMVMwCUPwIjBUEUO2/ANQICpZSE+/w+eh9kynvP9o8o=; b=AuH12lmChl+SOJ05+f/jLNBVahamw3C+M1e5FAypgECx/SkZ+ylyfaNOkyuDdlVQd4PSMz Xjg+VuCG5eQ6U5vyxA3/8z+TKsY06JTMmGViEBBAewXxHJszHuDvVnW3zrLLyBcBJ+QvuY w3LQF/qNg0DOz2ewXO17lN4d1UKvpQs= X-MC-Unique: w0_ghJvFM62y6YrZO5EqaA-1 From: Eric Auger To: eric.auger.pro@gmail.com, eric.auger@redhat.com, qemu-devel@nongnu.org, qemu-arm@nongnu.org, stefanha@redhat.com, fam@euphon.net, philmd@redhat.com, alex.williamson@redhat.com Subject: [RFC 5/5] block/nvme: Align iov's va and size on host page size Date: Thu, 15 Oct 2020 13:52:52 +0200 Message-Id: <20201015115252.15582-6-eric.auger@redhat.com> In-Reply-To: <20201015115252.15582-1-eric.auger@redhat.com> References: <20201015115252.15582-1-eric.auger@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=eric.auger@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=eric.auger@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 02:10:02 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" Make sure iov's va and size are properly aligned on the host page size. Signed-off-by: Eric Auger Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- block/nvme.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/block/nvme.c b/block/nvme.c index be8ec48bf2..45807ed110 100644 --- a/block/nvme.c +++ b/block/nvme.c @@ -978,11 +978,12 @@ static coroutine_fn int nvme_cmd_map_qiov(BlockDriver= State *bs, NvmeCmd *cmd, for (i =3D 0; i < qiov->niov; ++i) { bool retry =3D true; uint64_t iova; + size_t len =3D QEMU_ALIGN_UP(qiov->iov[i].iov_len, + qemu_real_host_page_size); try_map: r =3D qemu_vfio_dma_map(s->vfio, qiov->iov[i].iov_base, - qiov->iov[i].iov_len, - true, &iova); + len, true, &iova); if (r =3D=3D -ENOMEM && retry) { retry =3D false; trace_nvme_dma_flush_queue_wait(s); @@ -1126,8 +1127,8 @@ static inline bool nvme_qiov_aligned(BlockDriverState= *bs, BDRVNVMeState *s =3D bs->opaque; =20 for (i =3D 0; i < qiov->niov; ++i) { - if (!QEMU_PTR_IS_ALIGNED(qiov->iov[i].iov_base, s->page_size) || - !QEMU_IS_ALIGNED(qiov->iov[i].iov_len, s->page_size)) { + if (!QEMU_PTR_IS_ALIGNED(qiov->iov[i].iov_base, qemu_real_host_pag= e_size) || + !QEMU_IS_ALIGNED(qiov->iov[i].iov_len, qemu_real_host_page_siz= e)) { trace_nvme_qiov_unaligned(qiov, i, qiov->iov[i].iov_base, qiov->iov[i].iov_len, s->page_size); return false; @@ -1143,7 +1144,7 @@ static int nvme_co_prw(BlockDriverState *bs, uint64_t= offset, uint64_t bytes, int r; uint8_t *buf =3D NULL; QEMUIOVector local_qiov; - + size_t len =3D QEMU_ALIGN_UP(bytes, qemu_real_host_page_size); assert(QEMU_IS_ALIGNED(offset, s->page_size)); assert(QEMU_IS_ALIGNED(bytes, s->page_size)); assert(bytes <=3D s->max_transfer); @@ -1151,7 +1152,7 @@ static int nvme_co_prw(BlockDriverState *bs, uint64_t= offset, uint64_t bytes, return nvme_co_prw_aligned(bs, offset, bytes, qiov, is_write, flag= s); } trace_nvme_prw_buffered(s, offset, bytes, qiov->niov, is_write); - buf =3D qemu_try_memalign(s->page_size, bytes); + buf =3D qemu_try_memalign(qemu_real_host_page_size, len); =20 if (!buf) { return -ENOMEM; --=20 2.21.3