Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755854AbbBHLDn (ORCPT ); Sun, 8 Feb 2015 06:03:43 -0500 Received: from mx1.redhat.com ([209.132.183.28]:49310 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753325AbbBHLDm (ORCPT ); Sun, 8 Feb 2015 06:03:42 -0500 Date: Sun, 8 Feb 2015 12:03:37 +0100 From: "Michael S. Tsirkin" To: Rusty Russell Cc: lkml , Amit Shah Subject: Re: [PATCH 5/5] virtio: don't require a config space on the console device. Message-ID: <20150208110336.GL3185@redhat.com> References: <1423199216-2094-1-git-send-email-rusty@rustcorp.com.au> <1423199216-2094-6-git-send-email-rusty@rustcorp.com.au> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1423199216-2094-6-git-send-email-rusty@rustcorp.com.au> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1607 Lines: 47 On Fri, Feb 06, 2015 at 03:36:56PM +1030, Rusty Russell wrote: > Strictly, it's only needed when we have features (size or multiport). > > Signed-off-by: Rusty Russell > --- > drivers/char/virtio_console.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/drivers/char/virtio_console.c b/drivers/char/virtio_console.c > index 26afb56a8073..8f182b0015b5 100644 > --- a/drivers/char/virtio_console.c > +++ b/drivers/char/virtio_console.c > @@ -1986,10 +1986,14 @@ static int virtcons_probe(struct virtio_device *vdev) > bool multiport; > bool early = early_put_chars != NULL; > > - if (!vdev->config->get) { > - dev_err(&vdev->dev, "%s failure: config access disabled\n", > - __func__); > - return -EINVAL; > + /* We only need a config space if features are offered */ > + if (virtio_has_feature(vdev, VIRTIO_CONSOLE_F_SIZE) > + || virtio_has_feature(vdev, VIRTIO_CONSOLE_F_MULTIPORT)) { > + if (!vdev->config->get) { I dislike nested ifs. How about if (!vdev->config->get && ( (virtio_has_feature(vdev, VIRTIO_CONSOLE_F_SIZE) || virtio_has_feature(vdev, VIRTIO_CONSOLE_F_MULTIPORT)) ? > + dev_err(&vdev->dev, "%s failure: config access disabled\n", > + __func__); > + return -EINVAL; > + } > } > > /* Ensure to read early_put_chars now */ > -- > 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/