Ticket #1261: 1261-patch.diff

File 1261-patch.diff, 1.4 kB (added by Przemyslaw Bruski, 2 years ago)

patch

  • ath/if_ath.c

    old new  
    71317140        HAL_STATUS status; 
    71327141        int uapsdq = 0; 
    71337142        u_int64_t tsf = 0; /* Only needed for monitor mode */ 
     7143#ifdef ATH_SUPERG_FF 
     7144        struct sk_buff *skb_ff = NULL; 
     7145#endif 
    71347146         
    71357147        DPRINTF(sc, ATH_DEBUG_TX_PROC, "%s: tx queue %d (0x%x), link %p\n", __func__, 
    71367148                txq->axq_qnum, ath_hal_gettxbuf(sc->sc_ah, txq->axq_qnum), 
     
    72767288                } 
    72777289 
    72787290                DPRINTF(sc, ATH_DEBUG_TX_PROC, "%s: free skb %p\n", __func__, bf->bf_skb); 
    7279  
     7291#ifdef ATH_SUPERG_FF 
     7292                skb_ff=bf->bf_skb->next; 
     7293#endif 
    72807294                ath_tx_capture(sc->sc_dev, bf, bf->bf_skb, tsf); 
    72817295#ifdef ATH_SUPERG_FF 
    72827296                { 
    72837297                        /* Handle every skb after the first one - these are FF extra 
    72847298                         * buffers */ 
    7285                         struct sk_buff *tskb = NULL, *skb = bf->bf_skb->next
     7299                        struct sk_buff *tskb = NULL
    72867300                        unsigned int i; 
    72877301 
    72887302                        for (i = 0; i < bf->bf_numdescff; i++) { 
    7289                                 tskb = skb->next; 
     7303                                tskb = skb_ff->next; 
     7304 
    72907305                                bus_unmap_single(sc->sc_bdev, bf->bf_skbaddrff[i], 
    7291                                                 skb->len, BUS_DMA_TODEVICE); 
     7306                                                skb_ff->len, BUS_DMA_TODEVICE); 
    72927307                                DPRINTF(sc, ATH_DEBUG_TX_PROC, "%s: free skb %p\n", 
    7293                                         __func__, skb); 
    7294                                 ath_tx_capture(sc->sc_dev, bf, skb, tsf); 
    7295                                 skb = tskb; 
     7308                                        __func__, skb_ff); 
     7309                                ath_tx_capture(sc->sc_dev, bf, skb_ff, tsf); 
     7310                                skb_ff = tskb; 
    72967311                        } 
    72977312                } 
    72987313                bf->bf_numdescff = 0;