linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 2/7] mac80211: replace ieee80211_get_morefrag with ieee80211_has_morefrags
@ 2008-06-06 17:51 Harvey Harrison
  2008-06-09  7:38 ` Johannes Berg
  0 siblings, 1 reply; 5+ messages in thread
From: Harvey Harrison @ 2008-06-06 17:51 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linux-wireless

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
---
 drivers/net/wireless/iwlwifi/iwl-tx.c       |    4 ++--
 drivers/net/wireless/iwlwifi/iwl3945-base.c |    4 ++--
 drivers/net/wireless/rt2x00/rt2x00queue.c   |    2 +-
 drivers/net/wireless/rtl8187_dev.c          |    2 +-
 include/linux/ieee80211.h                   |   13 -------------
 5 files changed, 6 insertions(+), 19 deletions(-)

diff --git a/drivers/net/wireless/iwlwifi/iwl-tx.c b/drivers/net/wireless/iwlwifi/iwl-tx.c
index cfe6f4b..b22dc54 100644
--- a/drivers/net/wireless/iwlwifi/iwl-tx.c
+++ b/drivers/net/wireless/iwlwifi/iwl-tx.c
@@ -595,7 +595,7 @@ static void iwl_tx_cmd_build_basic(struct iwl_priv *priv,
 

 	tx_cmd->sta_id = std_id;
-	if (ieee80211_get_morefrag(hdr))
+	if (ieee80211_has_morefrags(hdr->frame_control))
 		tx_flags |= TX_CMD_FLG_MORE_FRAG_MSK;
 
 	if (ieee80211_is_qos_data(fc)) {
@@ -952,7 +952,7 @@ int iwl_tx_skb(struct iwl_priv *priv, struct sk_buff *skb)
 	tx_cmd->dram_lsb_ptr = cpu_to_le32(scratch_phys);
 	tx_cmd->dram_msb_ptr = iwl_get_dma_hi_address(scratch_phys);
 
-	if (!ieee80211_get_morefrag(hdr)) {
+	if (!ieee80211_has_morefrags(hdr->frame_control)) {
 		txq->need_update = 1;
 		if (qc)
 			priv->stations[sta_id].tid[tid].seq_number = seq_number;
diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c b/drivers/net/wireless/iwlwifi/iwl3945-base.c
index 72279e0..77a0113 100644
--- a/drivers/net/wireless/iwlwifi/iwl3945-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c
@@ -2448,7 +2448,7 @@ static void iwl3945_build_tx_cmd_basic(struct iwl3945_priv *priv,
 	}
 
 	cmd->cmd.tx.sta_id = std_id;
-	if (ieee80211_get_morefrag(hdr))
+	if (ieee80211_has_morefrags(hdr->frame_control))
 		tx_flags |= TX_CMD_FLG_MORE_FRAG_MSK;
 
 	if (ieee80211_is_qos_data(fc)) {
@@ -2732,7 +2732,7 @@ static int iwl3945_tx_skb(struct iwl3945_priv *priv, struct sk_buff *skb)
 	out_cmd->cmd.tx.tx_flags &= ~TX_CMD_FLG_ANT_A_MSK;
 	out_cmd->cmd.tx.tx_flags &= ~TX_CMD_FLG_ANT_B_MSK;
 
-	if (!ieee80211_get_morefrag(hdr)) {
+	if (!ieee80211_has_morefrags(hdr->frame_control)) {
 		txq->need_update = 1;
 		if (qc) {
 			priv->stations[sta_id].tid[tid].seq_number = seq_number;
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c
index e69ef4b..95ed617 100644
--- a/drivers/net/wireless/rt2x00/rt2x00queue.c
+++ b/drivers/net/wireless/rt2x00/rt2x00queue.c
@@ -91,7 +91,7 @@ void rt2x00queue_create_tx_descriptor(struct queue_entry *entry,
 	/*
 	 * Check if more fragments are pending
 	 */
-	if (ieee80211_get_morefrag(hdr)) {
+	if (ieee80211_has_morefrags(hdr->frame_control)) {
 		__set_bit(ENTRY_TXD_BURST, &txdesc->flags);
 		__set_bit(ENTRY_TXD_MORE_FRAG, &txdesc->flags);
 	}
diff --git a/drivers/net/wireless/rtl8187_dev.c b/drivers/net/wireless/rtl8187_dev.c
index 0078c7e..c553b82 100644
--- a/drivers/net/wireless/rtl8187_dev.c
+++ b/drivers/net/wireless/rtl8187_dev.c
@@ -181,7 +181,7 @@ static int rtl8187_tx(struct ieee80211_hw *dev, struct sk_buff *skb)
 	flags |= RTL8187_TX_FLAG_NO_ENCRYPT;
 
 	flags |= ieee80211_get_tx_rate(dev, info)->hw_value << 24;
-	if (ieee80211_get_morefrag((struct ieee80211_hdr *)skb->data))
+	if (ieee80211_has_morefrags(((struct ieee80211_hdr *)skb->data)->frame_control)
 		flags |= RTL8187_TX_FLAG_MORE_FRAG;
 	if (info->flags & IEEE80211_TX_CTL_USE_RTS_CTS) {
 		flags |= RTL8187_TX_FLAG_RTS;
diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h
index 5773c62..9496bea 100644
--- a/include/linux/ieee80211.h
+++ b/include/linux/ieee80211.h
@@ -651,17 +651,4 @@ static inline u8 *ieee80211_get_DA(struct ieee80211_hdr *hdr)
 		return hdr->addr1;
 }
 
-/**
- * ieee80211_get_morefrag - determine whether the MOREFRAGS bit is set
- *
- * This function determines whether the "more fragments" bit is set
- * in the frame.
- *
- * @hdr: the frame
- */
-static inline int ieee80211_get_morefrag(struct ieee80211_hdr *hdr)
-{
-	return ieee80211_has_morefrags(hdr->frame_control);
-}
-
 #endif /* IEEE80211_H */
-- 
1.5.6.rc1.257.gba91d



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

* Re: [PATCH 2/7] mac80211: replace ieee80211_get_morefrag with ieee80211_has_morefrags
  2008-06-06 17:51 [PATCH 2/7] mac80211: replace ieee80211_get_morefrag with ieee80211_has_morefrags Harvey Harrison
@ 2008-06-09  7:38 ` Johannes Berg
  2008-06-09 16:29   ` Harvey Harrison
  0 siblings, 1 reply; 5+ messages in thread
From: Johannes Berg @ 2008-06-09  7:38 UTC (permalink / raw)
  To: Harvey Harrison; +Cc: linux-wireless

[-- Attachment #1: Type: text/plain, Size: 324 bytes --]


> -	if (ieee80211_get_morefrag(hdr))
> +	if (ieee80211_has_morefrags(hdr->frame_control))

looks fine to me, though I wonder if we should have

ieee80211_has_morefrags(struct 80211hdr)
and
__ieee80211_has_morefrags(__le16 fc)

or something with variants of the functions that do the ->frame_control?

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

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

* Re: [PATCH 2/7] mac80211: replace ieee80211_get_morefrag with ieee80211_has_morefrags
  2008-06-09  7:38 ` Johannes Berg
