qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 6ebc00: ppc/pegasos2: Fix spurious warning wi


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 6ebc00: ppc/pegasos2: Fix spurious warning with -bios
Date: Thu, 29 Jul 2021 05:17:17 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 6ebc0048dd8ff93c2847739599afa630f3d9dabd
      
https://github.com/qemu/qemu/commit/6ebc0048dd8ff93c2847739599afa630f3d9dabd
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2021-07-29 (Thu, 29 Jul 2021)

  Changed paths:
    M hw/ppc/pegasos2.c

  Log Message:
  -----------
  ppc/pegasos2: Fix spurious warning with -bios

The -append option is currently not compatible with -bios (as we don't
yet emulate nvram so we can only put it in the environment with VOF).
Therefore a warning is printed if -append is used with -bios but
because the default value of kernel_cmdline seems to be an empty
string instead of NULL this warning was printed even without -append
when -bios is used. Only print warning if -append is given.

Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Message-Id: 
<483ac599a1407b766179aaea2794aed60cc09f53.1626367844.git.balaton@eik.bme.hu>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 793abe24aa9c6ad1a06dee091fa4dd4479fef482
      
https://github.com/qemu/qemu/commit/793abe24aa9c6ad1a06dee091fa4dd4479fef482
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2021-07-29 (Thu, 29 Jul 2021)

  Changed paths:
    M hw/i2c/smbus_eeprom.c

  Log Message:
  -----------
  i2c/smbus_eeprom: Add feature bit to SPD data

Add the differential clock input feature bit to the generated SPD
data. Most guests don't seem to care but pegasos2 firmware version 1.2
checks for this bit and stops with unsupported module type error if
it's not present. Since this feature is likely present on real memory
modules add it in the general code rather than patching the generated
SPD data in pegasos2 board only.

Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Message-Id: 
<19d42ade295d5297aa624a9eb757b8df18cf64d6.1626367844.git.balaton@eik.bme.hu>
Acked-by: Corey Minyard <cminyard@mvista.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 2d1154bd95a8bfea30cc59de8e080e5a016a9bee
      
https://github.com/qemu/qemu/commit/2d1154bd95a8bfea30cc59de8e080e5a016a9bee
  Author: Matheus Ferst <matheus.ferst@eldorado.org.br>
  Date:   2021-07-29 (Thu, 29 Jul 2021)

  Changed paths:
    M target/ppc/translate/fixedpoint-impl.c.inc

  Log Message:
  -----------
  target/ppc: Ease L=0 requirement on cmp/cmpi/cmpl/cmpli for ppc32

In commit 8f0a4b6a9b, we started to require L=0 for ppc32 to match what
The Programming Environments Manual say:

"For 32-bit implementations, the L field must be cleared, otherwise
the instruction form is invalid."

The stricter behavior, however, broke AROS boot on sam460ex, which is a
regression from 6.0. This patch partially reverts the change, raising
the exception only for CPUs known to require L=0 (e500 and e500mc) and
logging a guest error for other cases.

Both behaviors are acceptable by the PowerISA, which allows "the system
illegal instruction error handler to be invoked or yield boundedly
undefined results."

Reported-by: BALATON Zoltan <balaton@eik.bme.hu>
Fixes: 8f0a4b6a9b ("target/ppc: Move cmp/cmpi/cmpl/cmpli to decodetree")
Tested-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br>
Message-Id: <20210720135507.2444635-1-matheus.ferst@eldorado.org.br>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 14c7e06e722af6f5459ab92bae3023bb336fa497
      
https://github.com/qemu/qemu/commit/14c7e06e722af6f5459ab92bae3023bb336fa497
  Author: Alexey Kardashevskiy <aik@ozlabs.ru>
  Date:   2021-07-29 (Thu, 29 Jul 2021)

  Changed paths:
    M hw/ppc/trace-events
    M hw/ppc/vof.c
    M include/hw/ppc/vof.h

  Log Message:
  -----------
  ppc/vof: Fix Coverity issues

Coverity reported issues which are caused by mixing of signed return codes
from DTC and unsigned return codes of the client interface.

This introduces PROM_ERROR and makes distinction between the error types.

This fixes NEGATIVE_RETURNS, OVERRUN issues reported by Coverity.

This adds a comment about the return parameters number in the VOF hcall.
The reason for such counting is to keep the numbers look the same in
vof_client_handle() and the Linux (an OF client).

vmc->client_architecture_support() returns target_ulong and we want to
propagate this to the client (for example H_MULTI_THREADS_ACTIVE).
The VOF path to do_client_architecture_support() needs chopping off
the top 32bit but SLOF's H_CAS does not; and either way the return values
are either 0 or 32bit negative error code. For now this chops
the top 32bits.

This makes "claim" fail if the allocated address is above 4GB as
the client interface is 32bit. This still allows claiming memory above
4GB as potentially initrd can be put there and the client can read
the address from the FDT's "available" property.

Fixes: CID 1458139, 1458138, 1458137, 1458133, 1458132
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Message-Id: <20210720050726.2737405-1-aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 380e49297c302fdcf8e5d56abdbe07868d3af8d8
      
https://github.com/qemu/qemu/commit/380e49297c302fdcf8e5d56abdbe07868d3af8d8
  Author: Fabiano Rosas <farosas@linux.ibm.com>
  Date:   2021-07-29 (Thu, 29 Jul 2021)

  Changed paths:
    M accel/kvm/kvm-all.c

  Log Message:
  -----------
  kvm: ppc: Print meaningful message on KVM_CREATE_VM failure

PowerPC has two KVM types (HV, PR) that translate into three kernel
modules:

kvm.ko - common kvm code
kvm_hv.ko - kvm running with MSR_HV=1 or MSR_HV|PR=0 in a nested guest.
kvm_pr.ko - kvm running in usermode MSR_PR=1.

Since the two KVM types can both be running at the same time, this
creates a situation in which it is possible for one or both of the
modules to fail to initialize, leaving the generic one behind. This
leads QEMU to think it can create a guest, but KVM will fail when
calling the type-specific code:

 ioctl(KVM_CREATE_VM) failed: 22 Invalid argument
 qemu-kvm: failed to initialize KVM: Invalid argument

Ideally this would be solved kernel-side, but it might be a while
until we can get rid of one of the modules. So in the meantime this
patch tries to make this less confusing for the end user by adding a
more elucidative message:

 ioctl(KVM_CREATE_VM) failed: 22 Invalid argument
 PPC KVM module is not loaded. Try 'modprobe kvm_hv'.

[dwg: Fixed error in #elif which failed compile on !ppc hosts]
Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com>
Message-Id: <20210722141340.2367905-1-farosas@linux.ibm.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: efba2eebdf103218d47eac7a4247949779f80885
      
https://github.com/qemu/qemu/commit/efba2eebdf103218d47eac7a4247949779f80885
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2021-07-29 (Thu, 29 Jul 2021)

  Changed paths:
    M accel/kvm/kvm-all.c
    M hw/i2c/smbus_eeprom.c
    M hw/ppc/pegasos2.c
    M hw/ppc/trace-events
    M hw/ppc/vof.c
    M include/hw/ppc/vof.h
    M target/ppc/translate/fixedpoint-impl.c.inc

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/dg-gitlab/tags/ppc-for-6.1-20210729' 
into staging

ppc patch queue 2021-07-29

Here's a small batch of bufixes for the ppc target to go into qemu-6.1.

# gpg: Signature made Thu 29 Jul 2021 08:01:00 BST
# gpg:                using RSA key 75F46586AE61A66CC44E87DC6C38CACA20D9B392
# gpg: Good signature from "David Gibson <david@gibson.dropbear.id.au>" [full]
# gpg:                 aka "David Gibson (Red Hat) <dgibson@redhat.com>" [full]
# gpg:                 aka "David Gibson (ozlabs.org) <dgibson@ozlabs.org>" 
[full]
# gpg:                 aka "David Gibson (kernel.org) <dwg@kernel.org>" 
[unknown]
# Primary key fingerprint: 75F4 6586 AE61 A66C C44E  87DC 6C38 CACA 20D9 B392

* remotes/dg-gitlab/tags/ppc-for-6.1-20210729:
  kvm: ppc: Print meaningful message on KVM_CREATE_VM failure
  ppc/vof: Fix Coverity issues
  target/ppc: Ease L=0 requirement on cmp/cmpi/cmpl/cmpli for ppc32
  i2c/smbus_eeprom: Add feature bit to SPD data
  ppc/pegasos2: Fix spurious warning with -bios

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/69ea12b19a15...efba2eebdf10



reply via email to

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