From: Cornelia Huck <cohuck@redhat.com>
To: Michael Mueller <mimu@linux.ibm.com>
Cc: KVM Mailing List <kvm@vger.kernel.org>,
Linux-S390 Mailing List <linux-s390@vger.kernel.org>,
Sebastian Ott <sebott@linux.ibm.com>,
Heiko Carstens <heiko.carstens@de.ibm.com>,
Halil Pasic <pasic@linux.ibm.com>,
virtualization@lists.linux-foundation.org,
"Michael S . Tsirkin" <mst@redhat.com>,
Christoph Hellwig <hch@infradead.org>,
Thomas Huth <thuth@redhat.com>,
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>,
Pierre Morel <pmorel@linux.ibm.com>
Subject: Re: [PATCH v3 3/8] s390/cio: add basic protected virtualization support
Date: Mon, 3 Jun 2019 15:42:30 +0200 [thread overview]
Message-ID: <20190603154230.0a4bfaf3.cohuck@redhat.com> (raw)
In-Reply-To: <18348fed-07d1-a11f-215c-f09ac94e9fbf@linux.ibm.com>
On Mon, 3 Jun 2019 14:45:03 +0200
Michael Mueller <mimu@linux.ibm.com> wrote:
> On 03.06.19 14:06, Cornelia Huck wrote:
> > On Wed, 29 May 2019 14:26:52 +0200
> > Michael Mueller <mimu@linux.ibm.com> wrote:
> >> @@ -1593,20 +1625,31 @@ struct ccw_device * __init ccw_device_create_console(struct ccw_driver *drv)
> >> return ERR_CAST(sch);
> >>
> >> io_priv = kzalloc(sizeof(*io_priv), GFP_KERNEL | GFP_DMA);
> >> - if (!io_priv) {
> >> - put_device(&sch->dev);
> >> - return ERR_PTR(-ENOMEM);
> >> - }
> >> + if (!io_priv)
> >> + goto err_priv;
> >> + io_priv->dma_area = dma_alloc_coherent(&sch->dev,
> >> + sizeof(*io_priv->dma_area),
> >> + &io_priv->dma_area_dma, GFP_KERNEL);
> >> + if (!io_priv->dma_area)
> >> + goto err_dma_area;
> >> set_io_private(sch, io_priv);
> >> cdev = io_subchannel_create_ccwdev(sch);
> >> if (IS_ERR(cdev)) {
> >> put_device(&sch->dev);
> >> + dma_free_coherent(&sch->dev, sizeof(*io_priv->dma_area),
> >> + io_priv->dma_area, io_priv->dma_area_dma);
> >> kfree(io_priv);
> >
> > <pre-existing, not introduced by this patch>
> > Shouldn't that branch do set_io_private(sch, NULL)? Not sure if any
> > code would make use of it, but it's probably better to clean out
> > references to freed objects.
>
> Added behind kfree(). I hope nobody asks for a separate patch. ;)
I would probably have added it just before the kfree, but I'm not
asking for a separate patch ;)
>
> > </pre-existing, not introduced by this patch>
> >
> >> return cdev;
> >> }
> >> cdev->drv = drv;
> >> ccw_device_set_int_class(cdev);
> >> return cdev;
> >> +
> >> +err_dma_area:
> >> + kfree(io_priv);
> >> +err_priv:
> >> + put_device(&sch->dev);
> >> + return ERR_PTR(-ENOMEM);
> >> }
> >>
> >> void __init ccw_device_destroy_console(struct ccw_device *cdev)
WARNING: multiple messages have this Message-ID (diff)
From: Cornelia Huck <cohuck@redhat.com>
To: Michael Mueller <mimu@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>,
Linux-S390 Mailing List <linux-s390@vger.kernel.org>,
Thomas Huth <thuth@redhat.com>,
Claudio Imbrenda <imbrenda@linux.ibm.com>,
KVM Mailing List <kvm@vger.kernel.org>,
Sebastian Ott <sebott@linux.ibm.com>,
"Michael S . Tsirkin" <mst@redhat.com>,
Pierre Morel <pmorel@linux.ibm.com>,
Farhan Ali <alifm@linux.ibm.com>,
Heiko Carstens <heiko.carstens@de.ibm.com>,
Eric Farman <farman@linux.ibm.com>,
virtualization@lists.linux-foundation.org,
Halil Pasic <pasic@linux.ibm.com>,
Christian Borntraeger <borntraeger@de.ibm.com>,
Christoph Hellwig <hch@infradead.org>,
Viktor Mihajlovski <mihajlov@linux.ibm.com>,
Janosch Frank <frankja@linux.ibm.com>
Subject: Re: [PATCH v3 3/8] s390/cio: add basic protected virtualization support
Date: Mon, 3 Jun 2019 15:42:30 +0200 [thread overview]
Message-ID: <20190603154230.0a4bfaf3.cohuck@redhat.com> (raw)
In-Reply-To: <18348fed-07d1-a11f-215c-f09ac94e9fbf@linux.ibm.com>
On Mon, 3 Jun 2019 14:45:03 +0200
Michael Mueller <mimu@linux.ibm.com> wrote:
> On 03.06.19 14:06, Cornelia Huck wrote:
> > On Wed, 29 May 2019 14:26:52 +0200
> > Michael Mueller <mimu@linux.ibm.com> wrote:
> >> @@ -1593,20 +1625,31 @@ struct ccw_device * __init ccw_device_create_console(struct ccw_driver *drv)
> >> return ERR_CAST(sch);
> >>
> >> io_priv = kzalloc(sizeof(*io_priv), GFP_KERNEL | GFP_DMA);
> >> - if (!io_priv) {
> >> - put_device(&sch->dev);
> >> - return ERR_PTR(-ENOMEM);
> >> - }
> >> + if (!io_priv)
> >> + goto err_priv;
> >> + io_priv->dma_area = dma_alloc_coherent(&sch->dev,
> >> + sizeof(*io_priv->dma_area),
> >> + &io_priv->dma_area_dma, GFP_KERNEL);
> >> + if (!io_priv->dma_area)
> >> + goto err_dma_area;
> >> set_io_private(sch, io_priv);
> >> cdev = io_subchannel_create_ccwdev(sch);
> >> if (IS_ERR(cdev)) {
> >> put_device(&sch->dev);
> >> + dma_free_coherent(&sch->dev, sizeof(*io_priv->dma_area),
> >> + io_priv->dma_area, io_priv->dma_area_dma);
> >> kfree(io_priv);
> >
> > <pre-existing, not introduced by this patch>
> > Shouldn't that branch do set_io_private(sch, NULL)? Not sure if any
> > code would make use of it, but it's probably better to clean out
> > references to freed objects.
>
> Added behind kfree(). I hope nobody asks for a separate patch. ;)
I would probably have added it just before the kfree, but I'm not
asking for a separate patch ;)
>
> > </pre-existing, not introduced by this patch>
> >
> >> return cdev;
> >> }
> >> cdev->drv = drv;
> >> ccw_device_set_int_class(cdev);
> >> return cdev;
> >> +
> >> +err_dma_area:
> >> + kfree(io_priv);
> >> +err_priv:
> >> + put_device(&sch->dev);
> >> + return ERR_PTR(-ENOMEM);
> >> }
> >>
> >> void __init ccw_device_destroy_console(struct ccw_device *cdev)
next prev parent reply other threads:[~2019-06-03 13:42 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-29 12:26 [PATCH v3 0/8] s390: virtio: support protected virtualization Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-05-29 12:26 ` [PATCH v3 1/8] s390/mm: force swiotlb for " Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-05-29 12:26 ` [PATCH v3 2/8] s390/cio: introduce DMA pools to cio Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-06-03 11:37 ` Cornelia Huck
2019-06-03 11:37 ` Cornelia Huck
2019-06-03 12:09 ` Michael Mueller
2019-06-03 12:09 ` Michael Mueller
2019-06-03 12:57 ` Halil Pasic
2019-06-03 12:57 ` Halil Pasic
2019-06-03 13:34 ` Cornelia Huck
2019-06-03 13:34 ` Cornelia Huck
2019-06-03 13:43 ` Michael Mueller
2019-06-03 13:43 ` Michael Mueller
2019-06-03 14:04 ` Halil Pasic
2019-06-03 14:04 ` Halil Pasic
2019-06-03 14:22 ` Halil Pasic
2019-06-03 14:22 ` Halil Pasic
2019-06-03 12:47 ` Halil Pasic
2019-06-03 12:47 ` Halil Pasic
2019-06-03 13:40 ` Cornelia Huck
2019-06-03 13:40 ` Cornelia Huck
2019-05-29 12:26 ` [PATCH v3 3/8] s390/cio: add basic protected virtualization support Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-06-03 12:06 ` Cornelia Huck
2019-06-03 12:06 ` Cornelia Huck
2019-06-03 12:45 ` Michael Mueller
2019-06-03 12:45 ` Michael Mueller
2019-06-03 13:42 ` Cornelia Huck [this message]
2019-06-03 13:42 ` Cornelia Huck
2019-06-03 13:52 ` Michael Mueller
2019-06-03 13:52 ` Michael Mueller
2019-05-29 12:26 ` [PATCH v3 4/8] s390/airq: use DMA memory for adapter interrupts Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-06-03 15:27 ` Cornelia Huck
2019-06-03 15:27 ` Cornelia Huck
2019-06-04 13:22 ` Halil Pasic
2019-06-04 13:22 ` Halil Pasic
2019-06-04 14:51 ` Cornelia Huck
2019-06-04 14:51 ` Cornelia Huck
2019-06-04 15:06 ` Halil Pasic
2019-06-04 15:06 ` Halil Pasic
2019-05-29 12:26 ` [PATCH v3 5/8] virtio/s390: use cacheline aligned airq bit vectors Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-06-03 9:10 ` Christian Borntraeger
2019-06-03 9:10 ` Christian Borntraeger
2019-06-03 15:40 ` Cornelia Huck
2019-06-03 15:40 ` Cornelia Huck
2019-05-29 12:26 ` [PATCH v3 6/8] virtio/s390: add indirection to indicators access Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-06-03 15:55 ` Cornelia Huck
2019-06-03 15:55 ` Cornelia Huck
2019-06-03 17:55 ` Halil Pasic
2019-06-03 17:55 ` Halil Pasic
2019-05-29 12:26 ` [PATCH v3 7/8] virtio/s390: use DMA memory for ccw I/O and classic notifiers Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-06-03 16:17 ` Cornelia Huck
2019-06-03 16:17 ` Cornelia Huck
2019-06-04 13:08 ` Halil Pasic
2019-06-04 13:08 ` Halil Pasic
2019-06-04 13:36 ` Cornelia Huck
2019-06-04 13:36 ` Cornelia Huck
2019-06-04 14:29 ` Halil Pasic
2019-06-04 14:29 ` Halil Pasic
2019-05-29 12:26 ` [PATCH v3 8/8] virtio/s390: make airq summary indicators DMA Michael Mueller
2019-05-29 12:26 ` Michael Mueller
2019-06-03 16:03 ` Cornelia Huck
2019-06-03 16:03 ` Cornelia Huck
2019-06-03 17:54 ` Halil Pasic
2019-06-03 17:54 ` Halil Pasic
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=20190603154230.0a4bfaf3.cohuck@redhat.com \
--to=cohuck@redhat.com \
--cc=alifm@linux.ibm.com \
--cc=borntraeger@de.ibm.com \
--cc=farman@linux.ibm.com \
--cc=frankja@linux.ibm.com \
--cc=gor@linux.ibm.com \
--cc=hch@infradead.org \
--cc=heiko.carstens@de.ibm.com \
--cc=imbrenda@linux.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=mihajlov@linux.ibm.com \
--cc=mimu@linux.ibm.com \
--cc=mst@redhat.com \
--cc=pasic@linux.ibm.com \
--cc=pmorel@linux.ibm.com \
--cc=sebott@linux.ibm.com \
--cc=thuth@redhat.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.