]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
tools/kvm/9p: return EOPNOTSUPP if the handler is not implemented
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Tue, 28 Jun 2011 06:56:50 +0000 (12:26 +0530)
committerPekka Enberg <penberg@kernel.org>
Thu, 30 Jun 2011 07:45:46 +0000 (10:45 +0300)
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
tools/kvm/virtio/9p.c

index 2727a85d750973a445239d1214fcb5fdd1caeecb..69e534f81db40c52a5901c48cdee603cde8e0a6c 100644 (file)
@@ -609,6 +609,12 @@ static u8 virtio_p9_get_cmd(struct p9_pdu *pdu)
        return msg->cmd;
 }
 
+static void virtio_p9_eopnotsupp(struct p9_dev *p9dev,
+                                struct p9_pdu *pdu, u32 *outlen)
+{
+       return virtio_p9_error_reply(p9dev, pdu, EOPNOTSUPP, outlen);
+}
+
 static bool virtio_p9_do_io_request(struct kvm *kvm, struct p9_dev_job *job)
 {
        u8 cmd;
@@ -626,8 +632,7 @@ static bool virtio_p9_do_io_request(struct kvm *kvm, struct p9_dev_job *job)
 
        if (cmd >= ARRAY_SIZE(virtio_9p_handler) ||
            !virtio_9p_handler[cmd]) {
-               printf("Unsupported P9 message type: %u\n", cmd);
-
+               handler = virtio_p9_eopnotsupp;
        } else {
                handler = virtio_9p_handler[cmd];
                handler(p9dev, p9pdu, &len);