@ 2008-06-09 16:29   ` Harvey Harrison
  2008-06-09 17:22     ` Johannes Berg
  0 siblings, 1 reply; 5+ messages in thread
From: Harvey Harrison @ 2008-06-09 16:29 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linux-wireless

On Mon, 2008-06-09 at 09:38 +0200, Johannes Berg wrote:
> > -	if (ieee80211_get_morefrag(hdr))
> > +	if (ieee80211_has_morefrags(hdr->frame_control))
>=20
> looks fine to me, though I wonder if we should have
>=20
> ieee80211_has_morefrags(struct 80211hdr)
> and
> __ieee80211_has_morefrags(__le16 fc)
>=20
> or something with variants of the functions that do the ->frame_contr=
ol?

I considered that, but thought it was a small benefit for doubling the
number of helpers.

I chose the __le16 variant as there is some driver code that checks the=
se
values in driver-specific structures, so I just left it up to the calle=
r
to dereference whatever structure the frame control is held in.

But if both sets are wanted, I would suggest:

=EF=BB=BFieee80211_fc_has_morefrags(__le16 fc);

ieee80211_has_morefrags(struct ieee80211 *hdr)
{
	return ieee80211_fc_has_morefrags(hdr->frame_control);
}

Do you think I should add the struct helper(s)?

Harvey

