@@ -423,7 +423,7 @@ static void tile_net_pop_all_buffers(int instance, int stack)
423
423
/* Provide linux buffers to mPIPE. */
424
424
static void tile_net_provide_needed_buffers (void )
425
425
{
426
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
426
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
427
427
int instance , kind ;
428
428
for (instance = 0 ; instance < NR_MPIPE_MAX &&
429
429
info -> mpipe [instance ].has_iqueue ; instance ++ ) {
@@ -585,7 +585,7 @@ static void tile_net_receive_skb(struct net_device *dev, struct sk_buff *skb,
585
585
/* Handle a packet. Return true if "processed", false if "filtered". */
586
586
static bool tile_net_handle_packet (int instance , gxio_mpipe_idesc_t * idesc )
587
587
{
588
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
588
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
589
589
struct mpipe_data * md = & mpipe_data [instance ];
590
590
struct net_device * dev = md -> tile_net_devs_for_channel [idesc -> channel ];
591
591
uint8_t l2_offset ;
@@ -651,7 +651,7 @@ static bool tile_net_handle_packet(int instance, gxio_mpipe_idesc_t *idesc)
651
651
*/
652
652
static int tile_net_poll (struct napi_struct * napi , int budget )
653
653
{
654
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
654
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
655
655
unsigned int work = 0 ;
656
656
gxio_mpipe_idesc_t * idesc ;
657
657
int instance , i , n ;
@@ -700,7 +700,7 @@ static int tile_net_poll(struct napi_struct *napi, int budget)
700
700
/* Handle an ingress interrupt from an instance on the current cpu. */
701
701
static irqreturn_t tile_net_handle_ingress_irq (int irq , void * id )
702
702
{
703
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
703
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
704
704
napi_schedule (& info -> mpipe [(uint64_t )id ].napi );
705
705
return IRQ_HANDLED ;
706
706
}
@@ -763,7 +763,7 @@ static enum hrtimer_restart tile_net_handle_tx_wake_timer(struct hrtimer *t)
763
763
/* Make sure the egress timer is scheduled. */
764
764
static void tile_net_schedule_egress_timer (void )
765
765
{
766
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
766
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
767
767
768
768
if (!info -> egress_timer_scheduled ) {
769
769
hrtimer_start (& info -> egress_timer ,
@@ -780,7 +780,7 @@ static void tile_net_schedule_egress_timer(void)
780
780
*/
781
781
static enum hrtimer_restart tile_net_handle_egress_timer (struct hrtimer * t )
782
782
{
783
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
783
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
784
784
unsigned long irqflags ;
785
785
bool pending = false;
786
786
int i , instance ;
@@ -1996,7 +1996,7 @@ static unsigned int tile_net_tx_frags(struct frag *frags,
1996
1996
/* Help the kernel transmit a packet. */
1997
1997
static int tile_net_tx (struct sk_buff * skb , struct net_device * dev )
1998
1998
{
1999
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
1999
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
2000
2000
struct tile_net_priv * priv = netdev_priv (dev );
2001
2001
int instance = priv -> instance ;
2002
2002
struct mpipe_data * md = & mpipe_data [instance ];
@@ -2138,7 +2138,7 @@ static int tile_net_set_mac_address(struct net_device *dev, void *p)
2138
2138
static void tile_net_netpoll (struct net_device * dev )
2139
2139
{
2140
2140
int instance = mpipe_instance (dev );
2141
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
2141
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
2142
2142
struct mpipe_data * md = & mpipe_data [instance ];
2143
2143
2144
2144
disable_percpu_irq (md -> ingress_irq );
@@ -2237,7 +2237,7 @@ static void tile_net_dev_init(const char *name, const uint8_t *mac)
2237
2237
/* Per-cpu module initialization. */
2238
2238
static void tile_net_init_module_percpu (void * unused )
2239
2239
{
2240
- struct tile_net_info * info = & __get_cpu_var ( per_cpu_info );
2240
+ struct tile_net_info * info = this_cpu_ptr ( & per_cpu_info );
2241
2241
int my_cpu = smp_processor_id ();
2242
2242
int instance ;
2243
2243
0 commit comments