Re: [PATCH v8 1/9] dax: Use percpu rwsem for dax_{read,write}_lock()

2021-12-15 Thread Christoph Hellwig
On Wed, Dec 15, 2021 at 10:06:29AM +0800, Shiyang Ruan wrote:
> 
> 
> 在 2021/12/14 23:40, Christoph Hellwig 写道:
> > On Thu, Dec 02, 2021 at 04:48:48PM +0800, Shiyang Ruan wrote:
> > > In order to introduce dax holder registration, we need a write lock for
> > > dax.  Change the current lock to percpu_rw_semaphore and introduce a
> > > write lock for registration.
> > 
> > Why do we need to change the existing, global locking for that?
> 
> I think we have talked about this in the previous v7 patchset:
> 
> 
> https://lore.kernel.org/nvdimm/20210924130959.2695749-1-ruansy.f...@fujitsu.com/T/#m4031bc3dc49dcbaac6f8d99877f910fa9a6f998a

Any kind of rationale needs to go into the patch description.

> I didn't test in benchmarks for now.  Could you show me which one I should
> test this code on?  I am not familiar with this...

Just normal read/write I/O on a DAX device.



Re: [PATCH v8 1/9] dax: Use percpu rwsem for dax_{read,write}_lock()

2021-12-14 Thread Shiyang Ruan




在 2021/12/14 23:40, Christoph Hellwig 写道:

On Thu, Dec 02, 2021 at 04:48:48PM +0800, Shiyang Ruan wrote:

In order to introduce dax holder registration, we need a write lock for
dax.  Change the current lock to percpu_rw_semaphore and introduce a
write lock for registration.


Why do we need to change the existing, global locking for that?


I think we have talked about this in the previous v7 patchset:


https://lore.kernel.org/nvdimm/20210924130959.2695749-1-ruansy.f...@fujitsu.com/T/#m4031bc3dc49dcbaac6f8d99877f910fa9a6f998a

If it is a global lock, any write lock will block other dax devices.



What is the impact of this to benchmarks?  Also if we stop using srcu
protection, we should be able to get rid of grace periods or RCU frees.


I didn't test in benchmarks for now.  Could you show me which one I 
should test this code on?  I am not familiar with this...



--
Thanks,
Ruan.





Re: [PATCH v8 1/9] dax: Use percpu rwsem for dax_{read,write}_lock()

2021-12-14 Thread Christoph Hellwig
On Thu, Dec 02, 2021 at 04:48:48PM +0800, Shiyang Ruan wrote:
> In order to introduce dax holder registration, we need a write lock for
> dax.  Change the current lock to percpu_rw_semaphore and introduce a
> write lock for registration.

Why do we need to change the existing, global locking for that?

What is the impact of this to benchmarks?  Also if we stop using srcu
protection, we should be able to get rid of grace periods or RCU frees.