All of lore.kernel.org
 help / color / mirror / Atom feed
From: Halil Pasic <pasic@linux.ibm.com>
To: Cornelia Huck <cohuck@redhat.com>
Cc: kvm@vger.kernel.org, linux-s390@vger.kernel.org,
	Martin Schwidefsky <schwidefsky@de.ibm.com>,
	Sebastian Ott <sebott@linux.ibm.com>,
	virtualization@lists.linux-foundation.org,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	Viktor Mihajlovski <mihajlov@linux.ibm.com>,
	Vasily Gorbik <gor@linux.ibm.com>,
	Janosch Frank <frankja@linux.ibm.com>,
	Claudio Imbrenda <imbrenda@linux.ibm.com>,
	Farhan Ali <alifm@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>
Subject: Re: [RFC PATCH 02/12] virtio/s390: DMA support for virtio-ccw
Date: Tue, 9 Apr 2019 15:23:13 +0200	[thread overview]
Message-ID: <20190409152313.0296e8f1@oc2783563651> (raw)
In-Reply-To: <20190409150120.61abad60.cohuck@redhat.com>

On Tue, 9 Apr 2019 15:01:20 +0200
Cornelia Huck <cohuck@redhat.com> wrote:

> On Tue, 9 Apr 2019 13:29:27 +0200
> Halil Pasic <pasic@linux.ibm.com> wrote:
> 
> > On Tue, 9 Apr 2019 11:57:43 +0200
> > Cornelia Huck <cohuck@redhat.com> wrote:
> > 
> > > On Fri,  5 Apr 2019 01:16:12 +0200
> > > Halil Pasic <pasic@linux.ibm.com> wrote:
> > >   
> > > > Currently we have a problem if a virtio-ccw device has
> > > > VIRTIO_F_IOMMU_PLATFORM.   
> > > 
> > > Can you please describe what the actual problem is?
> > >   
> > 
> > Without this patch:

[..]

> > virtio_ccw 0.0.0300: no vq
> > virtio_blk: probe of virtio1 failed with error -12
> > virtio_blk: probe of virtio3 failed with error -12
> > 
> > Means virtio devices broken.
> > 
> > Should I
> > s/we have a problem if a virtio-ccw device/virtio-ccw devices do not work if the device/
> > ?
> 
> Much better :)
> 
> (That is, this happens if we switch on the feature bit in the
> hypervisor, right?)
> 

Yes, that is with qemu -device virtio-blk-ccw,iommu_platform=on (and no
PV whatsoever).

I will change the commit message accordingly. 

[..]

> > > > @@ -1255,6 +1254,18 @@ static int virtio_ccw_online(struct ccw_device *cdev)
> > > >  		ret = -ENOMEM;
> > > >  		goto out_free;
> > > >  	}
> > > > +	vcdev->vdev.dev.parent = &cdev->dev;  
> > > 
> > > That one makes sense, pci and mmio are doing that as well.
> > >   
> > > > +	cdev->dev.dma_mask = &vcdev->dma_mask;  
> > > 
> > > That one feels a bit weird. Will this change in one of the follow-on
> > > patches? (Have not yet looked at the whole series.)  
> > 
> > I don't thinks so. Do you mean this should happen within the cio code?
> > I think I started out with the idea to keep the scope as narrow as
> > possible. Do you have any suggestions?
> 
> From what I see, you set the mask from the virtio-ccw side, then
> propagate it up to the general ccw_device, and then the generic virtio
> code will fetch it from the ccw_device.

Right! For some reason dma_mask is a pointer. And I need virtio core to
use a sane value for virtio_ccw devices.

> Don't you potentially need
> something for other ccw_devices in that protected hipervisor case as
> well (e.g for 3270)?


Maybe, maybe not. The first stage is likely to be virito only. I would
prefer sorting out stuff like 3270 as the need arises. Also see my
response to patch 4 (Message-Id: <20190409141114.7dcce94a@oc2783563651>).

