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 from this list: send the line "unsubscribe linux-hotplug" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html