Hi Dan,
this series decouples the DAX from the block layer so that the
block_device is not needed at all for the DAX I/O path.
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/vi
The device mapper DAX support is all hanging off a block device and thus
can't be used with device dax. Make it depend on CONFIG_FS_DAX instead
of CONFIG_DAX_DRIVER. This also means that bdev_dax_pgoff only needs to
be built under CONFIG_FS_DAX now.
Signed-off-by: Christoph Hellwig
---
drivers
Drivers that register a dax_dev should make sure it works, no need
to double check from the file system.
Signed-off-by: Christoph Hellwig
---
drivers/dax/super.c | 49 +
1 file changed, 1 insertion(+), 48 deletions(-)
diff --git a/drivers/dax/super.c
CONFIG_DAX_DRIVER only selects CONFIG_DAX now, so remove it.
Signed-off-by: Christoph Hellwig
---
drivers/dax/Kconfig| 4
drivers/nvdimm/Kconfig | 2 +-
drivers/s390/block/Kconfig | 2 +-
fs/fuse/Kconfig| 2 +-
4 files changed, 3 insertions(+), 7 deletions(-)
diff -
dax_attribute_group is only used by the pmem driver, and can avoid the
completely pointless lookup by the disk name if moved there. This
leaves just a single caller of dax_get_by_host, so move dax_get_by_host
into the same ifdef block as that caller.
Signed-off-by: Christoph Hellwig
Reviewed-by:
fs_dax_get_by_bdev is the primary interface to find a dax device for a
block device, so move the partition alignment check there instead of
wiring it up through ->dax_supported.
Signed-off-by: Christoph Hellwig
---
drivers/dax/super.c | 23 ++-
1 file changed, 6 insertions(+)
Factor out another DAX setup helper to simplify future changes. Also
move the experimental warning after the checks to not clutter the log
too much if the setup failed.
Signed-off-by: Christoph Hellwig
---
fs/xfs/xfs_super.c | 47 +++---
1 file changed, 2
Replace the dax_host_hash with an xarray indexed by the pointer value
of the gendisk, and require explicitly calls from the block drivers that
want to associate their gendisk with a dax_device.
Signed-off-by: Christoph Hellwig
Acked-by: Mike Snitzer
---
drivers/dax/bus.c| 6 +-
dr
Add a helper to perform the entire remapping for DAX accesses. This
helper open codes bdev_dax_pgoff given that the alignment checks have
already been done by the submitting file system and don't need to be
repeated.
Signed-off-by: Christoph Hellwig
Acked-by: Mike Snitzer
---
drivers/md/dm-lin
Just pass the vm_fault and iomap_iter structures, and figure out the rest
locally. Note that this requires moving dax_iomap_sector up in the file.
Signed-off-by: Christoph Hellwig
---
fs/dax.c | 29 +
1 file changed, 13 insertions(+), 16 deletions(-)
diff --git a/fs
Just open code the block size and dax_dev == NULL checks in the callers.
Signed-off-by: Christoph Hellwig
Acked-by: Mike Snitzer
---
drivers/dax/super.c | 36
drivers/md/dm-table.c| 22 +++---
drivers/md/dm.c | 2
Add a helper to perform the entire remapping for DAX accesses. This
helper open codes bdev_dax_pgoff given that the alignment checks have
already been done by the submitting file system and don't need to be
repeated.
Signed-off-by: Christoph Hellwig
Acked-by: Mike Snitzer
---
drivers/md/dm-log
Despite its name copy_user_page expected kernel addresses, which is what
we already have.
Signed-off-by: Christoph Hellwig
---
fs/dax.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/dax.c b/fs/dax.c
index 4e3e5a283a916..73bd1439d8089 100644
--- a/fs/dax.c
+++ b/fs/dax.c
The file relative offset must have the same alignment as the storage
offset, so use that and get rid of the call to iomap_sector.
Signed-off-by: Christoph Hellwig
---
fs/dax.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index 5364549d67a48..d7a923d1
Add a helper to perform the entire remapping for DAX accesses. This
helper open codes bdev_dax_pgoff given that the alignment checks have
already been done by the submitting file system and don't need to be
repeated.
Signed-off-by: Christoph Hellwig
Acked-by: Mike Snitzer
---
drivers/md/dm-str
Unshare the DAX and iomap buffered I/O page zeroing code. This code
previously did a IS_DAX check deep inside the iomap code, which in
fact was the only DAX check in the code. Instead move these checks
into the callers. Most callers already have DAX special casing anyway
and XFS will need it for
Replace the two steps of dax_iomap_sector and bdev_dax_pgoff with a
single dax_iomap_pgoff helper that avoids lots of cumbersome sector
conversions.
Signed-off-by: Christoph Hellwig
---
drivers/dax/super.c | 14 --
fs/dax.c| 35 ++-
include
From: Shiyang Ruan
Add helpers to prepare for using different DAX operations.
Signed-off-by: Shiyang Ruan
[hch: split from a larger patch + slight cleanups]
Signed-off-by: Christoph Hellwig
---
fs/xfs/xfs_bmap_util.c | 7 +++
fs/xfs/xfs_file.c | 3 +--
fs/xfs/xfs_iomap.c | 25 +
Hide the DAX device lookup from the xfs_super.c code.
Reviewed-by: Christoph Hellwig
---
fs/xfs/xfs_buf.c | 8
fs/xfs/xfs_buf.h | 4 ++--
fs/xfs/xfs_super.c | 26 +-
3 files changed, 11 insertions(+), 27 deletions(-)
diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/
Only call fs_dax_get_by_bdev once the sbi has been allocated and remove
the need for the dax_dev local variable.
Signed-off-by: Christoph Hellwig
---
fs/ext4/super.c | 7 +++
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index eb4df43abd76e..
Add a flag so that the file system can easily detect DAX operations.
Signed-off-by: Christoph Hellwig
---
fs/dax.c | 7 ---
include/linux/iomap.h | 1 +
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index 5b52b878124ac..0bd6cdcbacfc4 100644
-
Only call fs_dax_get_by_bdev once the sbi has been allocated and remove
the need for the dax_dev local variable.
Signed-off-by: Christoph Hellwig
---
fs/ext2/super.c | 12 +---
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/fs/ext2/super.c b/fs/ext2/super.c
index a964066a8
While the buffered write iomap ops do work due to the fact that zeroing
never allocates blocks, the DAX zeroing should use the direct ops just
like actual DAX I/O.
Signed-off-by: Christoph Hellwig
---
fs/xfs/xfs_iomap.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/x
Factor out a helper for the "manual" zeroing of a DAX range to clean
up dax_iomap_zero a lot.
Signed-off-by: Christoph Hellwig
---
fs/dax.c | 36 +++-
1 file changed, 19 insertions(+), 17 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index d7a923d152240..dc9ebeff
Prepare from removing the block_device from the DAX I/O path by returning
the partition offset from fs_dax_get_by_bdev so that the file systems
have it at hand for use during I/O.
Signed-off-by: Christoph Hellwig
---
drivers/dax/super.c | 9 ++---
drivers/md/dm.c | 4 ++--
fs/erofs/inter
Use the explicit DAX flag instead of checking the inode flag in the
iomap code.
Signed-off-by: Christoph Hellwig
---
fs/xfs/xfs_iomap.c | 7 ---
fs/xfs/xfs_iomap.h | 3 ++-
fs/xfs/xfs_pnfs.c | 2 +-
3 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/fs/xfs/xfs_iomap.c b/fs/xfs/x
Only build the block based iomap code if CONFIG_BLOCK is set. Currently
that is always the case, but it will change soon.
Signed-off-by: Christoph Hellwig
---
fs/Kconfig| 4 ++--
fs/iomap/Makefile | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/fs/Kconfig b/fs/K
The file system DAX code now does not require the block code. So allow
building a kernel with fuse DAX but not block layer.
Signed-off-by: Christoph Hellwig
---
fs/Kconfig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/Kconfig b/fs/Kconfig
index 6d608330a096e..7a2b11
Remove the last user of ->bdev in dax.c by requiring the file system to
pass in an address that already includes the DAX offset. As part of the
only set ->bdev or ->daxdev when actually required in the ->iomap_begin
methods.
Signed-off-by: Christoph Hellwig
---
fs/dax.c | 6 +--
The DAX device <-> block device association is only enabled if
CONFIG_BLOCK is enabled. Update dax.h to account for that and use
the right conditions for the fs_put_dax stub as well.
Signed-off-by: Christoph Hellwig
---
include/linux/dax.h | 41 -
1 file
Hi
Am 08.11.21 um 22:01 schrieb Noralf Trønnes:
Den 01.11.2021 15.15, skrev Thomas Zimmermann:
Add constants for the maximum size of the shadow-plane surface
size. Useful for shadow planes with virtual screen sizes. The
current sizes are 4096 scanlines with 4096 pixels each. This
seems reason
On 09-11-21, 08:23, cgel@gmail.com wrote:
> From: chiminghao
>
> Fix the following coccicheck REVIEW:
> ./drivers/gpio/gpio-virtio.c:437:2-3 REVIEW Unneeded semicolon
>
> Reported-by: Zeal Robot
> Signed-off-by: chiminghao
> ---
> drivers/gpio/gpio-virtio.c | 2 +-
> 1 file changed, 1 ins
Hi
Am 08.11.21 um 19:57 schrieb Noralf Trønnes:
Den 01.11.2021 15.15, skrev Thomas Zimmermann:
Enable the FB_DAMAGE_CLIPS property to reduce display-update
overhead. Also fixes a warning in the kernel log.
simple-framebuffer simple-framebuffer.0: [drm]
drm_plane_enable_fb_damage_clips()
On Mon, 2021-11-08 at 12:30 -0800, Srivatsa S. Bhat wrote:
> From: Srivatsa S. Bhat (VMware)
>
> VMware mailing lists in the MAINTAINERS file are private lists meant
> for VMware-internal review/notification for patches to the respective
> subsystems. So, in an earlier discussion [1][2], it was r
Am 08.11.21 um 21:55 schrieb Noralf Trønnes:
Den 01.11.2021 15.15, skrev Thomas Zimmermann:
Enable the FB_DAMAGE_CLIPS property to reduce display-update
overhead. Also fixes a warning in the kernel log.
simple-framebuffer simple-framebuffer.0: [drm]
drm_plane_enable_fb_damage_clips() no
On Mon, Nov 08, 2021 at 07:49:48PM +0800, Xuan Zhuo wrote:
> If the VIRTIO_RING_F_INDIRECT_DESC negotiation succeeds, and the number
> of sgs used for sending packets is greater than 1. We must constantly
> call __kmalloc/kfree to allocate/release desc.
>
> In the case of extremely fast package de
Den 09.11.2021 13.38, skrev Thomas Zimmermann:
>
>
> Am 08.11.21 um 21:55 schrieb Noralf Trønnes:
>>
>>
>> Den 01.11.2021 15.15, skrev Thomas Zimmermann:
>>> Enable the FB_DAMAGE_CLIPS property to reduce display-update
>>> overhead. Also fixes a warning in the kernel log.
>>>
>>> simple-fram
Den 09.11.2021 10.06, skrev Thomas Zimmermann:
> Hi
>
> Am 08.11.21 um 22:01 schrieb Noralf Trønnes:
>>
>>
>> Den 01.11.2021 15.15, skrev Thomas Zimmermann:
>>> Add constants for the maximum size of the shadow-plane surface
>>> size. Useful for shadow planes with virtual screen sizes. The
>>> cu
On Mon, Nov 08, 2021 at 07:49:49PM +0800, Xuan Zhuo wrote:
> In the case of using indirect, indirect desc must be allocated and
> released each time, which increases a lot of cpu overhead.
>
> Here, a cache is added for indirect. If the number of indirect desc to be
> applied for is less than desc
On Mon, Nov 08, 2021 at 06:05:29PM +0100, Stefano Garzarella wrote:
> On Fri, Nov 5, 2021 at 4:01 AM Jason Wang wrote:
> >
> > On Fri, Nov 5, 2021 at 12:17 AM Stefano Garzarella
> > wrote:
> > >
> > > `driver_override` allows to control which of the vDPA bus drivers
> > > binds to a vDPA device.
On Tue, Nov 09, 2021 at 08:10:58AM -0500, Michael S. Tsirkin wrote:
On Mon, Nov 08, 2021 at 06:05:29PM +0100, Stefano Garzarella wrote:
On Fri, Nov 5, 2021 at 4:01 AM Jason Wang wrote:
>
> On Fri, Nov 5, 2021 at 12:17 AM Stefano Garzarella
wrote:
> >
> > `driver_override` allows to control wh
Hi,
thanks for looking through all this code.
Am 09.11.21 um 14:04 schrieb Noralf Trønnes:
Den 09.11.2021 13.38, skrev Thomas Zimmermann:
Am 08.11.21 um 21:55 schrieb Noralf Trønnes:
Den 01.11.2021 15.15, skrev Thomas Zimmermann:
Enable the FB_DAMAGE_CLIPS property to reduce display-up
On Tue, 9 Nov 2021 08:09:42 -0500, Michael S. Tsirkin wrote:
> On Mon, Nov 08, 2021 at 07:49:49PM +0800, Xuan Zhuo wrote:
> > In the case of using indirect, indirect desc must be allocated and
> > released each time, which increases a lot of cpu overhead.
> >
> > Here, a cache is added for indirec
On Tue, 9 Nov 2021 08:03:18 -0500, Michael S. Tsirkin wrote:
> On Mon, Nov 08, 2021 at 07:49:48PM +0800, Xuan Zhuo wrote:
> > If the VIRTIO_RING_F_INDIRECT_DESC negotiation succeeds, and the number
> > of sgs used for sending packets is greater than 1. We must constantly
> > call __kmalloc/kfree t
Den 09.11.2021 15.56, skrev Thomas Zimmermann:
> Hi,
>
> thanks for looking through all this code.
>
> Am 09.11.21 um 14:04 schrieb Noralf Trønnes:
>>
>>
>> Den 09.11.2021 13.38, skrev Thomas Zimmermann:
>>>
>>>
>>> Am 08.11.21 um 21:55 schrieb Noralf Trønnes:
Den 01.11.2021 15.1
On Tue, 2021-11-09 at 00:58 +, Nadav Amit wrote:
> > On Nov 8, 2021, at 4:37 PM, Joe Perches wrote:
> > On Mon, 2021-11-08 at 16:22 -0800, Srivatsa S. Bhat wrote:
> >
> > So it's an exploder not an actual maintainer and it likely isn't
> > publically archived with any normal list mechanism.
>
Hi,
We plan to add a new vsock transport based on hypercall (e.g. vmcall on Intel
CPUs).
It transports AF_VSOCK packets between the guest and host, which is similar to
virtio-vsock, vmci-vsock and hyperv-vsock.
Compared to the above listed vsock transports which are designed for high
performanc
47 matches
Mail list logo