diff --git a/fs/afs/cell.c b/fs/afs/cell.c index 296b489861a9..1522fadd8d2d 100644 --- a/fs/afs/cell.c +++ b/fs/afs/cell.c @@ -404,10 +404,12 @@ static int afs_update_cell(struct afs_cell *cell) if (ret == -ENOMEM) goto out_wake; - ret = -ENOMEM; vllist = afs_alloc_vlserver_list(0); - if (!vllist) + if (!vllist) { + if (ret >= 0) + ret = -ENOMEM; goto out_wake; + } switch (ret) { case -ENODATA: