[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231213135003.367397-13-dhowells@redhat.com>
Date: Wed, 13 Dec 2023 13:49:34 +0000
From: David Howells <dhowells@...hat.com>
To: Marc Dionne <marc.dionne@...istor.com>
Cc: David Howells <dhowells@...hat.com>, linux-afs@...ts.infradead.org,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH v2 12/40] afs: Handle the VIO and UAEIO aborts explicitly
When processing the result of a call, handle the VIO and UAEIO abort
specifically rather than leaving it to a default case. Rather than
erroring out unconditionally, see if there's another server if the volume
has more than one server available, otherwise return -EREMOTEIO.
Signed-off-by: David Howells <dhowells@...hat.com>
cc: Marc Dionne <marc.dionne@...istor.com>
cc: linux-afs@...ts.infradead.org
---
Notes:
Changes
=======
ver #2)
- Treat UAEIO as VIO too.
fs/afs/rotate.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/fs/afs/rotate.c b/fs/afs/rotate.c
index 13ec8ffa911a..0829933f4d9a 100644
--- a/fs/afs/rotate.c
+++ b/fs/afs/rotate.c
@@ -330,6 +330,13 @@ bool afs_select_fileserver(struct afs_operation *op)
goto restart_from_beginning;
+ case UAEIO:
+ case VIO:
+ op->error = -EREMOTEIO;
+ if (op->volume->type != AFSVL_RWVOL)
+ goto next_server;
+ goto failed;
+
case VDISKFULL:
case UAENOSPC:
/* The partition is full. Only applies to RWVOLs.
Powered by blists - more mailing lists