[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH] [xen-block] Return BLKIF_RSP_EOPNOTSUPP for unknown operation
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@xxxxxxxxx> --- 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
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |