qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 0a2672: mips/kvm: Init EBase to correct KSEG0


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 0a2672: mips/kvm: Init EBase to correct KSEG0
Date: Fri, 11 Jul 2014 04:30:05 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 0a2672b7ead72b7c788200499a63a4d5f2faa74a
      
https://github.com/qemu/qemu/commit/0a2672b7ead72b7c788200499a63a4d5f2faa74a
  Author: James Hogan <address@hidden>
  Date:   2014-07-05 (Sat, 05 Jul 2014)

  Changed paths:
    M target-mips/translate.c

  Log Message:
  -----------
  mips/kvm: Init EBase to correct KSEG0

The EBase CP0 register is initialised to 0x80000000, however with KVM
the guest's KSEG0 is at 0x40000000. The incorrect value doesn't get
passed to KVM yet as KVM doesn't implement the EBase register, however
we should set it correctly now so as not to break migration/loadvm to a
future version of QEMU that does support EBase.

Cc: Aurelien Jarno <address@hidden>
Cc: Paolo Bonzini <address@hidden>
Signed-off-by: James Hogan <address@hidden>
Reviewed-by: Aurelien Jarno <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 0e928b12c94a4eea56028dec676422b165063ea5
      
https://github.com/qemu/qemu/commit/0e928b12c94a4eea56028dec676422b165063ea5
  Author: James Hogan <address@hidden>
  Date:   2014-07-09 (Wed, 09 Jul 2014)

  Changed paths:
    M target-mips/kvm.c

  Log Message:
  -----------
  mips/kvm: Disable FPU on reset with KVM

KVM doesn't yet support the MIPS FPU, or writing to the guest's Config1
register which contains the FPU implemented bit. Clear QEMU's version of
that bit on reset and display a warning that the FPU has been disabled.

The previous incorrect Config1 CP0 register value wasn't being passed to
KVM yet, however we should ensure it is set correctly now to reduce the
risk of breaking migration/loadvm to a future version of QEMU/Linux that
does support it.

Signed-off-by: James Hogan <address@hidden>
Cc: Aurelien Jarno <address@hidden>
Cc: Paolo Bonzini <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: fbdb1d955511c38e61e3aa3ba4fb3944b126eb28
      
https://github.com/qemu/qemu/commit/fbdb1d955511c38e61e3aa3ba4fb3944b126eb28
  Author: James Hogan <address@hidden>
  Date:   2014-07-09 (Wed, 09 Jul 2014)

  Changed paths:
    M hw/mips/mips_malta.c

  Log Message:
  -----------
  mips_malta: Remove incorrect KVM T&E references

Fix the error message and code comments relating to KVM not supporting
booting from the flash mapping when no kernel is provided. The issue is
a general MIPS KVM issue and isn't specific to the Trap & Emulate
version of MIPS KVM.

Cc: Aurelien Jarno <address@hidden>
Cc: Paolo Bonzini <address@hidden>
Reported-by: Andreas Färber <address@hidden>
Signed-off-by: James Hogan <address@hidden>
Reviewed-by: Aurelien Jarno <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: f7f152458e953690f1c8025f507a26d554f6ee4d
      
https://github.com/qemu/qemu/commit/f7f152458e953690f1c8025f507a26d554f6ee4d
  Author: James Hogan <address@hidden>
  Date:   2014-07-09 (Wed, 09 Jul 2014)

  Changed paths:
    M hw/mips/mips_malta.c

  Log Message:
  -----------
  mips_malta: Catch kernels linked at wrong address

Add error reporting if the wrong type of kernel is provided for the
current mode of acceleration.

Currently a KVM kernel linked at 0x40000000 can't be used with TCG, and
a normal kernel linked at 0x80000000 can't be used with KVM.

Cc: Aurelien Jarno <address@hidden>
Cc: Paolo Bonzini <address@hidden>
Signed-off-by: James Hogan <address@hidden>
Reviewed-by: Aurelien Jarno <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 30e5210a706ca6b52cbefa8b71e40ae614ffd6e5
      
https://github.com/qemu/qemu/commit/30e5210a706ca6b52cbefa8b71e40ae614ffd6e5
  Author: Paolo Bonzini <address@hidden>
  Date:   2014-07-09 (Wed, 09 Jul 2014)

  Changed paths:
    M hw/watchdog/watchdog.c

  Log Message:
  -----------
  watchdog: fix deadlock with -watchdog-action pause

qemu_clock_enable says:

/* Disabling the clock will wait for related timerlists to stop
 * executing qemu_run_timers.  Thus, this functions should not
 * be used from the callback of a timer that is based on @clock.
 * Doing so would cause a deadlock.
 */

and it indeed does: vm_stop uses qemu_clock_enable on QEMU_CLOCK_VIRTUAL
and watchdogs are based on QEMU_CLOCK_VIRTUAL, and we get a deadlock.

Use qemu_system_vmstop_request_prepare()/qemu_system_vmstop_request()
instead; yet another alternative could be a BH.

I checked other occurrences of vm_stop and they should not have this
problem.  RUN_STATE_IO_ERROR could in principle (it depends on the
code in the drivers) but it has been fixed by commit 2bd3bce, "block:
asynchronously stop the VM on I/O errors", 2014-06-05.

Tested-by: Luiz Capitulino <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 3b463a3fa8f7690ffa3ef273993dff349b3a73d3
      
