qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 6b3f7f: vl: move rom_load_all after machine i


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 6b3f7f: vl: move rom_load_all after machine init done
Date: Wed, 08 Jul 2015 14:00:05 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 6b3f7f639ed8861cd034292f9bb85b00c73658a6
      
https://github.com/qemu/qemu/commit/6b3f7f639ed8861cd034292f9bb85b00c73658a6
  Author: Eric Auger <address@hidden>
  Date:   2015-07-07 (Tue, 07 Jul 2015)

  Changed paths:
    M hw/core/loader.c
    M include/hw/loader.h
    M vl.c

  Log Message:
  -----------
  vl: move rom_load_all after machine init done

On ARM, commit ac9d32e39664e060cd1b538ff190980d57ad69e4 postponed the
memory preparation for boot until the machine init done notifier. This
has for consequence to insert ROM at machine init done time.

However the rom_load_all function stayed called before the ROM are
inserted. As a consequence the rom_load_all function does not do
everything it is expected to do, on ARM.

It currently registers the ROM reset notifier but does not iterate through
the registered ROM list. the isrom field is not set properly. This latter
is used to report info in the monitor and also to decide whether the
rom->data can be freed on ROM reset notifier.

To fix that regression the patch moves the rom_load_all call after
machine init done. We also take the opportunity to rename the rom_load_all
function into rom_check_and_resgister_reset() and integrate the
rom_load_done in it.

Signed-off-by: Eric Auger <address@hidden>
Reported-by: Peter Crosthwaite <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ddbb0d09661f5fce21b335ba9aea8202d189b98e
      
https://github.com/qemu/qemu/commit/ddbb0d09661f5fce21b335ba9aea8202d189b98e
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-07 (Tue, 07 Jul 2015)

  Changed paths:
    M MAINTAINERS
    M Makefile.objs
    M configure
    A crypto/Makefile.objs
    A crypto/hash.c
    A crypto/init.c
    A include/crypto/hash.h
    A include/crypto/init.h
    M tests/.gitignore
    M tests/Makefile
    A tests/test-crypto-hash.c
    M vl.c

  Log Message:
  -----------
  crypto: introduce new module for computing hash digests

Introduce a new crypto/ directory that will (eventually) contain
all the cryptographic related code. This initially defines a
wrapper for initializing gnutls and for computing hashes with
gnutls. The former ensures that gnutls is guaranteed to be
initialized exactly once in QEMU regardless of CLI args. The
block quorum code currently fails to initialize gnutls so it
only works by luck, if VNC server TLS is not requested. The
hash APIs avoids the need to litter the rest of the code with
preprocessor checks and simplifies callers by allocating the
correct amount of memory for the requested hash.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 6f2945cde60545aae7f31ab9d5ef29531efbc94f
      
https://github.com/qemu/qemu/commit/6f2945cde60545aae7f31ab9d5ef29531efbc94f
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-07 (Tue, 07 Jul 2015)

  Changed paths:
    M block/qcow.c
    M block/qcow2.c
    M block/qcow2.h
    M crypto/Makefile.objs
    A crypto/aes.c
    A include/crypto/aes.h
    R include/qemu/aes.h
    M target-arm/crypto_helper.c
    M target-i386/fpu_helper.c
    M target-i386/ops_sse.h
    M target-ppc/int_helper.c
    M util/Makefile.objs
    R util/aes.c

  Log Message:
  -----------
  crypto: move built-in AES implementation into crypto/

To prepare for a generic internal cipher API, move the
built-in AES implementation into the crypto/ directory

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 9fd72468dfe40532df7c64d35054994058106c42
      
https://github.com/qemu/qemu/commit/9fd72468dfe40532df7c64d35054994058106c42
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-07 (Tue, 07 Jul 2015)

  Changed paths:
    M crypto/Makefile.objs
    A crypto/desrfb.c
    A include/crypto/desrfb.h
    M ui/Makefile.objs
    R ui/d3des.c
    R ui/d3des.h
    M ui/vnc.c

  Log Message:
  -----------
  crypto: move built-in D3DES implementation into crypto/

To prepare for a generic internal cipher API, move the
built-in D3DES implementation into the crypto/ directory.

This is not in fact a normal D3DES implementation, it is
D3DES with double & triple length modes removed, and the
key bytes in reversed bit order. IOW it is crippled
specifically for the "benefit" of RFB, so call the new
files desrfb.c instead of d3des.c to make it clear that
it isn't a generally useful impl.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ca38a4cc9e36647437b837b346a41981fb8880cd
      
https://github.com/qemu/qemu/commit/ca38a4cc9e36647437b837b346a41981fb8880cd
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M crypto/Makefile.objs
    A crypto/cipher-builtin.c
    A crypto/cipher.c
    A include/crypto/cipher.h
    M tests/.gitignore
    M tests/Makefile
    A tests/test-crypto-cipher.c

  Log Message:
  -----------
  crypto: introduce generic cipher API & built-in implementation

Introduce a generic cipher API and an implementation of it that
supports only the built-in AES and DES-RFB algorithms.

The test suite checks the supported algorithms + modes to
validate that every backend implementation is actually correctly
complying with the specs.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 62893b67cd82bbd48b013c1cec25f0d863612c80
      
https://github.com/qemu/qemu/commit/62893b67cd82bbd48b013c1cec25f0d863612c80
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M configure
    A crypto/cipher-gcrypt.c
    M crypto/cipher.c
    M crypto/init.c

  Log Message:
  -----------
  crypto: add a gcrypt cipher implementation

If we are linking to gnutls already and gnutls is built against
gcrypt, then we should use gcrypt as a cipher backend in
preference to our built-in backend.

This will be used when linking against GNUTLS 1.x and many
GNUTLS 2.x versions.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ed754746fea55df726f4de3dadb5bea0b6aa7409
      
https://github.com/qemu/qemu/commit/ed754746fea55df726f4de3dadb5bea0b6aa7409
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M configure
    A crypto/cipher-nettle.c
    M crypto/cipher.c

  Log Message:
  -----------
  crypto: add a nettle cipher implementation

If we are linking to gnutls already and gnutls is built against
nettle, then we should use nettle as a cipher backend in
preference to our built-in backend.

This will be used when linking against some GNUTLS 2.x versions
and all GNUTLS 3.x versions.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
[Change "#elif" to "#elif defined". - Paolo]
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 488981a4af396551a3178d032cc2b41d9553ada2
      
https://github.com/qemu/qemu/commit/488981a4af396551a3178d032cc2b41d9553ada2
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M block/Makefile.objs
    M block/quorum.c
    M configure

  Log Message:
  -----------
  block: convert quorum blockdrv to use crypto APIs

Get rid of direct use of gnutls APIs in quorum blockdrv in
favour of using the crypto APIs. This avoids the need to
do conditional compilation of the quorum driver. It can
simply report an error at file open file instead if the
required hash algorithm isn't supported by QEMU.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 8e9b0d24fb986d4241ae3b77752eca5dab4cb486
      
https://github.com/qemu/qemu/commit/8e9b0d24fb986d4241ae3b77752eca5dab4cb486
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M configure
    M ui/Makefile.objs
    M ui/vnc-ws.c
    M ui/vnc-ws.h
    M ui/vnc.c
    M ui/vnc.h

  Log Message:
  -----------
  ui: convert VNC websockets to use crypto APIs

Remove the direct use of gnutls for hash processing in the
websockets code, in favour of using the crypto APIs. This
allows the websockets code to be built unconditionally
removing countless conditional checks from the VNC code.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: f6fa64f6d22b0ed53fb3be5883cd9719d17cb4f0
      
https://github.com/qemu/qemu/commit/f6fa64f6d22b0ed53fb3be5883cd9719d17cb4f0
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M block/qcow.c
    M block/qcow2-cluster.c
    M block/qcow2.c
    M block/qcow2.h

  Log Message:
  -----------
  block: convert qcow/qcow2 to use generic cipher API

Switch the qcow/qcow2 block driver over to use the generic cipher
API, this allows it to use the pluggable AES implementations,
instead of being hardcoded to use QEMU's built-in impl.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 800567a613510c77a55decac4d25fea154d1ee22
      
https://github.com/qemu/qemu/commit/800567a613510c77a55decac4d25fea154d1ee22
  Author: Daniel P. Berrange <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M ui/vnc.c

  Log Message:
  -----------
  ui: convert VNC to use generic cipher API

Switch the VNC server over to use the generic cipher API, this
allows it to use the pluggable DES implementations, instead of
being hardcoded to use QEMU's built-in impl.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 2828a307232ffceeddec9feb6a87ac660b68b693
      
https://github.com/qemu/qemu/commit/2828a307232ffceeddec9feb6a87ac660b68b693
  Author: Gonglei <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M audio/ossaudio.c

  Log Message:
  -----------
  ossaudio: fix memory leak

Variable "conf" going out of scope leaks the storage
it points to in line 856.

Signed-off-by: Gonglei <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: acf7b7fdf31fa76b53803790917c8acf23a2badb
      
https://github.com/qemu/qemu/commit/acf7b7fdf31fa76b53803790917c8acf23a2badb
  Author: Peter Maydell <address@hidden>
  Date:   2015-07-08 (Wed, 08 Jul 2015)

  Changed paths:
    M MAINTAINERS
    M Makefile.objs
    M audio/ossaudio.c
    M block/Makefile.objs
    M block/qcow.c
    M block/qcow2-cluster.c
    M block/qcow2.c
    M block/qcow2.h
    M block/quorum.c
    M configure
    A crypto/Makefile.objs
    A crypto/aes.c
    A crypto/cipher-builtin.c
    A crypto/cipher-gcrypt.c
    A crypto/cipher-nettle.c
    A crypto/cipher.c
    A crypto/desrfb.c
    A crypto/hash.c
    A crypto/init.c
    M hw/core/loader.c
    A include/crypto/aes.h
    A include/crypto/cipher.h
    A include/crypto/desrfb.h
    A include/crypto/hash.h
    A include/crypto/init.h
    M include/hw/loader.h
    R include/qemu/aes.h
    M target-arm/crypto_helper.c
    M target-i386/fpu_helper.c
    M target-i386/ops_sse.h
    M target-ppc/int_helper.c
    M tests/.gitignore
    M tests/Makefile
    A tests/test-crypto-cipher.c
    A tests/test-crypto-hash.c
    M ui/Makefile.objs
    R ui/d3des.c
    R ui/d3des.h
    M ui/vnc-ws.c
    M ui/vnc-ws.h
    M ui/vnc.c
    M ui/vnc.h
    M util/Makefile.objs
    R util/aes.c
    M vl.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging

Bugfixes and Daniel Berrange's crypto library.

# gpg: Signature made Wed Jul  8 12:12:29 2015 BST using RSA key ID 78C7AE83
# gpg: Good signature from "Paolo Bonzini <address@hidden>"
# gpg:                 aka "Paolo Bonzini <address@hidden>"
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* remotes/bonzini/tags/for-upstream:
  ossaudio: fix memory leak
  ui: convert VNC to use generic cipher API
  block: convert qcow/qcow2 to use generic cipher API
  ui: convert VNC websockets to use crypto APIs
  block: convert quorum blockdrv to use crypto APIs
  crypto: add a nettle cipher implementation
  crypto: add a gcrypt cipher implementation
  crypto: introduce generic cipher API & built-in implementation
  crypto: move built-in D3DES implementation into crypto/
  crypto: move built-in AES implementation into crypto/
  crypto: introduce new module for computing hash digests
  vl: move rom_load_all after machine init done

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


Compare: https://github.com/qemu/qemu/compare/c8e84287da7d...acf7b7fdf31f

reply via email to

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