Michael S. Tsirkin
2022-Apr-28 05:24 UTC
[PATCH V3 6/9] virtio-ccw: implement synchronize_cbs()
On Thu, Apr 28, 2022 at 11:04:41AM +0800, Jason Wang wrote:> > But my guess is that rwlock + some testing for the legacy indicator case > > just to double check if there is a heavy regression despite of our > > expectations to see none should do the trick. > > I suggest this, rwlock (for not airq) seems better than spinlock, but > at worst case it will cause cache line bouncing. But I wonder if it's > noticeable (anyhow it has been used for airq). > > ThanksWhich existing rwlock does airq use right now? Can we take it to sync? -- MST
On Thu, Apr 28, 2022 at 1:24 PM Michael S. Tsirkin <mst at redhat.com> wrote:> > On Thu, Apr 28, 2022 at 11:04:41AM +0800, Jason Wang wrote: > > > But my guess is that rwlock + some testing for the legacy indicator case > > > just to double check if there is a heavy regression despite of our > > > expectations to see none should do the trick. > > > > I suggest this, rwlock (for not airq) seems better than spinlock, but > > at worst case it will cause cache line bouncing. But I wonder if it's > > noticeable (anyhow it has been used for airq). > > > > Thanks > > Which existing rwlock does airq use right now? Can we take it to sync?It's the rwlock in airq_info, it has already been used in this patch. write_lock(&info->lock); write_unlock(&info->lock); But the problem is, it looks to me there could be a case that airq is not used, (virtio_ccw_int_hander()). That's why the patch use a spinlock, it could be optimized with using a rwlock as well. Thanks> > -- > MST >