Linux-Fsdevel Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support
@ 2020-09-01 14:26 Vivek Goyal
2020-09-01 14:26 ` [PATCH 1/2] fuse, dax: Use correct config option CONFIG_FUSE_DAX Vivek Goyal
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Vivek Goyal @ 2020-09-01 14:26 UTC (permalink / raw)
To: linux-fsdevel, virtio-fs, miklos; +Cc: vgoyal, stefanha, dgilbert
Hi Miklos,
I am testing fuse dax branch now. To begin with here are couple of
simple fixes to make sure I/O is going through dax path.
Either you can roll these fixes into existing patches or apply on
top.
I ran blogbench workload and some fio mmap jobs and these seem to be
running fine after these fixes.
Thanks
Vivek
Vivek Goyal (2):
fuse, dax: Use correct config option CONFIG_FUSE_DAX
fuse, dax: Save dax device in fuse_conn_dax
fs/fuse/dax.c | 1 +
fs/fuse/file.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
--
2.25.4
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/2] fuse, dax: Use correct config option CONFIG_FUSE_DAX
2020-09-01 14:26 [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support Vivek Goyal
@ 2020-09-01 14:26 ` Vivek Goyal
2020-09-01 14:26 ` [PATCH 2/2] fuse, dax: Save dax device in fuse_conn_dax Vivek Goyal
2020-09-04 9:45 ` [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support Miklos Szeredi
2 siblings, 0 replies; 5+ messages in thread
From: Vivek Goyal @ 2020-09-01 14:26 UTC (permalink / raw)
To: linux-fsdevel, virtio-fs, miklos; +Cc: vgoyal, stefanha, dgilbert
Correct config option to use is CONFIG_FUSE_DAX and not CONFIG_VIRTIO_FS_DAX.
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
---
fs/fuse/file.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index 7b53ae43860c..380577159c6e 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -3480,6 +3480,6 @@ void fuse_init_file_inode(struct inode *inode)
init_waitqueue_head(&fi->page_waitq);
fi->writepages = RB_ROOT;
- if (IS_ENABLED(CONFIG_VIRTIO_FS_DAX))
+ if (IS_ENABLED(CONFIG_FUSE_DAX))
fuse_dax_inode_init(inode);
}
--
2.25.4
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 2/2] fuse, dax: Save dax device in fuse_conn_dax
2020-09-01 14:26 [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support Vivek Goyal
2020-09-01 14:26 ` [PATCH 1/2] fuse, dax: Use correct config option CONFIG_FUSE_DAX Vivek Goyal
@ 2020-09-01 14:26 ` Vivek Goyal
2020-09-04 9:45 ` [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support Miklos Szeredi
2 siblings, 0 replies; 5+ messages in thread
From: Vivek Goyal @ 2020-09-01 14:26 UTC (permalink / raw)
To: linux-fsdevel, virtio-fs, miklos; +Cc: vgoyal, stefanha, dgilbert
This is needed later in fuse_iomap_begin to fill iomap->dax_dev. Otherwise
dax generic code (dax_iomap_rw()) returns -EOPNOTSUPP.
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
---
fs/fuse/dax.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/fs/fuse/dax.c b/fs/fuse/dax.c
index c7099eec17b4..aa89173234c1 100644
--- a/fs/fuse/dax.c
+++ b/fs/fuse/dax.c
@@ -1296,6 +1296,7 @@ int fuse_dax_conn_alloc(struct fuse_conn *fc, struct dax_device *dax_dev)
fcd->nr_free_ranges = nr_ranges;
fcd->nr_ranges = nr_ranges;
+ fcd->dev = dax_dev;
fc->dax = fcd;
return 0;
--
2.25.4
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support
2020-09-01 14:26 [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support Vivek Goyal
2020-09-01 14:26 ` [PATCH 1/2] fuse, dax: Use correct config option CONFIG_FUSE_DAX Vivek Goyal
2020-09-01 14:26 ` [PATCH 2/2] fuse, dax: Save dax device in fuse_conn_dax Vivek Goyal
@ 2020-09-04 9:45 ` Miklos Szeredi
2020-09-04 13:05 ` Vivek Goyal
2 siblings, 1 reply; 5+ messages in thread
From: Miklos Szeredi @ 2020-09-04 9:45 UTC (permalink / raw)
To: Vivek Goyal
Cc: linux-fsdevel, virtio-fs-list, Stefan Hajnoczi, Dr. David Alan Gilbert
On Tue, Sep 1, 2020 at 4:26 PM Vivek Goyal <vgoyal@redhat.com> wrote:
>
> Hi Miklos,
>
> I am testing fuse dax branch now. To begin with here are couple of
> simple fixes to make sure I/O is going through dax path.
>
> Either you can roll these fixes into existing patches or apply on
> top.
>
> I ran blogbench workload and some fio mmap jobs and these seem to be
> running fine after these fixes.
Thanks for testing and fixing.
Pushed a rerolled series to #for-next. Would be good if you cour retest.
There's one checkpatch warning I'm unsure about:
| WARNING: Using vsprintf specifier '%px' potentially exposes the
kernel memory layout, if you don't really need the address please
consider using '%p'.
| #173: FILE: fs/fuse/virtio_fs.c:812:
| + dev_dbg(&vdev->dev, "%s: window kaddr 0x%px phys_addr 0x%llx
len 0x%llx\n",
| + __func__, fs->window_kaddr, cache_reg.addr, cache_reg.len);
|
| total: 0 errors, 1 warnings, 175 lines checked
|
| NOTE: For some of the reported defects, checkpatch may be able to
| mechanically convert to the typical style using --fix or --fix-inplace.
|
| patches/virtio_fs-dax-set-up-virtio_fs-dax_device.patch has style
problems, please review.
Do you think that the kernel address in the debug output is necessary?
Thanks,
Miklos
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support
2020-09-04 9:45 ` [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support Miklos Szeredi
@ 2020-09-04 13:05 ` Vivek Goyal
0 siblings, 0 replies; 5+ messages in thread
From: Vivek Goyal @ 2020-09-04 13:05 UTC (permalink / raw)
To: Miklos Szeredi
Cc: linux-fsdevel, virtio-fs-list, Stefan Hajnoczi, Dr. David Alan Gilbert
On Fri, Sep 04, 2020 at 11:45:53AM +0200, Miklos Szeredi wrote:
> On Tue, Sep 1, 2020 at 4:26 PM Vivek Goyal <vgoyal@redhat.com> wrote:
> >
> > Hi Miklos,
> >
> > I am testing fuse dax branch now. To begin with here are couple of
> > simple fixes to make sure I/O is going through dax path.
> >
> > Either you can roll these fixes into existing patches or apply on
> > top.
> >
> > I ran blogbench workload and some fio mmap jobs and these seem to be
> > running fine after these fixes.
>
> Thanks for testing and fixing.
>
> Pushed a rerolled series to #for-next. Would be good if you cour retest.
Thanks. Will test again next week.
>
> There's one checkpatch warning I'm unsure about:
>
> | WARNING: Using vsprintf specifier '%px' potentially exposes the
> kernel memory layout, if you don't really need the address please
> consider using '%p'.
> | #173: FILE: fs/fuse/virtio_fs.c:812:
> | + dev_dbg(&vdev->dev, "%s: window kaddr 0x%px phys_addr 0x%llx
> len 0x%llx\n",
> | + __func__, fs->window_kaddr, cache_reg.addr, cache_reg.len);
> |
> | total: 0 errors, 1 warnings, 175 lines checked
> |
> | NOTE: For some of the reported defects, checkpatch may be able to
> | mechanically convert to the typical style using --fix or --fix-inplace.
> |
> | patches/virtio_fs-dax-set-up-virtio_fs-dax_device.patch has style
> problems, please review.
>
> Do you think that the kernel address in the debug output is necessary?
It is more of a nice to have thing. Was more useful in initial
development. Now things have stablized, so I don't use it that much
anymore.
So I am fine converting %px to %p. I am not sure though how people
practically make use of %p output for debugging. IIUC, that's a
hash of actual value.
This debug output atleast tells us that a certain virtio device
provided a cache window and driver mapped it.
Thanks
Vivek
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-09-04 13:05 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-01 14:26 [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support Vivek Goyal
2020-09-01 14:26 ` [PATCH 1/2] fuse, dax: Use correct config option CONFIG_FUSE_DAX Vivek Goyal
2020-09-01 14:26 ` [PATCH 2/2] fuse, dax: Save dax device in fuse_conn_dax Vivek Goyal
2020-09-04 9:45 ` [PATCH 0/2] fuse, dax: Couple of fixes for fuse dax support Miklos Szeredi
2020-09-04 13:05 ` Vivek Goyal
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).