From nobody Fri Jul 01 15:31:05 2022 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 718488AA75C; Fri, 1 Jul 2022 15:31:05 +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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4LZK0n2Zt4z4n1x; Fri, 1 Jul 2022 15:31:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1656689465; 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=uSs0/JRif1EXmdg4T5d8UU8grC3pbOOMGvKeJaUhB/g=; b=MSVnUSPDUMdb+CH2zeG4QlXx0Y2R2W4g8Ghy8AmThp/UVrfXPAdngdKN2Fai1J3GChzKXE /2ckHjWxrJcbNfYiuJWjjc0r5F223uovWgz2VHqVmMdVwZG6tEF889famW5ZlCSOY/Y0+s 8DB0Z65UTUIPWxjE5B4itCKnLTBZImRtr+dLO2urHfy9ep2icsEXfzzg6BuPm7jUCFbi3F hFHgh99B1x7F6lKnL0ZQJdeupfQg5UCzjxGUupxc5m/uVqnGWqCnQKdgGTx00O6QPgQhNp ZLtNX7wZ1mP1QFHeTqBo2Ll20UZ9QhWdoFdj7925qFsBTwPuWB91XVGVmXi7Dw== 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 39FA51DC7D; Fri, 1 Jul 2022 15:31:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 261FV5ht011811; Fri, 1 Jul 2022 15:31:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 261FV596011810; Fri, 1 Jul 2022 15:31:05 GMT (envelope-from git) Date: Fri, 1 Jul 2022 15:31:05 GMT Message-Id: <202207011531.261FV596011810@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: b72f1f451689 - main - ena: Make first_interrupt a uint8_t List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b72f1f4516896ad6da0ea74d146a56045de171f7 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1656689465; 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=uSs0/JRif1EXmdg4T5d8UU8grC3pbOOMGvKeJaUhB/g=; b=gphkOphJP9nHrS4BDctKWsVggLJp4NQkaBVOGzXmlZDFmH7c8xmNU03+sibfqpv4kycewj OwhjdFcMHx/PnRoEiNZfsU9zG8AXtVORHuRyQhU+K6it3V8D9d6qKvKcvECC8h745fxy5o ryUhghqwsBhXpdb9cu3DCSeTP8BMLLjI9Mv30CP+/VuNS6NSriJbIwIzHmmtiioSVSfwoI xkWXvwY7Q9jnxrYlS9r8vMokF5C+SFkTvoy7U8G1gzEsZAcrpFX7K7ivGFAZa9y6oY4rMN P+duHGAbIYQnP8kYYbjseMkCwargFQHhbHMO6kHfw4MXMfu4N/5XKxAqRJ+hMQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1656689465; a=rsa-sha256; cv=none; b=hkehS0sTpxkDlS7I1WZmW6z846JQxu8TT0LY7BmoqdSk3L0O5LUXwkRKt3S6xcMBbWHi5F 58jnv8hHTIwm0FcWIMaCV/zJZfY5+I6bJF3bwC6J63g657W7cUtg/5GEN15KQ7yslgVt0k Q1FXLDYR8eTEHFmJeg37CWbY1m5oRAx3mq58nrgfmNejhY7g1fRMCmPvS1gGRLdUqkC4bT Y4P+l6fpH9INroalvhx6O4WROPyD9kt0hefPoNROVlzCCmXbiAe68YW/ICi24fXxlMuGnZ Z+1nH/D033wQ/E4ZsvBmqbsdgH8nOT0AJPimwfYVteQc/4bgXcCeNVX77diamQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=b72f1f4516896ad6da0ea74d146a56045de171f7 commit b72f1f4516896ad6da0ea74d146a56045de171f7 Author: Mark Johnston AuthorDate: 2022-06-30 18:49:46 +0000 Commit: Mark Johnston CommitDate: 2022-07-01 15:00:58 +0000 ena: Make first_interrupt a uint8_t We do not have atomic(9) routines for bools, and it is not guaranteed that sizeof(bool) is 1. This fixes the KASAN and KMSAN kernel builds, which fail because the compiler refuses to silently cast a _Bool * to a uint8_t * when calling the atomic(9) sanitizer interceptors. Reviewed by: Dawid Górecki MFC after: 2 weeks Fixes: 0ac122c388d9 ("ena: Use atomic_load/store functions for first_interrupt variable") Differential Revision: https://reviews.freebsd.org/D35683 --- sys/dev/ena/ena.c | 2 +- sys/dev/ena/ena.h | 2 +- sys/dev/ena/ena_datapath.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/dev/ena/ena.c b/sys/dev/ena/ena.c index 9b2f1e54b0a7..d032da6e2206 100644 --- a/sys/dev/ena/ena.c +++ b/sys/dev/ena/ena.c @@ -376,7 +376,7 @@ ena_init_io_rings_common(struct ena_adapter *adapter, struct ena_ring *ring, ring->qid = qid; ring->adapter = adapter; ring->ena_dev = adapter->ena_dev; - atomic_store_8(&ring->first_interrupt, false); + atomic_store_8(&ring->first_interrupt, 0); ring->no_interrupt_event_cnt = 0; } diff --git a/sys/dev/ena/ena.h b/sys/dev/ena/ena.h index 4e1f75cd8f9a..f79e311fc88d 100644 --- a/sys/dev/ena/ena.h +++ b/sys/dev/ena/ena.h @@ -329,7 +329,7 @@ struct ena_ring { }; - bool first_interrupt; + uint8_t first_interrupt; uint16_t no_interrupt_event_cnt; struct ena_com_rx_buf_info ena_bufs[ENA_PKT_MAX_BUFS]; diff --git a/sys/dev/ena/ena_datapath.c b/sys/dev/ena/ena_datapath.c index c4c9ad3403c6..1bd901a30059 100644 --- a/sys/dev/ena/ena_datapath.c +++ b/sys/dev/ena/ena_datapath.c @@ -90,8 +90,8 @@ ena_cleanup(void *arg, int pending) ena_qid = ENA_IO_TXQ_IDX(qid); io_cq = &adapter->ena_dev->io_cq_queues[ena_qid]; - atomic_store_8(&tx_ring->first_interrupt, true); - atomic_store_8(&rx_ring->first_interrupt, true); + atomic_store_8(&tx_ring->first_interrupt, 1); + atomic_store_8(&rx_ring->first_interrupt, 1); for (i = 0; i < ENA_CLEAN_BUDGET; ++i) { rxc = ena_rx_cleanup(rx_ring);