From nobody Wed Jun 4 03:44:14 2025 X-Original-To: dev-commits-src-main@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 4bBtjq1Wt6z5xMwk; Wed, 04 Jun 2025 03:44:15 +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 4bBtjp5McLz3JLT; Wed, 04 Jun 2025 03:44:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1749008654; 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=61OvmU6jWClyDfSndFdirQCBzkB79NQXrOuWWa9ihwA=; b=vvfNKj+4h6SiXL3/fY5tnu5uMTPGnchITyVUcq9u8PKmtO8/Uzh1tgqiIWG+2/iukM+L7W meZFZ88AdFA0O+JUbQ/z+r442OBNan8EUAMeo5sRy0ylPyB2lw6IRHneKYFLYh2xwQCL40 68CdGChiwXZgUcPLxUsfBAy8jlBZQa4YAwPGQ4998CTxeDOWSlLqQta6iOQaeV6w8ihk+g BhZJGc2hz+SlJ8KAXM80ZBPwocd06VfRj/IH4mm28Syudnb8KU1KTsrCxilkpH+Axgml7p FDHoOowMoNcVQFYBEYZwi1rAlU0+LhqWDsRF9iFkZROit8wUpk/IiZ/MlThfBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1749008654; 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=61OvmU6jWClyDfSndFdirQCBzkB79NQXrOuWWa9ihwA=; b=D7K0y/tsq4NiVDoM5Aix+LjOo5WgYzvx4bMEDZdMoGk21m0JB/1lTBUETgynWM9Ggk4IU/ aZArg08bqwFuUGGAO8PDJBuiaUxZjxg6lCjrQqMhFqUYfQBLDSenlj0RocxSSFbI58ECzh /Nb8T20JOo+x/v0RybhiJ30BrcbX/YJ24oCWCOGN3zZ+VvYpolV41ZOuZ+e+5R+G07C4ox iRn+s3ul/OQTPnqvdAn5P5Ehv/jafCw9qJmOWKGpFUcyH/PVcbjhJOdhH/LDZ20KL+fZ2T 1iFzGfeMnii0mQDjpFWlwL/4VYHgaQO/A+LgqsPwsIYeWcvYI7p6fLf84AWURA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1749008654; a=rsa-sha256; cv=none; b=YmasqeD8RFLH2kUqbp8+xWjF/OUNh0HpPmuIJnbEvz48A1zzCdDoYJWk964TFxHAaXzLI4 BGxfOhaT05nCX34yMDmgbGAdaFEZjEhmCEQEw4efr3SAaFddSyDjO4wfzcCyia2ABrsoxE tNdioxjxT/GH9/pY+aNNHh42Fm7vkLy02lwWn5xMyVte0EdGAu46yOMcYri5LkBsFTRKtI Q9WtU6PDL+HziqWWrI74hho0UfOKuVlMJCHtJQUQoXXzTCCP19Ld0VdyIV/6hNvzL5Rfn8 N99ge+KBSTEDaVAY8ieters/QtYmSB+oexywYUo7fWy7RZyen5ZexsW8J+XtfQ== 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 4bBtjp4qR4z161N; Wed, 04 Jun 2025 03:44:14 +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 5543iE3b031059; Wed, 4 Jun 2025 03:44:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5543iECW031056; Wed, 4 Jun 2025 03:44:14 GMT (envelope-from git) Date: Wed, 4 Jun 2025 03:44:14 GMT Message-Id: <202506040344.5543iECW031056@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 0861daf511dc - main - net80211: create net80211_vap_printf() / net80211_ic_printf() for printing 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: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0861daf511dc9a573d71f5c3c1d0233745a8712b Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=0861daf511dc9a573d71f5c3c1d0233745a8712b commit 0861daf511dc9a573d71f5c3c1d0233745a8712b Author: Adrian Chadd AuthorDate: 2025-05-31 18:51:21 +0000 Commit: Adrian Chadd CommitDate: 2025-06-04 03:33:33 +0000 net80211: create net80211_vap_printf() / net80211_ic_printf() for printing Not all OSes support if_printf(), printf(), etc, so start migrating the printf / log routines into net80211 routines that are implemented in ieee80211_freebsd.c . Migrate ic_printf() to net80211_ic_printf() via a macro for testing. Differential Revision: https://reviews.freebsd.org/D50642 Reviewed by: bz --- sys/net80211/ieee80211.c | 13 ---------- sys/net80211/ieee80211_freebsd.c | 52 ++++++++++++++++++++++++++++++++++++++-- sys/net80211/ieee80211_freebsd.h | 6 +++++ sys/net80211/ieee80211_var.h | 4 +++- 4 files changed, 59 insertions(+), 16 deletions(-) diff --git a/sys/net80211/ieee80211.c b/sys/net80211/ieee80211.c index e4de0b439ac0..74fdaa033952 100644 --- a/sys/net80211/ieee80211.c +++ b/sys/net80211/ieee80211.c @@ -273,19 +273,6 @@ null_update_chw(struct ieee80211com *ic) ic_printf(ic, "%s: need callback\n", __func__); } -int -ic_printf(struct ieee80211com *ic, const char * fmt, ...) -{ - va_list ap; - int retval; - - retval = printf("%s: ", ic->ic_name); - va_start(ap, fmt); - retval += vprintf(fmt, ap); - va_end(ap); - return (retval); -} - static LIST_HEAD(, ieee80211com) ic_head = LIST_HEAD_INITIALIZER(ic_head); static struct mtx ic_list_mtx; MTX_SYSINIT(ic_list, &ic_list_mtx, "ieee80211com list", MTX_DEF); diff --git a/sys/net80211/ieee80211_freebsd.c b/sys/net80211/ieee80211_freebsd.c index 5c7ebd7c727c..b5ab79a4ad16 100644 --- a/sys/net80211/ieee80211_freebsd.c +++ b/sys/net80211/ieee80211_freebsd.c @@ -42,6 +42,7 @@ #include #include #include +#include #include @@ -58,6 +59,8 @@ #include #include +#include + #include #include @@ -275,8 +278,8 @@ ieee80211_sysctl_vattach(struct ieee80211vap *vap) ctx = (struct sysctl_ctx_list *) IEEE80211_MALLOC(sizeof(struct sysctl_ctx_list), M_DEVBUF, IEEE80211_M_NOWAIT | IEEE80211_M_ZERO); if (ctx == NULL) { - if_printf(ifp, "%s: cannot allocate sysctl context!\n", - __func__); + net80211_vap_printf(vap, + "%s: cannot allocate sysctl context!\n", __func__); return; } sysctl_ctx_init(ctx); @@ -1326,6 +1329,51 @@ ieee80211_vap_get_broadcast_address(struct ieee80211vap *vap) return (if_getbroadcastaddr(vap->iv_ifp)); } +/** + * @brief net80211 printf() (not vap/ic related) + */ +void +net80211_printf(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + vprintf(fmt, ap); + va_end(ap); +} + +/** + * @brief VAP specific printf() + */ +void +net80211_vap_printf(const struct ieee80211vap *vap, const char *fmt, ...) +{ + char if_fmt[256]; + va_list ap; + + va_start(ap, fmt); + snprintf(if_fmt, sizeof(if_fmt), "%s: %s", if_name(vap->iv_ifp), fmt); + vlog(LOG_INFO, if_fmt, ap); + va_end(ap); +} + +/** + * @brief ic specific printf() + */ +void +net80211_ic_printf(const struct ieee80211com *ic, const char *fmt, ...) +{ + va_list ap; + + /* + * TODO: do the vap_printf stuff above, use vlog(LOG_INFO, ...) + */ + printf("%s: ", ic->ic_name); + va_start(ap, fmt); + vprintf(fmt, ap); + va_end(ap); +} + /* * Module glue. * diff --git a/sys/net80211/ieee80211_freebsd.h b/sys/net80211/ieee80211_freebsd.h index 5afc093ba90c..141b13f9f740 100644 --- a/sys/net80211/ieee80211_freebsd.h +++ b/sys/net80211/ieee80211_freebsd.h @@ -549,6 +549,12 @@ bool ieee80211_vap_ifp_check_is_running(struct ieee80211vap *); void ieee80211_vap_ifp_set_running_state(struct ieee80211vap *, bool); const uint8_t * ieee80211_vap_get_broadcast_address(struct ieee80211vap *); +void net80211_printf(const char *fmt, ...) __printflike(1, 2); +void net80211_vap_printf(const struct ieee80211vap *, const char *fmt, ...) + __printflike(2, 3); +void net80211_ic_printf(const struct ieee80211com *, const char *fmt, ...) + __printflike(2, 3); + #endif /* _KERNEL */ /* XXX this stuff belongs elsewhere */ diff --git a/sys/net80211/ieee80211_var.h b/sys/net80211/ieee80211_var.h index 91beaec6f997..a0293f814899 100644 --- a/sys/net80211/ieee80211_var.h +++ b/sys/net80211/ieee80211_var.h @@ -765,7 +765,9 @@ MALLOC_DECLARE(M_80211_VAP); #define IEEE80211_COM_REF_S 1 #define IEEE80211_COM_REF_MAX (IEEE80211_COM_REF >> IEEE80211_COM_REF_S) -int ic_printf(struct ieee80211com *, const char *, ...) __printflike(2, 3); +/* TODO: Transition macro */ +#define ic_printf net80211_ic_printf + void ieee80211_ifattach(struct ieee80211com *); void ieee80211_ifdetach(struct ieee80211com *); void ieee80211_set_software_ciphers(struct ieee80211com *,