https://github.com/qemu/qemu/commit/3b463a3fa8f7690ffa3ef273993dff349b3a73d3
  Author: Miroslav Rezanina <address@hidden>
  Date:   2014-07-10 (Thu, 10 Jul 2014)

  Changed paths:
    M configure

  Log Message:
  -----------
  Enforce stack protector usage

If --enable-stack-protector is used is used, configure script try to use
--fstack-protector-strong. In case it's not supported, --fstack-protector-all
is enabled. If both protectors are not supported, configure does not use
any protector at all without any notification.

This patch reports error when user requests stack protector to be used and
both protector modes are not supported. Behavior is not changed in case
user do not use any of --enable-stack-protector/--disable-stack-protector.

Signed-off-by: Miroslav Rezanina <address@hidden>
[Fix non-POSIX operator in test. - Paolo]
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 8248c36a5db6ff7d5f07f05148be0dd0160e650c
      
https://github.com/qemu/qemu/commit/8248c36a5db6ff7d5f07f05148be0dd0160e650c
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-07-10 (Thu, 10 Jul 2014)

  Changed paths:
    M target-i386/cpu.c

  Log Message:
  -----------
  target-i386: Add "kvmclock-stable-bit" feature bit name

KVM_FEATURE_CLOCKSOURCE_STABLE_BIT is enabled by default and supported
by KVM. But not having a name defined makes QEMU treat it as an unknown
and unmigratable feature flag (as any unknown feature may possibly
require state to be migrated), and disable it by default on "-cpu host".

As a side-effect, the new name also makes the flag configurable,
allowing the user to disable it (which may be useful for testing or for
compatibility with old kernels).

Signed-off-by: Eduardo Habkost <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: b7bf8f5657d48e4625c86cd5f1d3cc83e830d8f7
      
https://github.com/qemu/qemu/commit/b7bf8f5657d48e4625c86cd5f1d3cc83e830d8f7
  Author: Stefan Weil <address@hidden>
  Date:   2014-07-10 (Thu, 10 Jul 2014)

  Changed paths:
    M util/oslib-posix.c

  Log Message:
  -----------
  oslib-posix: Fix new compiler error with -Wclobbered

Newer versions of gcc report a warning (or an error with -Werror) when
compiler option -Wclobbered (or -Wextra) is active:

util/oslib-posix.c:372:12: error:
 variable ‘hpagesize’ might be clobbered by ‘longjmp’ or ‘vfork’ 
[-Werror=clobbered]

The rewritten code fixes this warning: variable 'hpagesize' is now set and
used in a block without any call of sigsetjmp or similar functions.

Signed-off-by: Stefan Weil <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 13c0cbaec5698f3984606e52bfcfb63ddfc29f00
      
https://github.com/qemu/qemu/commit/13c0cbaec5698f3984606e52bfcfb63ddfc29f00
  Author: Paolo Bonzini <address@hidden>
  Date:   2014-07-10 (Thu, 10 Jul 2014)

  Changed paths:
    M hw/timer/mc146818rtc.c

  Log Message:
  -----------
  mc146818rtc: register the clock reset notifier on the right clock

Commit 884f17c (aio / timers: Convert rtc_clock to be a QEMUClockType,
2013-08-21) erroneously changed an occurrence of rtc_clock to
QEMU_CLOCK_REALTIME, which broke the RTC reset notifier in
mc146818rtc.  Fix this.

I redid the patch myself since the original reporter did not sign
off on his.

Cc: address@hidden
Reported-by: Lb peace <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 0a58991a5f7efd6eb8a66643f4fd894b9c6874b7
      
https://github.com/qemu/qemu/commit/0a58991a5f7efd6eb8a66643f4fd894b9c6874b7
  Author: Nikolay Nikolaev <address@hidden>
  Date:   2014-07-10 (Thu, 10 Jul 2014)

  Changed paths:
    M tests/vhost-user-test.c

  Log Message:
  -----------
  qtest: fix vhost-user-test compilation with old GLib

Mising G_TIME_SPAN_SECOND definition breaks the RHEL6 compilation as GLib
version before 2.26 does not have it. In such case just define it.

Reported-by: Kevin Wolf <address@hidden>
Signed-off-by: Nikolay Nikolaev <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 74aeb37de06083ab130bf0da7c264043887c6c04
      
https://github.com/qemu/qemu/commit/74aeb37de06083ab130bf0da7c264043887c6c04
  Author: Peter Maydell <address@hidden>
  Date:   2014-07-10 (Thu, 10 Jul 2014)

  Changed paths:
    M configure
    M hw/mips/mips_malta.c
    M hw/timer/mc146818rtc.c
    M hw/watchdog/watchdog.c
    M target-i386/cpu.c
    M target-mips/kvm.c
    M target-mips/translate.c
    M tests/vhost-user-test.c
    M util/oslib-posix.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/kvm/uq/master' into staging

* remotes/kvm/uq/master:
  qtest: fix vhost-user-test compilation with old GLib
  mc146818rtc: register the clock reset notifier on the right clock
  oslib-posix: Fix new compiler error with -Wclobbered
  target-i386: Add "kvmclock-stable-bit" feature bit name
  Enforce stack protector usage
  watchdog: fix deadlock with -watchdog-action pause
  mips_malta: Catch kernels linked at wrong address
  mips_malta: Remove incorrect KVM T&E references
  mips/kvm: Disable FPU on reset with KVM
  mips/kvm: Init EBase to correct KSEG0

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/9e99c5fd7060...74aeb37de060

reply via email to

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