[dm-devel] Question about which types of dm need to support DAX
Yang, Xiao/杨 晓
yangx.jy at fujitsu.com
Sat Oct 15 08:27:59 UTC 2022
On 2022/9/27 22:38, Jeff Moyer wrote:
> "Yang, Xiao/杨 晓" <yangx.jy at fujitsu.com> writes:
>
>> Hi Jeff,
>>
>> Thanks a lot for your reply.
>>
>> On 2022/9/27 3:52, Jeff Moyer wrote:
>>> "Yang, Xiao/杨 晓" <yangx.jy at fujitsu.com> writes:
>>>
>>>> Hi Ross, Toshi, Jeff and others
>>>>
>>>> After reading the kernel patches[1][2][3] about dm, I think only three
>>>> types(linear, stripe and log-writes) of dm can support DAX now, right?
>>>
>>> Right.
>>>
>>>> I wonder why only three types of dm need to support DAX? Is there any
>>>> reason/history and use case?
>>>
>>> It was easy to add DAX support to those targets. Note that if a target
>>> needs to intercept I/O, then it is fundamentally incompatible with DAX.
>>
>> How can I know which target needs to intercept I/O?
>
> There's no better way than reading and understanding what each target
> does.
Hi Jeff,
After reading the code about thin provisioning target, thin provisioning
target depends on DM_BUFIO kconfig which is designed to cache I/O. Is it
what you said about "intercept I/O"? Perhaps, we have to drop DM_BUFIO
for thin provisioning target if we want to make it support DAX.
Best Regards,
Xiao Yang
>
>> Could you tell me why it is fundamentally incompatible with DAX?
>
> DAX stands for direct access, and it is a mechanism by which a
> user-space process can perform I/O without going through the kernel.
>
> -Jeff
>
More information about the dm-devel
mailing list