Skip to content

Commit

Permalink
be2net: minor code optimizations
Browse files Browse the repository at this point in the history
Couple of code optimizations in the Rx path (to avoid a memset).

From: Sathya P <sathyap@serverengines.com>
Signed-off-by: Ajit Khaparde <ajitk@serverengines.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Ajit Khaparde authored and David S. Miller committed Feb 12, 2010
1 parent 34a89b8 commit 205859a
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions drivers/net/benet/be_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -636,9 +636,11 @@ get_rx_page_info(struct be_adapter *adapter, u16 frag_idx)
rx_page_info = &adapter->rx_obj.page_info_tbl[frag_idx];
BUG_ON(!rx_page_info->page);

if (rx_page_info->last_page_user)
if (rx_page_info->last_page_user) {
pci_unmap_page(adapter->pdev, pci_unmap_addr(rx_page_info, bus),
adapter->big_page_size, PCI_DMA_FROMDEVICE);
rx_page_info->last_page_user = false;
}

atomic_dec(&rxq->used);
return rx_page_info;
Expand Down Expand Up @@ -706,7 +708,7 @@ static void skb_fill_rx_data(struct be_adapter *adapter,
skb->data_len = curr_frag_len - hdr_len;
skb->tail += hdr_len;
}
memset(page_info, 0, sizeof(*page_info));
page_info->page = NULL;

if (pktsize <= rx_frag_size) {
BUG_ON(num_rcvd != 1);
Expand Down Expand Up @@ -739,7 +741,7 @@ static void skb_fill_rx_data(struct be_adapter *adapter,
skb->len += curr_frag_len;
skb->data_len += curr_frag_len;

memset(page_info, 0, sizeof(*page_info));
page_info->page = NULL;
}
BUG_ON(j > MAX_SKB_FRAGS);

Expand Down

0 comments on commit 205859a

Please sign in to comment.