linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Sjur Brændeland" <sjurbren@gmail.com>
Cc: "Rusty Russell" <rusty@rustcorp.com.au>,
	"Amit Shah" <amit.shah@redhat.com>,
	linux-kernel@vger.kernel.org, "Ohad Ben-Cohen" <ohad@wizery.com>,
	"Linus Walleij" <linus.walleij@linaro.org>,
	virtualization@lists.linux-foundation.org,
	"Sjur Brændeland" <sjur.brandeland@stericsson.com>
Subject: Re: [RFC 1/2] virtio_console: Add support for DMA memory allocation
Date: Wed, 5 Sep 2012 17:35:58 +0300	[thread overview]
Message-ID: <20120905143558.GB10925@redhat.com> (raw)
In-Reply-To: <CAJK669bUXHqaDUZDNZ9i85pRKENUMS_RXw4z7BsSq7Hiw=OOfg@mail.gmail.com>

On Wed, Sep 05, 2012 at 03:00:20PM +0200, Sjur Brændeland wrote:
> > The driver certainly shouldn't offer VIRTIO_CONSOLE_F_DMA_MEM if you
> > don't have DMA!
> 
> OK, so the feature table could be done like this:
> 
>  static unsigned int features[] = {
> 	VIRTIO_CONSOLE_F_SIZE,
> 	VIRTIO_CONSOLE_F_MULTIPORT,
> #if VIRTIO_CONSOLE_HAS_DMA
> 	VIRTIO_CONSOLE_F_DMA_MEM,
> #endif
> }
> 
> If the device then asks for VIRTIO_CONSOLE_F_DMA_MEM
> when DMA is not supported, virtio will do BUG_ON() from
> virtio_check_driver_offered_feature().
> 
> Is this acceptable or should we add a check in virtcons_probe()
> and let the probing fail instead?
> 
> E.g:
> 	/* Refuse to bind if F_DMA_MEM request cannot be met */
> 	if (!VIRTIO_CONSOLE_HAS_DMA &&
> 	    (vdev->config->get_features(vdev) & (1 << VIRTIO_CONSOLE_F_DMA_MEM))){
> 		dev_err(&vdev->dev,
> 			"DMA_MEM requested, but arch does not support DMA\n");
> 		err = -EINVAL;
> 		goto fail;
> 	}
> 
> Regards,
> Sjur

Failing probe would be cleaner. But there is still a problem:
old driver will happily bind to that device and then
fail to work, right?

virtio pci has revision id for this, but remoteproc doesn't
seem to have anything similar. Or did I miss it? If not -
we probably need to use a different
device id, and not a feature bit.

-- 
MST

  reply	other threads:[~2012-09-05 14:34 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-03 13:51 [RFC 1/2] virtio_console: Add support for DMA memory allocation sjur.brandeland
2012-09-03 13:51 ` [RFC 2/2] virtio_console: Add feature to disable console port sjur.brandeland
2012-09-03 14:30 ` [RFC 1/2] virtio_console: Add support for DMA memory allocation Michael S. Tsirkin
2012-09-03 14:57   ` Sjur Brændeland
2012-09-03 20:27     ` Michael S. Tsirkin
2012-09-04  6:07       ` Rusty Russell
2012-09-05 13:00         ` Sjur Brændeland
2012-09-05 14:35           ` Michael S. Tsirkin [this message]
2012-09-05 18:15             ` Sjur Brændeland
2012-09-05 19:16               ` Michael S. Tsirkin
2012-09-07  9:24                 ` Sjur Brændeland
2012-09-04 11:28       ` Sjur Brændeland
2012-09-04 13:50         ` Michael S. Tsirkin
2012-09-04 16:58           ` Sjur Brændeland
2012-09-04 18:55             ` Michael S. Tsirkin
2012-09-06  2:04               ` Rusty Russell
2012-09-06  5:27                 ` Michael S. Tsirkin
2012-09-10 22:11                   ` Michael S. Tsirkin
2012-09-12  6:24                     ` Rusty Russell
2012-09-07  8:35                 ` Sjur Brændeland
2012-09-16  9:44                 ` [PATCH repost] virtio: don't crash when device is buggy Michael S. Tsirkin
2012-09-17  4:27                   ` Rusty Russell
2012-09-18 22:24                     ` Michael S. Tsirkin
2012-09-19  4:10                       ` Rusty Russell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120905143558.GB10925@redhat.com \
    --to=mst@redhat.com \
    --cc=amit.shah@redhat.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ohad@wizery.com \
    --cc=rusty@rustcorp.com.au \
    --cc=sjur.brandeland@stericsson.com \
    --cc=sjurbren@gmail.com \
    --cc=virtualization@lists.linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).