@@ -364,14 +364,19 @@ impl Lvs {
364
364
if let Some ( e) = args. enc_key {
365
365
match create_crypto_vbdev_on_base_bdev ( cname, & bdev, & e) {
366
366
Ok ( _) => { }
367
- Err ( _ ) => {
368
- let _ = parsed. destroy ( ) . await . map_err ( |_e | {
367
+ Err ( berr ) => {
368
+ let _ = parsed. destroy ( ) . await . map_err ( |e | {
369
369
error ! (
370
- "failed to delete base_bdev {bdev} after failed crypto vbdev creation"
370
+ "failed to delete base_bdev {bdev} after failed crypto vbdev creation. {e:?} "
371
371
) ;
372
372
} ) ;
373
373
return Err ( LvsError :: PoolCreate {
374
- source : BsError :: LvsCryptoVbdev { } ,
374
+ source : BsError :: LvsCryptoVbdev {
375
+ source : match berr {
376
+ BdevError :: CreateBdevFailed { source, .. } => source,
377
+ _ => Errno :: EINVAL ,
378
+ } ,
379
+ } ,
375
380
name : args. name . clone ( ) ,
376
381
} ) ;
377
382
}
@@ -588,14 +593,19 @@ impl Lvs {
588
593
if let Some ( ref e) = args. enc_key {
589
594
match create_crypto_vbdev_on_base_bdev ( cname, & bdev_name, e) {
590
595
Ok ( _) => { }
591
- Err ( _ ) => {
592
- let _ = bdev_ops. destroy ( ) . await . map_err ( |_e | {
596
+ Err ( berr ) => {
597
+ let _ = bdev_ops. destroy ( ) . await . map_err ( |e | {
593
598
error ! (
594
- "failed to delete base_bdev {bdev_name} after failed crypto vbdev creation"
599
+ "failed to delete base_bdev {bdev_name} after failed crypto vbdev creation. {e:?} "
595
600
) ;
596
601
} ) ;
597
602
return Err ( LvsError :: PoolCreate {
598
- source : BsError :: LvsCryptoVbdev { } ,
603
+ source : BsError :: LvsCryptoVbdev {
604
+ source : match berr {
605
+ BdevError :: CreateBdevFailed { source, .. } => source,
606
+ _ => Errno :: EINVAL ,
607
+ } ,
608
+ } ,
599
609
name : args. name . clone ( ) ,
600
610
} ) ;
601
611
}
0 commit comments