>  static inline void
>  vmbus_set_monitor(const struct vmbus_channel *channel, uint32_t monitor_id)
> {
> -     uint32_t *monitor_addr, monitor_mask;
> +     RTE_ATOMIC(uint32_t) *monitor_addr, monitor_mask;

Does this mean monitor_mask will also change to RTE_ATOMIC(uint32_t)? 

Seems not necessary.

>       unsigned int trigger_index;
> 
>       trigger_index = monitor_id / HV_MON_TRIG_LEN;
>       monitor_mask = 1u << (monitor_id % HV_MON_TRIG_LEN);
> 
> -     monitor_addr = &channel->monitor_page->trigs[trigger_index].pending;
> +     monitor_addr =
> +         (uint32_t __rte_atomic
> +*)&channel->monitor_page->trigs[trigger_index].pending;
>       vmbus_sync_set_bit(monitor_addr, monitor_mask);  }
> 
> --
> 1.8.3.1

Reply via email to