Replies: 1 comment 1 reply
-
Case of block size change should be covered by range lock. In particular, for the first thread writing beyond the first block zfs_rangelock_cb() should manage locking of the whole file until the block size is changed and then reduce lock scope to the second block. The second thread should wait for it. Do you have some reproduction for the issue, or this is only a theoretical question? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Precondition
Object o1 has just been created, its maxblkid is 0, the max block size of o1 is 128k.
thread1 wants to write 32k data at offset 128k and read that data using dmu_read_by_dnode after write, thread2 wants to write 32k data at offset 192k. thread1 and thread2 want to dirty the same dbuf in the same time
Operation Steps
Beta Was this translation helpful? Give feedback.
All reactions