Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 5 Apr 2022 19:11:52 GMT
From:      "Bjoern A. Zeeb" <bz@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 681b6a95f728 - releng/13.1 - LinuxKPI: 802.11: fix compat code for i386
Message-ID:  <202204051911.235JBq5w097267@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch releng/13.1 has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=681b6a95f728fb78485f65bb98303d804e927f84

commit 681b6a95f728fb78485f65bb98303d804e927f84
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2022-03-31 17:29:53 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2022-04-05 19:11:00 +0000

    LinuxKPI: 802.11: fix compat code for i386
    
    Compiling another driver on i386 revealed two problems:
    - ieee80211_tx_info.status.status_driver_data space needs to be
      calculated.  While a pointer is 32bit vm_paddr_t is 64 bit on i386
      so we didn't fit more than one of these in but needed more space.
    - the arguments to ieee80211_txq_get_depth() are expected to
      unsigned long and not uint64_t.
    
    No user noticable changes.
    
    Sponsored by:   The FreeBSD Foundation
    Approved by:    re (gjb)
    
    (cherry picked from commit 86220d3cbd500b1018dcdabb0ba70644db438cfd)
    (cherry picked from commit 2a8e509ba30c6546ceeec49f9447c2e3d21a1d22)
---
 sys/compat/linuxkpi/common/include/net/mac80211.h | 9 +++++----
 sys/compat/linuxkpi/common/src/linux_80211.c      | 4 ++--
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h
index 14404d4723f8..4e3342837ddc 100644
--- a/sys/compat/linuxkpi/common/include/net/mac80211.h
+++ b/sys/compat/linuxkpi/common/include/net/mac80211.h
@@ -670,7 +670,7 @@ struct ieee80211_tx_info {
 			uint8_t				antenna;
 			uint16_t			tx_time;
 			bool				is_valid_ack_signal;
-			void				*status_driver_data[2];		/* XXX TODO */
+			void				*status_driver_data[16 / sizeof(void *)];		/* XXX TODO */
 		} status;
 #define	IEEE80211_TX_INFO_DRIVER_DATA_SIZE	(5 * sizeof(void *))			/* XXX TODO 5? */
 		void					*driver_data[IEEE80211_TX_INFO_DRIVER_DATA_SIZE / sizeof(void *)];
@@ -900,8 +900,8 @@ struct sk_buff *linuxkpi_ieee80211_pspoll_get(struct ieee80211_hw *,
     struct ieee80211_vif *);
 struct sk_buff *linuxkpi_ieee80211_nullfunc_get(struct ieee80211_hw *,
     struct ieee80211_vif *, bool);
-void linuxkpi_ieee80211_txq_get_depth(struct ieee80211_txq *, uint64_t *,
-    uint64_t *);
+void linuxkpi_ieee80211_txq_get_depth(struct ieee80211_txq *, unsigned long *,
+    unsigned long *);
 struct wireless_dev *linuxkpi_ieee80211_vif_to_wdev(struct ieee80211_vif *);
 void linuxkpi_ieee80211_connection_loss(struct ieee80211_vif *);
 void linuxkpi_ieee80211_beacon_loss(struct ieee80211_vif *);
@@ -1931,7 +1931,8 @@ ieee80211_tx_info_clear_status(struct ieee80211_tx_info *info)
 }
 
 static __inline void
-ieee80211_txq_get_depth(struct ieee80211_txq *txq, uint64_t *frame_cnt, uint64_t *byte_cnt)
+ieee80211_txq_get_depth(struct ieee80211_txq *txq, unsigned long *frame_cnt,
+    unsigned long *byte_cnt)
 {
 
 	if (frame_cnt == NULL && byte_cnt == NULL)
diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
index 3a70d8bbfcab..13ad2908c021 100644
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -4007,11 +4007,11 @@ linuxkpi_ieee80211_tx_dequeue(struct ieee80211_hw *hw,
 
 void
 linuxkpi_ieee80211_txq_get_depth(struct ieee80211_txq *txq,
-    uint64_t *frame_cnt, uint64_t *byte_cnt)
+    unsigned long *frame_cnt, unsigned long *byte_cnt)
 {
 	struct lkpi_txq *ltxq;
 	struct sk_buff *skb;
-	uint64_t fc, bc;
+	unsigned long fc, bc;
 
 	ltxq = TXQ_TO_LTXQ(txq);
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202204051911.235JBq5w097267>