qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Cornelia Huck <cohuck@redhat.com>
To: Pierre Morel <pmorel@linux.vnet.ibm.com>
Cc: Yi Min Zhao <zyimin@linux.vnet.ibm.com>,
	qemu-devel@nongnu.org, borntraeger@de.ibm.com,
	pasic@linux.vnet.ibm.com, alex.williamson@redhat.com,
	marcel@redhat.com
Subject: Re: [Qemu-devel] [PATCH 1/3] s390x/pci: fixup the code walking IOMMU tables
Date: Thu, 1 Feb 2018 13:15:00 +0100	[thread overview]
Message-ID: <20180201131500.637834fc.cohuck@redhat.com> (raw)
In-Reply-To: <76ce13fe-f5e1-8b31-7f62-58c9d6b0271a@linux.vnet.ibm.com>

On Thu, 1 Feb 2018 12:56:01 +0100
Pierre Morel <pmorel@linux.vnet.ibm.com> wrote:

> On 01/02/2018 12:28, Yi Min Zhao wrote:
> >
> >
> > 在 2018/1/31 下午6:58, Cornelia Huck 写道:  
> >> On Tue, 30 Jan 2018 10:47:13 +0100
> >> Yi Min Zhao <zyimin@linux.vnet.ibm.com> wrote:

> >>> diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c
> >>> index be449210d9..63fa06fb97 100644
> >>> --- a/hw/s390x/s390-pci-inst.c
> >>> +++ b/hw/s390x/s390-pci-inst.c
> >>> @@ -644,16 +644,6 @@ int rpcit_service_call(S390CPU *cpu, uint8_t 
> >>> r1, uint8_t r2, uintptr_t ra)
> >>>         while (start < end) {
> >>>           entry = imrc->translate(iommu_mr, start, IOMMU_NONE);
> >>> -
> >>> -        if (!entry.translated_addr) {
> >>> -            pbdev->state = ZPCI_FS_ERROR;
> >>> -            setcc(cpu, ZPCI_PCI_LS_ERR);
> >>> -            s390_set_status_code(env, r1, ZPCI_PCI_ST_INSUF_RES);
> >>> -            s390_pci_generate_error_event(ERR_EVENT_SERR, 
> >>> pbdev->fh, pbdev->fid,
> >>> -                                          start, ERR_EVENT_Q_BIT);
> >>> -            goto out;
> >>> -        }
> >>> -
> >>>           memory_region_notify_iommu(iommu_mr, entry);
> >>>           start += entry.addr_mask + 1;  
> >> You're now progressing even though you might have generated an error
> >> event. Is that what's intended?  
> > Yes, this is wrong. The right thing is only delete the code generating 
> > error event,
> > and keep the if check here in this patch.  
> 
> Hum, I do not see any problem with having a translated address being 0.
> 
> I would say it is one of the fixup ;) .

Isn't this in response to an instruction that is supposed to
register/... something? IOW, the caller of the instruction tried to
make something happen, but something did not work out as intended (and
doesn't the code stumble over this later? Or do we get an error then?)
Shouldn't the caller get an indication of that? Of course, this again
depends on what the architecture says :)

  reply	other threads:[~2018-02-01 12:15 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-30  9:47 [Qemu-devel] [PATCH 0/3] s390x/pci: fixup and optimize IOTLB code Yi Min Zhao
2018-01-30  9:47 ` [Qemu-devel] [PATCH 1/3] s390x/pci: fixup the code walking IOMMU tables Yi Min Zhao
2018-01-31  7:42   ` Thomas Huth
2018-01-31  8:46     ` Yi Min Zhao
2018-01-31 10:58   ` Cornelia Huck
2018-02-01 11:28     ` Yi Min Zhao
2018-02-01 11:56       ` Pierre Morel
2018-02-01 12:15         ` Cornelia Huck [this message]
2018-02-01 13:17           ` Pierre Morel
2018-01-30  9:47 ` [Qemu-devel] [PATCH 2/3] s390x/pci: fixup global refresh Yi Min Zhao
2018-01-31 11:35   ` Cornelia Huck
2018-02-01 12:55     ` Pierre Morel
2018-01-30  9:47 ` [Qemu-devel] [PATCH 3/3] s390x/pci: use the right pal and pba in reg_ioat() Yi Min Zhao
2018-01-31 11:44   ` Cornelia Huck
2018-02-01 11:33     ` Pierre Morel
2018-02-01 12:02       ` Cornelia Huck
2018-02-02  3:50         ` Yi Min Zhao

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=20180201131500.637834fc.cohuck@redhat.com \
    --to=cohuck@redhat.com \
    --cc=alex.williamson@redhat.com \
    --cc=borntraeger@de.ibm.com \
    --cc=marcel@redhat.com \
    --cc=pasic@linux.vnet.ibm.com \
    --cc=pmorel@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=zyimin@linux.vnet.ibm.com \
    /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).