qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Status/future of QEMU bsd-user impl ? (Wea Re: [PULL 00/12] Compile


From: Warner Losh
Subject: Re: Status/future of QEMU bsd-user impl ? (Wea Re: [PULL 00/12] Compile QEMU with -Wimplicit-fallthrough)
Date: Thu, 17 Dec 2020 09:03:23 -0700



On Thu, Dec 17, 2020 at 7:02 AM Daniel P. Berrangé <berrange@redhat.com> wrote:
On Thu, Dec 17, 2020 at 02:03:47PM +0100, Thomas Huth wrote:
> On 17/12/2020 13.51, Peter Maydell wrote:
> > On Wed, 16 Dec 2020 at 17:29, Thomas Huth <thuth@redhat.com> wrote:
> >>
> >>  Hi!
> >>
> >> The following changes since commit af3f37319cb1e1ca0c42842ecdbd1bcfc64a4b6f:
> >>
> >>   Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging (2020-12-15 21:24:31 +0000)
> >>
> >> are available in the Git repository at:
> >>
> >>   https://gitlab.com/huth/qemu.git tags/pull-request-2020-12-16
> >>
> >> for you to fetch changes up to cbbedfeeb77e25b065f8a2b0c33e81403edaf728:
> >>
> >>   configure: Compile with -Wimplicit-fallthrough=2 (2020-12-16 12:52:20 +0100)
> >>
> >> ----------------------------------------------------------------
> >> * Compile QEMU with -Wimplicit-fallthrough=2 to avoid bugs in
> >>   switch-case statements
> >> ----------------------------------------------------------------
> >
> > Hi; this generates a new warning on the NetBSD build:
> >
> > ../src/bsd-user/main.c: In function 'cpu_loop':
> > ../src/bsd-user/main.c:513:16: warning: this statement may fall
> > through [-Wimplicit-fallthrough=]
> >              if (bsd_type != target_freebsd)
> >                 ^
> > ../src/bsd-user/main.c:515:9: note: here
> >          case 0x100:
> >          ^~~~
>
> Oh man, can't we just ditch the bsd-user folder now? It's known to be broken
> since many releases, so it's currently only causing additional effort to
> keep this code compilable (also with regards to the automatic code scan tool
> reports that we've seen during the past months), without real benefit. Even
> if the BSD folks finally upstream their fixed version again, it's more
> likely that they will start from scratch again instead of fixing the old
> folder, I guess?

Yeah, it has been a while since we last discussed this:

  https://lists.gnu.org/archive/html/qemu-devel/2017-01/msg00171.html

Meanwhile their out of free bsd-user impl continues to be developed
until Dec 2019 at least:

  https://github.com/seanbruno/qemu-bsd-user/commits/bsd-user

You should check out the bsd-user-rebase-3.1 branch. The most recent commit was this month...
 

I don't recall what happened after that initial discussion about
merging the new impl. Did Sean simply not have the time to invest
in the merge ? I'll CC him here to see what opinion he has on the
future of bsd-user in QEMU.

I've actually taken over for Sean Bruno managing this.

I spent some time and rebased our extensive work up through QEMU 3.1, but I hit some snags with changes in the underlying QEMU, and we had a few bugs we had to sort out to make it stable, which took some time. There were other people doing the sorting out since it affected them, but not me directly. By the time they were sorted out, 4.1 was being released. Plus I blew about a week trying to make every single commit compile rather than just the tip of the branch. I spent quite a bit of time curating the changes into more logical bits, which also chewed up a few weeks and in the end was only partially complete. In the end,

The main problem with the merge, which I've done a couple of times, is that this is so tied to the structure of QEMU, a part that has a high velocity is that it takes so long to do the merge that by the time you're done, things have changed again in the code base and you have to do a lot more work to catch up.

The code that's in the tree is so bit-rotted I'd be surprised if it could run anything beyond trivial programs.

I'd love to hear from people ways that I can speed things up. I'd love to get this back into the tree since the version we have in the 

Warner

reply via email to

[Prev in Thread] Current Thread [Next in Thread]