On Mon, 17 Aug 2015, Jiang Liu wrote: > Function i40e_clean_rx_irq() tries to reuse memory pages allocated s/i40e_clean_rx_irq/i40e_clean_rx_irq_ps/ > from the nearest node. To better support memoryless node, use > numa_mem_id() instead of numa_node_id() to get the nearest node with > memory. > Out of curiosity, what prevents the cpu to be preempted and current_node to no longer match numa_mem_id()? > This change should only affect performance. > > Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx> > --- > drivers/net/ethernet/intel/i40e/i40e_txrx.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c b/drivers/net/ethernet/intel/i40e/i40e_txrx.c > index 9a4f2bc70cd2..a8f618cb8eb0 100644 > --- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c > +++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c > @@ -1516,7 +1516,7 @@ static int i40e_clean_rx_irq_ps(struct i40e_ring *rx_ring, int budget) > unsigned int total_rx_bytes = 0, total_rx_packets = 0; > u16 rx_packet_len, rx_header_len, rx_sph, rx_hbo; > u16 cleaned_count = I40E_DESC_UNUSED(rx_ring); > - const int current_node = numa_node_id(); > + const int current_node = numa_mem_id(); > struct i40e_vsi *vsi = rx_ring->vsi; > u16 i = rx_ring->next_to_clean; > union i40e_rx_desc *rx_desc; -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>