--
To unsubscribe from this list: send the line "unsubscribe linux-wireles=
s" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH 2/7] mac80211: replace ieee80211_get_morefrag with ieee80211_has_morefrags
  2008-06-09 16:29   ` Harvey Harrison
@ 2008-06-09 17:22     ` Johannes Berg
  2008-06-09 17:32       ` Harvey Harrison
  0 siblings, 1 reply; 5+ messages in thread
From: Johannes Berg @ 2008-06-09 17:22 UTC (permalink / raw)
  To: Harvey Harrison; +Cc: linux-wireless

[-- Attachment #1: Type: text/plain, Size: 1208 bytes --]

On Mon, 2008-06-09 at 09:29 -0700, Harvey Harrison wrote:
> On Mon, 2008-06-09 at 09:38 +0200, Johannes Berg wrote:
> > > -	if (ieee80211_get_morefrag(hdr))
> > > +	if (ieee80211_has_morefrags(hdr->frame_control))
> > 
> > looks fine to me, though I wonder if we should have
> > 
> > ieee80211_has_morefrags(struct 80211hdr)
> > and
> > __ieee80211_has_morefrags(__le16 fc)
> > 
> > or something with variants of the functions that do the ->frame_control?
> 
> I considered that, but thought it was a small benefit for doubling the
> number of helpers.
> 
> I chose the __le16 variant as there is some driver code that checks these
> values in driver-specific structures, so I just left it up to the caller
> to dereference whatever structure the frame control is held in.
> 
> But if both sets are wanted, I would suggest:
> 
> ieee80211_fc_has_morefrags(__le16 fc);
> 
> ieee80211_has_morefrags(struct ieee80211 *hdr)
> {
> 	return ieee80211_fc_has_morefrags(hdr->frame_control);
> }
> 
> Do you think I should add the struct helper(s)?

It looks like you'd be using them in many places, so don't you think it
would be helpful? I don't really care too much.

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

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

* Re: [PATCH 2/7] mac80211: replace ieee80211_get_morefrag with ieee80211_has_morefrags
  2008-06-09 17:22     ` Johannes Berg
@ 2008-06-09 17:32       ` Harvey Harrison
  0 siblings, 0 replies; 5+ messages in thread
From: Harvey Harrison @ 2008-06-09 17:32 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linux-wireless

On Mon, 2008-06-09 at 19:22 +0200, Johannes Berg wrote:
> On Mon, 2008-06-09 at 09:29 -0700, Harvey Harrison wrote:
> > On Mon, 2008-06-09 at 09:38 +0200, Johannes Berg wrote:
> > > > -	if (ieee80211_get_morefrag(hdr))
> > > > +	if (ieee80211_has_morefrags(hdr->frame_control))
> > >=20
> > > looks fine to me, though I wonder if we should have
> > >=20
> > > ieee80211_has_morefrags(struct 80211hdr)
> > > and
> > > __ieee80211_has_morefrags(__le16 fc)
> > >=20
> > > or something with variants of the functions that do the ->frame_c=
ontrol?
> >=20
> > I considered that, but thought it was a small benefit for doubling =
the
> > number of helpers.
> >=20
> > I chose the __le16 variant as there is some driver code that checks=
 these
> > values in driver-specific structures, so I just left it up to the c=
aller
> > to dereference whatever structure the frame control is held in.
> >=20
> > But if both sets are wanted, I would suggest:
> >=20
> > =EF=BB=BFieee80211_fc_has_morefrags(__le16 fc);
> >=20
> > ieee80211_has_morefrags(struct ieee80211 *hdr)
> > {
> > 	return ieee80211_fc_has_morefrags(hdr->frame_control);
> > }
> >=20
> > Do you think I should add the struct helper(s)?
>=20
> It looks like you'd be using them in many places, so don't you think =
it
> would be helpful? I don't really care too much.
>=20

OK, I've added kernel-doc and incorporated the other comments, I'm not
going to add additional helpers for the struct ieee80211 case at this
time.

I'll check it over and send a revised version in a bit.

Harvey

--
To unsubscribe from this list: send the line "unsubscribe linux-wireles=
s" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2008-06-09 17:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-06 17:51 [PATCH 2/7] mac80211: replace ieee80211_get_morefrag with ieee80211_has_morefrags Harvey Harrison
2008-06-09  7:38 ` Johannes Berg
2008-06-09 16:29   ` Harvey Harrison
2008-06-09 17:22     ` Johannes Berg
2008-06-09 17:32       ` Harvey Harrison

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).