qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] [xen-block] Return BLKIF_RSP_EOPNOTSUPP for unknown operation
@ 2025-08-27 16:08 Mark Syms via
  2025-08-28  7:39 ` Roger Pau Monné
  0 siblings, 1 reply; 3+ messages in thread
From: Mark Syms via @ 2025-08-27 16:08 UTC (permalink / raw)
  To: qemu-devel, xen-devel; +Cc: sstabellini, anthony, paul, Mark Syms

Returning BLKIF_RSP_ERROR if an operation is not supoprted does not
allow the frontend to exercise any discretion on how to handle the
response and may lead to an operating system crash. As different
backends may support different feature sets and we might, during a
migration, switch backends, an in-flight request might be issued (or
reissued) which is then not supported by this backend.

Signed-off-by: Mark Syms <mark.syms@cloud.com>
---
 hw/block/dataplane/xen-block.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/hw/block/dataplane/xen-block.c b/hw/block/dataplane/xen-block.c
index 48c2e315f3..32cf919a97 100644
--- a/hw/block/dataplane/xen-block.c
+++ b/hw/block/dataplane/xen-block.c
@@ -167,7 +167,8 @@ static int xen_block_parse_request(XenBlockRequest *request)
         return 0;
     default:
         error_report("error: unknown operation (%d)", request->req.operation);
-        goto err;
+        request->status = BLKIF_RSP_EOPNOTSUPP;
+        return -1;
     };
 
     if (request->req.operation != BLKIF_OP_READ &&
-- 
2.50.1



^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-08-28  9:29 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-27 16:08 [PATCH] [xen-block] Return BLKIF_RSP_EOPNOTSUPP for unknown operation Mark Syms via
2025-08-28  7:39 ` Roger Pau Monné
2025-08-28  9:28   ` Mark Syms

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).