On 2014-02-03 12:22, Oleksij Rempel wrote: > Am 03.02.2014 03:09, schrieb Sujith Manoharan: >> Oleksij Rempel wrote: >>> + rx_stats = kzalloc(sizeof(struct ath_rx_status), GFP_KERNEL); >>> + if (unlikely(rx_stats == NULL)) { >>> + ath_err(common, "rx_stats allocation filed!\n"); >>> + goto err_nofree; >>> + } >>> + rx_status_htc_to_ath(rx_stats, &rxbuf->rxstatus); >>> + > >> This seems a little expensive, since this would happen for every packet, >> and a memcpy is already done earlier, for storing the RX status in >> rxbuf->rxstatus. Instead of using 'struct ath_htc_rx_status' in >> 'struct ath9k_htc_rxbuf', why can't 'struct ath_rx_status' be used ? >> The values can be converted and stored directly, avoiding this alloc. > > Do you mean kzalloc or converter? > then memcpy is removed by patch 12/13. Converter is not effective but it > should prevent from confusions. At least until FW use same flags and > struct ath_rx_status do. > But i'm open for other ideas too. You should at least keep rx_stats on stack instead of using kzalloc, that would make it much faster. - Felix -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html