> 
> > 
> > >   
> > > > +
> > > > +	ret = dma_set_mask_and_coherent(&cdev->dev,
> > > > DMA_BIT_MASK(64));
> > > > +	if (ret)
> > > > +		ret = dma_set_mask_and_coherent(&cdev->dev,
> > > > +
> > > > DMA_BIT_MASK(32));
> > > > +	if (ret) {
> > > > +		dev_warn(&cdev->dev, "Failed to enable 64-bit
> > > > or 32-bit DMA.  Trying to continue, but this might not
> > > > work.\n");  
> > > 
> > > This does not look like you'd try to continue?
> > >   
> > 
> > I remember now. First I did continue, then I changed this to fail
> > hard so I can not ignore any such problems while smoke testing ('I
> > don't always check the kernel messages'), but kept the old message.
> > This basically should not fail anyway, otherwise we have a problem
> > AFAIU.
> > 
> > By the way virtio-pci tries to continue indeed, and this is also
> > where the wording comes from ;).
> > 
> > What would you prefer? Try to continue or fail right away?
> 
> If it does not have a chance of working properly in the general case,
> I'd fail.
> 

Agreed! I will make it so. Would dropping '  Trying to continue, but
this might not work.' from the warning message work for you?

I could also drop the attempt to set a 32 bit mask if you agree. Do you?

Many thanks for your review!

Regards,
Halil

  reply	other threads:[~2019-04-09 13:23 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-04 23:16 [RFC PATCH 00/12] s390: virtio: support protected virtualization Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 01/12] virtio/s390: use vring_create_virtqueue Halil Pasic
2019-04-08 11:01   ` Cornelia Huck
2019-04-08 11:01     ` Cornelia Huck
2019-04-08 12:37     ` Michael S. Tsirkin
2019-04-08 12:37       ` Michael S. Tsirkin
2019-04-08 13:20     ` Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 02/12] virtio/s390: DMA support for virtio-ccw Halil Pasic
2019-04-09  9:57   ` Cornelia Huck
2019-04-09  9:57     ` Cornelia Huck
2019-04-09 11:29     ` Halil Pasic
2019-04-09 13:01       ` Cornelia Huck
2019-04-09 13:01         ` Cornelia Huck
2019-04-09 13:23         ` Halil Pasic [this message]
2019-04-09 15:47           ` Cornelia Huck
2019-04-09 15:47             ` Cornelia Huck
2019-04-04 23:16 ` [RFC PATCH 03/12] s390/mm: force swiotlb for protected virtualization Halil Pasic
2019-04-09 10:16   ` Cornelia Huck
2019-04-09 10:16     ` Cornelia Huck
2019-04-09 10:54     ` Halil Pasic
2019-04-09 17:18       ` Cornelia Huck
2019-04-09 17:18         ` Cornelia Huck
2019-04-09 12:22   ` Christoph Hellwig
2019-04-09 12:22     ` Christoph Hellwig
2019-04-09 12:39     ` Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 04/12] s390/cio: introduce cio DMA pool Halil Pasic
2019-04-09 10:44   ` Cornelia Huck
2019-04-09 10:44     ` Cornelia Huck
2019-04-09 12:11     ` Halil Pasic
2019-04-09 17:14       ` Cornelia Huck
2019-04-09 17:14         ` Cornelia Huck
2019-04-10 15:31         ` Halil Pasic
2019-04-10 16:07           ` Cornelia Huck
2019-04-10 16:07             ` Cornelia Huck
2019-04-10 16:52             ` Halil Pasic
2019-04-11 18:25   ` Sebastian Ott
2019-04-11 18:25     ` Sebastian Ott
2019-04-12 11:20     ` Halil Pasic
2019-04-12 12:12       ` Sebastian Ott
2019-04-12 12:12         ` Sebastian Ott
2019-04-12 15:30         ` Halil Pasic
2019-04-16 12:50           ` Sebastian Ott
2019-04-16 12:50             ` Sebastian Ott
2019-04-16 13:31             ` Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 05/12] s390/cio: add protected virtualization support to cio Halil Pasic
2019-04-09 17:55   ` Cornelia Huck
2019-04-09 17:55     ` Cornelia Huck
2019-04-10  0:10     ` Halil Pasic
2019-04-10  8:25       ` Cornelia Huck
2019-04-10  8:25         ` Cornelia Huck
2019-04-10 13:02         ` Halil Pasic
2019-04-10 16:16           ` Cornelia Huck
2019-04-10 16:16             ` Cornelia Huck
2019-04-11 14:15   ` Sebastian Ott
2019-04-11 14:15     ` Sebastian Ott
2019-04-12 11:29     ` Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 06/12] s390/airq: use DMA memory for adapter interrupts Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 07/12] virtio/s390: use DMA memory for ccw I/O Halil Pasic
2019-04-10  8:42   ` Cornelia Huck
2019-04-10  8:42     ` Cornelia Huck
2019-04-10 14:42     ` Halil Pasic
2019-04-10 16:21       ` Cornelia Huck
2019-04-10 16:21         ` Cornelia Huck
2019-04-04 23:16 ` [RFC PATCH 08/12] virtio/s390: add indirection to indicators access Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 09/12] virtio/s390: use DMA memory for notifiers Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 10/12] virtio/s390: consolidate DMA allocations Halil Pasic
2019-04-10  8:46   ` Cornelia Huck
2019-04-10  8:46     ` Cornelia Huck
2019-04-10 15:12     ` Halil Pasic
2019-04-10 16:36       ` Cornelia Huck
2019-04-10 16:36         ` Cornelia Huck
2019-04-10 17:48         ` Halil Pasic
2019-04-11  9:24           ` Cornelia Huck
2019-04-11  9:24             ` Cornelia Huck
2019-04-11 10:10             ` Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 11/12] virtio/s390: use the cio DMA pool Halil Pasic
2019-04-04 23:16 ` [RFC PATCH 12/12] virtio/s390: make airq summary indicators DMA Halil Pasic
2019-04-10  9:20 ` [RFC PATCH 00/12] s390: virtio: support protected virtualization Cornelia Huck
2019-04-10  9:20   ` Cornelia Huck
2019-04-10 15:57   ` Halil Pasic
2019-04-10 16:24     ` Cornelia Huck
2019-04-10 16:24       ` Cornelia Huck
2019-04-12 13:47 ` David Hildenbrand
2019-04-12 13:47   ` David Hildenbrand
2019-04-16 11:10   ` Halil Pasic
2019-04-16 11:50     ` David Hildenbrand
2019-04-16 11:50       ` David Hildenbrand

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=20190409152313.0296e8f1@oc2783563651 \
    --to=pasic@linux.ibm.com \
    --cc=alifm@linux.ibm.com \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=farman@linux.ibm.com \
    --cc=frankja@linux.ibm.com \
    --cc=gor@linux.ibm.com \
    --cc=imbrenda@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=mihajlov@linux.ibm.com \
    --cc=schwidefsky@de.ibm.com \
    --cc=sebott@linux.ibm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.