From: Igor Mammedov <imammedo@redhat.com>
To: Laszlo Ersek <lersek@redhat.com>
Cc: "peter.maydell@linaro.org" <peter.maydell@linaro.org>,
"shannon.zhaosl@gmail.com" <shannon.zhaosl@gmail.com>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
Shameerali Kolothum Thodi <shameerali.kolothum.thodi@huawei.com>,
Linuxarm <linuxarm@huawei.com>,
Auger Eric <eric.auger@redhat.com>,
"qemu-arm@nongnu.org" <qemu-arm@nongnu.org>,
"Leif Lindholm \(Linaro address\)" <leif.lindholm@linaro.org>,
"xuwei \(O\)" <xuwei5@huawei.com>
Subject: Re: [Qemu-arm] [RFC PATCH 0/4] ARM virt: ACPI memory hotplug support
Date: Fri, 1 Mar 2019 18:39:24 +0100 [thread overview]
Message-ID: <20190301183924.5fdd2a0f@redhat.com> (raw)
In-Reply-To: <f5d04d6d-6e99-ba52-c903-6f59d83eff6c@redhat.com>
On Fri, 1 Mar 2019 14:49:45 +0100
Laszlo Ersek <lersek@redhat.com> wrote:
> On 02/28/19 15:02, Shameerali Kolothum Thodi wrote:
>
> > Ah..I missed the fact that, firmware indeed sees an update in the blob len here
> > (rounded or not) after reboot. So don’t think x86 has the same issue and padding
> > is not the right solution as Igor explained in his reply.
> >
> > I will try to debug this further. Any pointers welcome.
>
> How about this.
>
> (1) The firmware looks up the fw_cfg file called "etc/table-loader" in
> the fw_cfg file directory (identified by constant selector key 0x0019,
> FW_CFG_FILE_DIR).
>
> (2) The directory entry, once found, tells the firmware two things
> simultaneously. The selector key, and the size of the blob.
>
> (3) The firmware selects the selector key from step (2).
>
> (4) QEMU regenerates the ACPI payload (as a select callback).
>
> (5) The firmware reads the number of bytes from the fw_cfg blob that it
> learned in step (2).
>
> Here's the problem. As long as QEMU used to perform step (4) only for
> the purpose of refreshing PCI resources in the ACPI payload, step (4)
> wouldn't *resize* the blob.
>
> However, if step (4) enlarges the blob, then the byte count that step
> (5) uses -- from step (2) -- for reading, is obsolete.
I've thought that was a problem with IO based fw_cfg, as reading size/content
were separates steps and that it was solved by DMA based fw_cfg file read.
>
> Thanks
> Laszlo
WARNING: multiple messages have this Message-ID (diff)
From: Igor Mammedov <imammedo@redhat.com>
To: Laszlo Ersek <lersek@redhat.com>
Cc: Shameerali Kolothum Thodi <shameerali.kolothum.thodi@huawei.com>,
Auger Eric <eric.auger@redhat.com>,
"shannon.zhaosl@gmail.com" <shannon.zhaosl@gmail.com>,
"peter.maydell@linaro.org" <peter.maydell@linaro.org>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
"qemu-arm@nongnu.org" <qemu-arm@nongnu.org>,
"xuwei (O)" <xuwei5@huawei.com>, Linuxarm <linuxarm@huawei.com>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
"Leif Lindholm (Linaro address)" <leif.lindholm@linaro.org>
Subject: Re: [Qemu-devel] [RFC PATCH 0/4] ARM virt: ACPI memory hotplug support
Date: Fri, 1 Mar 2019 18:39:24 +0100 [thread overview]
Message-ID: <20190301183924.5fdd2a0f@redhat.com> (raw)
In-Reply-To: <f5d04d6d-6e99-ba52-c903-6f59d83eff6c@redhat.com>
On Fri, 1 Mar 2019 14:49:45 +0100
Laszlo Ersek <lersek@redhat.com> wrote:
> On 02/28/19 15:02, Shameerali Kolothum Thodi wrote:
>
> > Ah..I missed the fact that, firmware indeed sees an update in the blob len here
> > (rounded or not) after reboot. So don’t think x86 has the same issue and padding
> > is not the right solution as Igor explained in his reply.
> >
> > I will try to debug this further. Any pointers welcome.
>
> How about this.
>
> (1) The firmware looks up the fw_cfg file called "etc/table-loader" in
> the fw_cfg file directory (identified by constant selector key 0x0019,
> FW_CFG_FILE_DIR).
>
> (2) The directory entry, once found, tells the firmware two things
> simultaneously. The selector key, and the size of the blob.
>
> (3) The firmware selects the selector key from step (2).
>
> (4) QEMU regenerates the ACPI payload (as a select callback).
>
> (5) The firmware reads the number of bytes from the fw_cfg blob that it
> learned in step (2).
>
> Here's the problem. As long as QEMU used to perform step (4) only for
> the purpose of refreshing PCI resources in the ACPI payload, step (4)
> wouldn't *resize* the blob.
>
> However, if step (4) enlarges the blob, then the byte count that step
> (5) uses -- from step (2) -- for reading, is obsolete.
I've thought that was a problem with IO based fw_cfg, as reading size/content
were separates steps and that it was solved by DMA based fw_cfg file read.
>
> Thanks
> Laszlo
next prev parent reply other threads:[~2019-03-01 17:40 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-28 11:05 [Qemu-arm] [RFC PATCH 0/4] ARM virt: ACPI memory hotplug support Shameer Kolothum
2019-01-28 11:05 ` [Qemu-devel] " Shameer Kolothum
2019-01-28 11:05 ` [Qemu-arm] [RFC PATCH 1/4] hw:acpi: Make ACPI IO address space configurable Shameer Kolothum
2019-01-28 11:05 ` [Qemu-devel] " Shameer Kolothum
2019-02-27 16:27 ` [Qemu-arm] " Igor Mammedov
2019-02-27 16:27 ` [Qemu-devel] " Igor Mammedov
2019-02-28 12:14 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-02-28 12:14 ` [Qemu-devel] " Shameerali Kolothum Thodi
2019-02-27 17:52 ` Auger Eric
2019-02-27 17:52 ` Auger Eric
2019-02-28 16:09 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-02-28 16:09 ` [Qemu-devel] " Shameerali Kolothum Thodi
2019-02-28 16:44 ` [Qemu-arm] " Igor Mammedov
2019-02-28 16:44 ` [Qemu-devel] " Igor Mammedov
2019-01-28 11:05 ` [Qemu-arm] [RFC PATCH 2/4] hw/arm/virt: Add GPIO based pcdimm hotplug ACPI event support Shameer Kolothum
2019-01-28 11:05 ` [Qemu-devel] " Shameer Kolothum
2019-02-27 16:44 ` Igor Mammedov
2019-02-27 16:44 ` Igor Mammedov
2019-01-28 11:05 ` [Qemu-arm] [RFC PATCH 3/4] hw/arm/virt: Enable pc-dimm hotplug support Shameer Kolothum
2019-01-28 11:05 ` [Qemu-devel] " Shameer Kolothum
2019-02-27 17:14 ` [Qemu-arm] " Igor Mammedov
2019-02-27 17:14 ` Igor Mammedov
2019-02-28 9:57 ` [Qemu-arm] " Auger Eric
2019-02-28 9:57 ` Auger Eric
2019-02-28 12:44 ` [Qemu-arm] " Igor Mammedov
2019-02-28 12:44 ` Igor Mammedov
2019-02-28 12:27 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-02-28 12:27 ` Shameerali Kolothum Thodi
2019-03-01 9:12 ` [Qemu-arm] " Igor Mammedov
2019-03-01 9:12 ` Igor Mammedov
2019-03-01 9:23 ` Shameerali Kolothum Thodi
2019-03-01 9:23 ` Shameerali Kolothum Thodi
2019-03-01 10:26 ` [Qemu-arm] " Igor Mammedov
2019-03-01 10:26 ` Igor Mammedov
2019-03-01 10:33 ` [Qemu-arm] " Igor Mammedov
2019-03-01 10:33 ` Igor Mammedov
2019-03-01 10:51 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-03-01 10:51 ` Shameerali Kolothum Thodi
2019-03-01 13:09 ` Igor Mammedov
2019-03-01 13:09 ` Igor Mammedov
2019-02-22 16:03 ` [Qemu-arm] [RFC PATCH 0/4] ARM virt: ACPI memory " Auger Eric
2019-02-22 16:03 ` [Qemu-devel] " Auger Eric
2019-02-22 19:11 ` [Qemu-arm] " Laszlo Ersek
2019-02-22 19:11 ` [Qemu-devel] " Laszlo Ersek
2019-02-25 9:54 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-02-25 9:54 ` [Qemu-devel] " Shameerali Kolothum Thodi
2019-02-27 12:55 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-02-27 12:55 ` [Qemu-devel] " Shameerali Kolothum Thodi
2019-02-27 16:42 ` Igor Mammedov
2019-02-27 16:42 ` Igor Mammedov
2019-02-27 20:14 ` [Qemu-arm] " Laszlo Ersek
2019-02-27 20:14 ` [Qemu-devel] " Laszlo Ersek
2019-02-28 10:12 ` [Qemu-arm] " Auger Eric
2019-02-28 10:12 ` [Qemu-devel] " Auger Eric
2019-02-28 12:04 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-02-28 12:04 ` [Qemu-devel] " Shameerali Kolothum Thodi
2019-02-28 12:27 ` [Qemu-arm] " Laszlo Ersek
2019-02-28 12:27 ` [Qemu-devel] " Laszlo Ersek
2019-02-28 13:32 ` [Qemu-arm] " Auger Eric
2019-02-28 13:32 ` [Qemu-devel] " Auger Eric
2019-02-28 13:43 ` [Qemu-arm] " Igor Mammedov
2019-02-28 13:43 ` [Qemu-devel] " Igor Mammedov
2019-02-28 14:02 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-02-28 14:02 ` [Qemu-devel] " Shameerali Kolothum Thodi
2019-03-01 13:49 ` Laszlo Ersek
2019-03-01 13:49 ` Laszlo Ersek
2019-03-01 17:39 ` Igor Mammedov [this message]
2019-03-01 17:39 ` Igor Mammedov
2019-03-05 12:14 ` [Qemu-arm] " Laszlo Ersek
2019-03-05 12:14 ` [Qemu-devel] " Laszlo Ersek
2019-02-25 9:47 ` [Qemu-arm] " Shameerali Kolothum Thodi
2019-02-25 9:47 ` [Qemu-devel] " Shameerali Kolothum Thodi
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=20190301183924.5fdd2a0f@redhat.com \
--to=imammedo@redhat.com \
--cc=ard.biesheuvel@linaro.org \
--cc=eric.auger@redhat.com \
--cc=leif.lindholm@linaro.org \
--cc=lersek@redhat.com \
--cc=linuxarm@huawei.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=shameerali.kolothum.thodi@huawei.com \
--cc=shannon.zhaosl@gmail.com \
--cc=xuwei5@huawei.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 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.