From: Greg Kurz <groug@kaod.org>
To: Alexey Kardashevskiy <aik@ozlabs.ru>
Cc: David Gibson <david@gibson.dropbear.id.au>,
qemu-devel@nongnu.org, qemu-ppc@nongnu.org, gkurz@linux.ibm.com
Subject: Re: [Qemu-devel] [PATCH qemu v3] ppc/spapr: Receive and store device tree blob from SLOF
Date: Tue, 18 Dec 2018 10:40:33 +0100 [thread overview]
Message-ID: <20181218104033.5d619c1b@bahia.lan> (raw)
In-Reply-To: <c7e3ab4b-adbf-5a26-f057-c64eedfc6c0b@ozlabs.ru>
On Tue, 18 Dec 2018 18:54:33 +1100
Alexey Kardashevskiy <aik@ozlabs.ru> wrote:
> On 18/12/2018 15:30, Alexey Kardashevskiy wrote:
> >
> >
> > On 18/12/2018 14:49, David Gibson wrote:
> >> On Tue, Dec 18, 2018 at 02:04:54PM +1100, Alexey Kardashevskiy wrote:
> >>>
> >>>
> >>> On 18/12/2018 13:09, David Gibson wrote:
> >>>> On Mon, Dec 17, 2018 at 05:21:33PM +1100, David Gibson wrote:
> >>>>> On Fri, Dec 14, 2018 at 12:55:20PM +1100, Alexey Kardashevskiy wrote:
> >>>>>> SLOF receives a device tree and updates it with various properties
> >>>>>> before switching to the guest kernel and QEMU is not aware of any changes
> >>>>>> made by SLOF. Since there is no real RTAS (QEMU implements it), it makes
> >>>>>> sense to pass the SLOF final device tree to QEMU to let it implement
> >>>>>> RTAS related tasks better, such as PCI host bus adapter hotplug.
> >>>>>>
> >>>>>> Specifially, now QEMU can find out the actual XICS phandle (for PHB
> >>>>>> hotplug) and the RTAS linux,rtas-entry/base properties (for firmware
> >>>>>> assisted NMI - FWNMI).
> >>>>>>
> >>>>>> This stores the initial DT blob in the sPAPR machine and replaces it
> >>>>>> in the KVMPPC_H_UPDATE_DT (new private hypercall) handler.
> >>>>>>
> >>>>>> This adds an @update_dt_enabled machine property to allow backward
> >>>>>> migration.
> >>>>>>
> >>>>>> SLOF already has a hypercall since
> >>>>>> https://github.com/aik/SLOF/commit/e6fc84652c9c0073f9183
> >>>>>>
> >>>>>> This makes use of the new fdt_check_full() helper. In order to allow
> >>>>>> the configure script to pick the correct DTC version, this adjusts
> >>>>>> the DTC presense test.
> >>>>>>
> >>>>>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
> >>>>>
> >>>>> Applied, thanks.
> >>>>
> >>>> And now, unapplied.
> >>>>
> >>>> I don't know quite how, but somehow this patch is causing aarch64
> >>>> tests to SEGV.
> >>>
> >>>
> >>> /home/aik/p/qemu/configure --target-list=aarch64-softmmu
> >>> --source-path=/home/aik/p/qemu/ --disable-git-update --with-git=false
> >>> --enable-trace-backend=log
> >>>
> >>> and
> >>>
> >>> make -C /home/aik/pbuild/qemu-localhost-aarch64-rel/ -j24 check
> >>>
> >>> did not produce segv. I am running this all on a power8 box + ubuntu
> >>> 1804, what is your config?
> >>
> >> Hm, curious. I'm using Fedora 29 on an x86 host.
> >
> >
> > Fedora 27 on x86_64 is all right too :-/ Let's upgrade...
>
> Upgraded, bad experience - usb ethernet module did not load, and now it
> does not remember the screen configuration - when the external monitor
> is detached - all windows jump to the laptop screen and never come back
> to the external one when reattached :(
>
>
> Aaaaand the latest QEMU does not compile with gcc 8.2.1 from fc28:
>
> /home/aik/p/qemu-dwg/util/memfd.c:38:12: error: static declaration of
> ‘memfd_create’ follows non-static declaration
> static int memfd_create(const char *name, unsigned int flags)
> ^~~~~~~~~~~~
> In file included from /usr/include/bits/mman-linux.h:117,
> from /usr/include/bits/mman.h:49,
> from /usr/include/sys/mman.h:41,
> from /home/aik/p/qemu-dwg/include/sysemu/os-posix.h:29,
> from /home/aik/p/qemu-dwg/include/qemu/osdep.h:119,
> from /home/aik/p/qemu-dwg/util/memfd.c:28:
> /usr/include/bits/mman-shared.h:46:5: note: previous declaration of
> ‘memfd_create’ was here
> int memfd_create (const char *__name, unsigned int __flags) __THROW;
> ^~~~~~~~~~~~
>
>
> /home/aik/p/qemu-dwg/block/file-posix.c:1585:14: error: static
> declaration of ‘copy_file_range’ follows non-static declaration
> static off_t copy_file_range(int in_fd, off_t *in_off, int out_fd,
> ^~~~~~~~~~~~~~~
> In file included from /home/aik/p/qemu-dwg/include/qemu/osdep.h:90,
> from /home/aik/p/qemu-dwg/block/file-posix.c:25:
> /usr/include/unistd.h:1107:9: note: previous declaration of
> ‘copy_file_range’ was here
> ssize_t copy_file_range (int __infd, __off64_t *__pinoff,
> ^~~~~~~~~~~~~~~
>
>
> after fixing these, there is still no segv anyway. Hm :(
>
>
Weird... Unlike you, no compile problems for me with gcc-8.2.1-5.fc28.x86_64, but
same as you, no segv...
next prev parent reply other threads:[~2018-12-18 9:40 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-14 1:55 [Qemu-devel] [PATCH qemu v3] ppc/spapr: Receive and store device tree blob from SLOF Alexey Kardashevskiy
2018-12-14 10:30 ` Greg Kurz
2018-12-17 6:21 ` David Gibson
2018-12-18 2:09 ` David Gibson
2018-12-18 3:04 ` Alexey Kardashevskiy
2018-12-18 3:49 ` David Gibson
2018-12-18 4:30 ` Alexey Kardashevskiy
2018-12-18 7:54 ` Alexey Kardashevskiy
2018-12-18 9:40 ` Greg Kurz [this message]
2018-12-19 4:06 ` Alexey Kardashevskiy
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=20181218104033.5d619c1b@bahia.lan \
--to=groug@kaod.org \
--cc=aik@ozlabs.ru \
--cc=david@gibson.dropbear.id.au \
--cc=gkurz@linux.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.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).