linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* mac80211: Set IEEE80211_TXPD_REQ_TX_STATUS for all TX frames
@ 2008-05-11 12:34 Ivo van Doorn
  2008-05-13  8:42 ` Johannes Berg
  2008-05-13 13:03 ` [PATCH v2] " Ivo van Doorn
  0 siblings, 2 replies; 7+ messages in thread
From: Ivo van Doorn @ 2008-05-11 12:34 UTC (permalink / raw)
  To: linville; +Cc: Johannes Berg, linux-wireless

All interfaces should set the IEEE80211_TXPD_REQ_TX_STATUS flag for all TX frames
which will force the master interface to set the IEEE80211_TX_CTL_REQ_TX_STATUS
flag. This in turn will allow drivers to check for that flag before reporting
the TX status to mac80211.

This is very usefull when frames (like beacons, RTS and CTS-to-self) should not
be reported back to mac80211. Later we could add more extensive checks to
exclude more frames from being reported, or let mac80211 decide if it wants
the frame for status reporting or not.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
---
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
index f35eaea..0024892 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -1617,6 +1617,9 @@ int ieee80211_subif_start_xmit(struct sk_buff *skb,
 	if (ethertype == ETH_P_PAE)
 		pkt_data->flags |= IEEE80211_TXPD_EAPOL_FRAME;
 
+	/* Interfaces should always request a status report */
+	pkt_data->flags |= IEEE80211_TXPD_REQ_TX_STATUS;
+
 	skb->dev = local->mdev;
 	dev->stats.tx_packets++;
 	dev->stats.tx_bytes += skb->len;

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2008-05-13 12:54 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-11 12:34 mac80211: Set IEEE80211_TXPD_REQ_TX_STATUS for all TX frames Ivo van Doorn
2008-05-13  8:42 ` Johannes Berg
2008-05-13 11:46   ` Ivo van Doorn
2008-05-13 12:29     ` Johannes Berg
2008-05-13 12:53       ` Ivo van Doorn
2008-05-13 13:03 ` [PATCH v2] " Ivo van Doorn
2008-05-13 12:54   ` Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).