p54: refactor p54_rx_frame_sent
RFC PATCH 3/5 p54: refactor p54_rx_frame_sent
the long names and the nesting in p54_rx_frame_sent really became a "line longer than 80 characters" problem.
---
drivers/net/wireless/p54/p54common.c +42 -40
@@ -557,54 +557,56 @@ static void p54_rx_frame_sent(struct ieespin_lock_irqsave (&priv->tx_queue.lock, flags);while (entry != (struct sk_buff *)&priv->tx_queue) {struct ieee80211_tx_info *info =IEEE80211_SKB_CB (entry); - range = (void *)info->driver_data; -if (range->start_addr == addr) { -struct p54_control_hdr *entry_hdr; -struct p54_tx_control_allocdata *entry_data; -int pad =0 ; - -if (entry->next != (struct sk_buff *)&priv->tx_queue) { -struct ieee80211_tx_info *ni; -struct memrecord *mr; - - ni =IEEE80211_SKB_CB (entry->next); - mr = (struct memrecord *)ni->driver_data; - freed = mr->start_addr - last_addr; - }else - freed = priv->rx_end - last_addr; +struct p54_control_hdr *entry_hdr; +struct p54_tx_control_allocdata *entry_data; +int pad =0 ; + range = (void *)info->driver_data; +if (range->start_addr != addr) { last_addr = range->end_addr; -__skb_unlink (entry, &priv->tx_queue); -spin_unlock_irqrestore (&priv->tx_queue.lock, flags); + entry = entry->next; +continue ; + } -memset (&info->status,0 ,sizeof (info->status)); - entry_hdr = (struct p54_control_hdr *) entry->data; - entry_data = (struct p54_tx_control_allocdata *) entry_hdr->data; -if ((entry_hdr->magic1 &cpu_to_le16 (0x4000 )) !=0 ) - pad = entry_data->align[0 ]; - - priv->tx_stats[entry_data->hw_queue].len--; -if (!(info->flags &IEEE80211_TX_CTL_NO_ACK )) { -if (!(payload->status &0x01 )) - info->flags |=IEEE80211_TX_STAT_ACK ; -else - info->status.excessive_retries =1 ; - } - info->status.retry_count = payload->retries -1 ; - info->status.ack_signal =p54_rssi_to_dbm (dev, -le16_to_cpu (payload->ack_rssi)); -skb_pull (entry,sizeof (*hdr) + pad +sizeof (*entry_data)); -ieee80211_tx_status_irqsafe (dev, entry); - goto out; +if (entry->next != (struct sk_buff *)&priv->tx_queue) { +struct ieee80211_tx_info *ni; +struct memrecord *mr; + + ni =IEEE80211_SKB_CB (entry->next); + mr = (struct memrecord *)ni->driver_data; + freed = mr->start_addr - last_addr; }else - last_addr = range->end_addr; - entry = entry->next; + freed = priv->rx_end - last_addr; + + last_addr = range->end_addr; +__skb_unlink (entry, &priv->tx_queue); +spin_unlock_irqrestore (&priv->tx_queue.lock, flags); + +memset (&info->status,0 ,sizeof (info->status)); + entry_hdr = (struct p54_control_hdr *) entry->data; + entry_data = (struct p54_tx_control_allocdata *)entry_hdr->data; +if (entry_hdr->magic1 &cpu_to_le16 (0x4000 )) + pad = entry_data->align[0 ]; + + priv->tx_stats[entry_data->hw_queue].len--; +if (!(info->flags &IEEE80211_TX_CTL_NO_ACK )) { +if (!(payload->status &0x01 )) + info->flags |=IEEE80211_TX_STAT_ACK ; +else + info->status.excessive_retries =1 ; + } + info->status.retry_count = payload->retries -1 ; + info->status.ack_signal =p54_rssi_to_dbm (dev, +le16_to_cpu (payload->ack_rssi)); +skb_pull (entry,sizeof (*hdr) + pad +sizeof (*entry_data)); +ieee80211_tx_status_irqsafe (dev, entry); + goto out; }spin_unlock_irqrestore (&priv->tx_queue.lock, flags); out: -if (freed >=IEEE80211_MAX_RTS_THRESHOLD +0x170 + -sizeof (struct p54_control_hdr )) +if (freed >=IEEE80211_MAX_RTS_THRESHOLD + priv->headroom + + priv->tailroom +sizeof (struct p54_control_hdr ))p54_wake_free_queues (dev); }