:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YmlGN42Tbz5n3kj; Mon, 03 Feb 2025 11:51:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YmlGN1JtDz3qsB; Mon, 03 Feb 2025 11:51:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1738583516; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uCqd3/X9DCqlm+k/A3B2jIVOHeXt0BspZe09NBzOMQU=; b=hyigWBv+eotkp694tndzwHg1MBi15Gw3p9Xv9yTVeVcVLqC9/riCGqRaS/fYyZn1Ylad8Y KJcpw1f00jnovFEH/gas/3jlu4/wUZZX1QzDgMfq1NmHR+v1T7o8fNNwraF5TN65Raqz8v zyARLNKQx02bO5lIFna4wpOIUku2CySZzuz2Etf+o4SkTWWrRMCtbh2AU1afmKuXNt+wo6 ZgSvlTwuSEaMEG/mSYNokS1DMpJzRBm/7Lzjv+/vjItqRjh49G56hnEIIOzi6AmLVeQh10 q+MxqeH6Pg+tz5bMrTeA8kLVt+ZcYlG+mu0slxXyyjIXdvkiPEdQTPBHkZ3rjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1738583516; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uCqd3/X9DCqlm+k/A3B2jIVOHeXt0BspZe09NBzOMQU=; b=OaC4FduVaAdCAGDMG+10eDzFSAgg+A21jht/8oX8DBCUqBwH/VfQZtFARM7bJFjfpvsw6o szdn2VH+54/76F1x0ExWHr7mDi9KdQpIln1nTufOTTfBp7ep64TKHega2G6y7w7webUfJ4 CgpwV5TMiXgVvWrKjmctuPVmqd/6ynYAdDLe0u8TIth2nmTSSWZka/JUdNmXU+xbSq5ahr U/59hLbIxo7VbiVDr7maKa1bNGOOBDA9c6+ubeVWZ204pgyGf+GrsRKysqX3VnD8XMQbNL CMxShQVqv+SAhgzzV+mOM9gABtR5fGpjMs65BRJERZ0PJJDkYGYXof638sAf7w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1738583516; a=rsa-sha256; cv=none; b=p+9JqKsXAB75h7qICpb63sHB+W+fU49kttwdzyZRTXlAA20z6CeNXxnIsgIy5J8ybAf1ev +SLvVFFaPUd362HkNCpg8EHX6J8s7K+pgcR4Hld6hM6O4KxyZ7GvNs9bLELRoRT72cfPYH UsNRATI5/Ja7wMKrcz2+jreC9V8h5dH7xzmh4OLC9B0YKPV6rGJoLfRKQpFa+xyncxAVaa nuJPJFlgAQs8VQG4ej8Utrf3cnwihW16A88w666KV7LlPr2s0jipQ3gBW1Vl+hV6gjbULy QpjU/F9AF8alLibi48tsfqvhmJNixU5ABJKIobnYTbYBGTUlBEf2/8mCh3W6NQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4YmlGN0ZthzbXg; Mon, 03 Feb 2025 11:51:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 513Bpt60040494; Mon, 3 Feb 2025 11:51:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 513Bptfk040491; Mon, 3 Feb 2025 11:51:55 GMT (envelope-from git) Date: Mon, 3 Feb 2025 11:51:55 GMT Message-Id: <202502031151.513Bptfk040491@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ruslan Bukin Subject: git: 1fdb01ec5fdd - main - riscv vmm: fix remote fence. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: br X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1fdb01ec5fdd23d3f6d7d743d1f438915ded40d4 Auto-Submitted: auto-generated The branch main has been updated by br: URL: https://cgit.FreeBSD.org/src/commit/?id=1fdb01ec5fdd23d3f6d7d743d1f438915ded40d4 commit 1fdb01ec5fdd23d3f6d7d743d1f438915ded40d4 Author: Ruslan Bukin AuthorDate: 2025-02-03 11:45:29 +0000 Commit: Ruslan Bukin CommitDate: 2025-02-03 11:45:32 +0000 riscv vmm: fix remote fence. From the spec: The remote fence function acts as a full TLB flush if • start_addr and size are both 0 • size is equal to 2^XLEN-1 Differential Revision: https://reviews.freebsd.org/D48716 --- sys/riscv/vmm/vmm_fence.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/riscv/vmm/vmm_fence.c b/sys/riscv/vmm/vmm_fence.c index 6bba3f4b5dfe..f8b69aac77a9 100644 --- a/sys/riscv/vmm/vmm_fence.c +++ b/sys/riscv/vmm/vmm_fence.c @@ -103,7 +103,8 @@ vmm_fence_process_one(struct vmm_fence *fence) sfence_vma_page(va); break; case VMM_RISCV_FENCE_VMA_ASID: - if (fence->start == 0 && fence->size == 0) + if ((fence->start == 0 && fence->size == 0) || + fence->size == -1) sfence_vma_asid(fence->asid); else for (va = fence->start; va < fence->start + fence->size; @@ -165,7 +166,8 @@ vmm_fence_add(struct vm *vm, cpuset_t *cpus, struct vmm_fence *fence) atomic_set_32(&hypctx->fence_req, FENCE_REQ_I); break; case VMM_RISCV_FENCE_VMA: - if (fence->start == 0 && fence->size == 0) + if ((fence->start == 0 && fence->size == 0) || + fence->size == -1) atomic_set_32(&hypctx->fence_req, FENCE_REQ_VMA); else