Subject: Re: 答复: [PATCH] virtio_net: reduce raw_smp_processor_id() calling in virtnet_xdp_get_sq

From: "Michael S. Tsirkin" <[email-masked]>
Date: Tue, 31 Aug 2021 10:33:56 -0400

On Tue, Aug 31, 2021 at 02:09:36AM +0000, Li,Rongqing wrote:
> > -----邮件原件-----
> > 发件人: Michael S. Tsirkin <[email-masked]>
> > 发送时间: 2021年8月31日 5:10
> > 收件人: Li,Rongqing <[email-masked]>
> > 抄送: [email-masked]; [email-masked];
> > [email-masked]
> > 主题: Re: [PATCH] virtio_net: reduce raw_smp_processor_id() calling in
> > virtnet_xdp_get_sq
> > 
> > On Thu, Aug 26, 2021 at 04:21:35PM +0800, Li RongQing wrote:
> > > smp_processor_id()/raw* will be called once each when not more queues
> > > in virtnet_xdp_get_sq() which is called in non-preemptible context, so
> > > it's safe to call the function
> > > smp_processor_id() once.
> > >
> > > Signed-off-by: Li RongQing <[email-masked]>
> > 
> > commit log should probably explain why it's a good idea to replace
> > raw_smp_processor_id with smp_processor_id in the case of curr_queue_pairs
> > <= nr_cpu_ids.
> > 
> 
> 
> I change it as below, is it ok?
> 
>     virtio_net: reduce raw_smp_processor_id() calling in virtnet_xdp_get_sq

shorter:

virtio_net: s/raw_smp_processor_id/smp_processor_id/ in virtnet_xdp_get_sq

> 
>     smp_processor_id() and raw_smp_processor_id() are called once
>     each in virtnet_xdp_get_sq(), when curr_queue_pairs <= nr_cpu_ids,
>     should be merged

I'd just drop this part.

> 
>     virtnet_xdp_get_sq() is called in non-preemptible context, so
>     it's safe to call the function smp_processor_id(), and keep
>     smp_processor_id(), and remove the calling of raw_smp_processor_id(),
>     avoid the wrong use virtnet_xdp_get_sq to preemptible context
>     in the future

s/avoid.*/this way we'll get a warning if this is ever called in a preemptible context/

> -Li