diff mbox series

common: dm-error now supports zoned devices

Message ID 20240221063741.3563039-1-hch@lst.de (mailing list archive)
State New, archived
Headers show
Series common: dm-error now supports zoned devices | expand

Commit Message

Christoph Hellwig Feb. 21, 2024, 6:37 a.m. UTC
Since kernel commit a951104333bd ("dm error: Add support for zoned block
devices") dm-error fully supports zoned devices.  Make use of that to
also run error injection tests for zoned device.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 common/rc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

Zorro Lang Feb. 25, 2024, 4:38 p.m. UTC | #1
On Wed, Feb 21, 2024 at 07:37:41AM +0100, Christoph Hellwig wrote:
> Since kernel commit a951104333bd ("dm error: Add support for zoned block
> devices") dm-error fully supports zoned devices.  Make use of that to
> also run error injection tests for zoned device.
> 
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
>  common/rc | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/common/rc b/common/rc
> index 524ffa02a..f207d8ab2 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -2193,12 +2193,10 @@ _require_dm_target()
>  		_notrun "This test requires dm $target support"
>  	fi
>  
> -	# dm-error cannot handle the zone information
> -	#
>  	# dm-snapshot and dm-thin-pool cannot ensure sequential writes on
>  	# the backing device
>  	case $target in
> -	error|snapshot|thin-pool)
> +	snapshot|thin-pool)

This patch makes sense to me, but I think this patch might cause
failures on old kernel which doesn't has kernel commit a951104333bd, right?

Is there a simple way to check if dm-error supports zoned block device? If
there's not, I think we have to let it fails on old kernel, to make it run
on newer kernel.

Thanks,
Zorro

>  		_require_non_zoned_device ${SCRATCH_DEV}
>  		;;
>  	esac
> -- 
> 2.39.2
>
Christoph Hellwig Feb. 26, 2024, 9:58 a.m. UTC | #2
On Mon, Feb 26, 2024 at 12:38:28AM +0800, Zorro Lang wrote:
> This patch makes sense to me, but I think this patch might cause
> failures on old kernel which doesn't has kernel commit a951104333bd, right?
> 
> Is there a simple way to check if dm-error supports zoned block device? If
> there's not, I think we have to let it fails on old kernel, to make it run
> on newer kernel.

I don't know any way.  But as this just affects zoned devices on btrfs
for now I guess the usual parties can just make sure it works by
backporting the right patches.  The previous don't work wasn't even
a not supported, but a case of dm-error being buggy for zoned devices.

In other words the original exclusion in xfstests should have never
gone in and whoever put it there should have fixed dm-error instead.
Zorro Lang Feb. 29, 2024, 1:43 a.m. UTC | #3
On Mon, Feb 26, 2024 at 10:58:29AM +0100, Christoph Hellwig wrote:
> On Mon, Feb 26, 2024 at 12:38:28AM +0800, Zorro Lang wrote:
> > This patch makes sense to me, but I think this patch might cause
> > failures on old kernel which doesn't has kernel commit a951104333bd, right?
> > 
> > Is there a simple way to check if dm-error supports zoned block device? If
> > there's not, I think we have to let it fails on old kernel, to make it run
> > on newer kernel.
> 
> I don't know any way.  But as this just affects zoned devices on btrfs
> for now I guess the usual parties can just make sure it works by
> backporting the right patches.  The previous don't work wasn't even
> a not supported, but a case of dm-error being buggy for zoned devices.
> 
> In other words the original exclusion in xfstests should have never
> gone in and whoever put it there should have fixed dm-error instead.

OK, let's have this patch, and see the response from others :)

Reviewed-by: Zorro Lang <zlang@redhat.com>

>
diff mbox series

Patch

diff --git a/common/rc b/common/rc
index 524ffa02a..f207d8ab2 100644
--- a/common/rc
+++ b/common/rc
@@ -2193,12 +2193,10 @@  _require_dm_target()
 		_notrun "This test requires dm $target support"
 	fi
 
-	# dm-error cannot handle the zone information
-	#
 	# dm-snapshot and dm-thin-pool cannot ensure sequential writes on
 	# the backing device
 	case $target in
-	error|snapshot|thin-pool)
+	snapshot|thin-pool)
 		_require_non_zoned_device ${SCRATCH_DEV}
 		;;
 	esac