On 19 Jun 2024, at 13:39, cel@xxxxxxxxxx wrote: > From: Chuck Lever <chuck.lever@xxxxxxxxxx> > > Since f931d8374cad ("nfs/blocklayout: refactor block device > opening"), an error is reported when no multi-path device is > found. But this isn't a fatal error if the subsequent device open > is successful. On systems without multi-path devices, this message > always appears whether there is a problem or not. > > Instead, generate less system journal noise by reporting an error > only when both open attempts fail. The new error message is more > actionable since it indicates that there is a real configuration > issue to be addressed. > > Signed-off-by: Chuck Lever <chuck.lever@xxxxxxxxxx> > --- > fs/nfs/blocklayout/dev.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/fs/nfs/blocklayout/dev.c b/fs/nfs/blocklayout/dev.c > index b3828e5ee079..356bc967fb5d 100644 > --- a/fs/nfs/blocklayout/dev.c > +++ b/fs/nfs/blocklayout/dev.c > @@ -318,7 +318,7 @@ bl_open_path(struct pnfs_block_volume *v, const char *prefix) > bdev_file = bdev_file_open_by_path(devname, BLK_OPEN_READ | BLK_OPEN_WRITE, > NULL, NULL); > if (IS_ERR(bdev_file)) { > - pr_warn("pNFS: failed to open device %s (%ld)\n", > + dprintk("failed to open device %s (%ld)\n", > devname, PTR_ERR(bdev_file)); > } > > @@ -348,8 +348,11 @@ bl_parse_scsi(struct nfs_server *server, struct pnfs_block_dev *d, > bdev_file = bl_open_path(v, "dm-uuid-mpath-0x"); > if (IS_ERR(bdev_file)) > bdev_file = bl_open_path(v, "wwn-0x"); > - if (IS_ERR(bdev_file)) > + if (IS_ERR(bdev_file)) { > + pr_err("pNFS: no device found for volume %*phN\n", pr_warn is more appropriate here because there can be clients mounting that that don't have block devices for the filesystem. That's not necessarily a configuration problem. Ben > + v->scsi.designator_len, v->scsi.designator); > return PTR_ERR(bdev_file); > + } > d->bdev_file = bdev_file; > bdev = file_bdev(bdev_file); > > -- > 2.45.1