mirror of https://gitee.com/openkylin/linux.git
net: enetc: move up enetc_reuse_page and enetc_page_reusable
For XDP_TX, we need to call enetc_reuse_page from enetc_clean_tx_ring, so we need to avoid a forward declaration. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
1ee8d6f3be
commit
65d0cbb414
|
@ -275,6 +275,25 @@ static int enetc_bd_ready_count(struct enetc_bdr *tx_ring, int ci)
|
|||
return pi >= ci ? pi - ci : tx_ring->bd_count - ci + pi;
|
||||
}
|
||||
|
||||
static bool enetc_page_reusable(struct page *page)
|
||||
{
|
||||
return (!page_is_pfmemalloc(page) && page_ref_count(page) == 1);
|
||||
}
|
||||
|
||||
static void enetc_reuse_page(struct enetc_bdr *rx_ring,
|
||||
struct enetc_rx_swbd *old)
|
||||
{
|
||||
struct enetc_rx_swbd *new;
|
||||
|
||||
new = &rx_ring->rx_swbd[rx_ring->next_to_alloc];
|
||||
|
||||
/* next buf that may reuse a page */
|
||||
enetc_bdr_idx_inc(rx_ring, &rx_ring->next_to_alloc);
|
||||
|
||||
/* copy page reference */
|
||||
*new = *old;
|
||||
}
|
||||
|
||||
static void enetc_get_tx_tstamp(struct enetc_hw *hw, union enetc_tx_bd *txbd,
|
||||
u64 *tstamp)
|
||||
{
|
||||
|
@ -516,25 +535,6 @@ static void enetc_get_offloads(struct enetc_bdr *rx_ring,
|
|||
#endif
|
||||
}
|
||||
|
||||
static bool enetc_page_reusable(struct page *page)
|
||||
{
|
||||
return (!page_is_pfmemalloc(page) && page_ref_count(page) == 1);
|
||||
}
|
||||
|
||||
static void enetc_reuse_page(struct enetc_bdr *rx_ring,
|
||||
struct enetc_rx_swbd *old)
|
||||
{
|
||||
struct enetc_rx_swbd *new;
|
||||
|
||||
new = &rx_ring->rx_swbd[rx_ring->next_to_alloc];
|
||||
|
||||
/* next buf that may reuse a page */
|
||||
enetc_bdr_idx_inc(rx_ring, &rx_ring->next_to_alloc);
|
||||
|
||||
/* copy page reference */
|
||||
*new = *old;
|
||||
}
|
||||
|
||||
static struct enetc_rx_swbd *enetc_get_rx_buff(struct enetc_bdr *rx_ring,
|
||||
int i, u16 size)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue