qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 409db6: checkpatch: Eliminate false positive


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 409db6: checkpatch: Eliminate false positive in case of co...
Date: Tue, 16 Feb 2016 10:30:05 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 409db6eb7199af7a2f09f746bd1b793e9daefe5f
      
https://github.com/qemu/qemu/commit/409db6eb7199af7a2f09f746bd1b793e9daefe5f
  Author: Leonid Bloch <address@hidden>
  Date:   2016-02-15 (Mon, 15 Feb 2016)

  Changed paths:
    M scripts/checkpatch.pl

  Log Message:
  -----------
  checkpatch: Eliminate false positive in case of comma-space-square bracket

Previously, an error was printed in cases such as:
{ [1] = 5, [2] = 6 }
The space passed OK after a curly brace, but not after a comma.
Now, a space before a square bracket is allowed, if a comma comes before
it.

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


  Commit: 8800cf0a336147478dff6f2b0a47d8285b828f6d
      
https://github.com/qemu/qemu/commit/8800cf0a336147478dff6f2b0a47d8285b828f6d
  Author: Leonid Bloch <address@hidden>
  Date:   2016-02-15 (Mon, 15 Feb 2016)

  Changed paths:
    M scripts/checkpatch.pl

  Log Message:
  -----------
  checkpatch: Eliminate false positive in case of space before square bracket 
in a definition

Now, macro definition such as "#define abc(x) [x] = y" should pass
without an error.

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


  Commit: 837a183f00cfd320fae33bb8d04d440341faa3b1
      
https://github.com/qemu/qemu/commit/837a183f00cfd320fae33bb8d04d440341faa3b1
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M qemu-char.c

  Log Message:
  -----------
  Revert "qemu-char: Keep pty slave file descriptor open until the master is 
closed"

This reverts commit 34689e206abddac87a5217d458534e24f2a05562.

Marc-André Lureau provided the following commentary: "It looks like if
a the slave is opened, then Linux will buffer the master writes, up to
a few kb and then throttle, so it's not entirely blocked but eventually
the guest VM dies.  However, not having any slave open it will simply let
the write go and discard the data.  At least, virt-install configures
a pty for the serial but viewers like virt-manager do not necessarily
open it.  And, if there are no viewers, it will just hang.  If qemu
starts reading all the data from the slave, I don't think interactions
with other slaves will work. I don't see much options but to close the
slave, thus reverting this patch."

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


  Commit: e046fb449947a48e013bf25d806ecb60e5a88319
      
https://github.com/qemu/qemu/commit/e046fb449947a48e013bf25d806ecb60e5a88319
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M qemu-char.c

  Log Message:
  -----------
  char: fix handling of QIO_CHANNEL_ERR_BLOCK

If io_channel_send_full gets QIO_CHANNEL_ERR_BLOCK it
and has already sent some of the data, it should return
that amount of data, not EAGAIN, as that would cause
the caller to re-try already sent data.

Unfortunately due to a previous rebase conflict resolution
error, the code for dealing with this was in the wrong
part of the conditional, and so mistakenly ran on other
I/O errors.

This be seen running

   qemu-system-x86_64 -monitor stdio

and entering 'info mtree', when running on a slow console
(eg a slow remote ssh session). The monitor would get into
an indefinite loop writing the same data until it managed
to send it all without getting EAGAIN.

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


  Commit: b11d029b0a093e31ae13e4fade03c7848e8af169
      
https://github.com/qemu/qemu/commit/b11d029b0a093e31ae13e4fade03c7848e8af169
  Author: Eric Blake <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M include/qemu/compiler.h

  Log Message:
  -----------
  build: Don't redefine 'inline'

Actively redefining 'inline' is wrong for C++, where gcc has an
extension 'inline namespace' which fails to compile if the
keyword 'inline' is replaced by a macro expansion.  This will
matter once we start to include "qemu/osdep.h" first from C++
files, depending also on whether the system headers are new
enough to be using the gcc extension.

But rather than just guard things by __cplusplus, let's look at
the overall picture.  Commit df2542c737ea2 in 2007 defined 'inline'
to the gcc attribute __always_inline__, with the rationale "To
avoid discarded inlining bug".  But compilers have improved since
then, and we are probably better off trusting the compiler rather
than trying to force its hand.

So just nuke our craziness.

Signed-off-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 7ec13c798a5792c70edbc088ac6aae07c85ee230
      
https://github.com/qemu/qemu/commit/7ec13c798a5792c70edbc088ac6aae07c85ee230
  Author: Denis V. Lunev <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M vl.c

  Log Message:
  -----------
  vl: change QEMU state machine for system reset

This patch implements proposal from Paolo to handle system reset when
the guest is not running.

"After a reset, main_loop_should_exit should actually transition
to VM_STATE_PRELAUNCH (*not* RUN_STATE_PAUSED) for *all* states except
RUN_STATE_INMIGRATE, RUN_STATE_SAVE_VM (which I think cannot happen
there) and (of course) RUN_STATE_RUNNING."

Signed-off-by: Denis V. Lunev <address@hidden>
CC: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 98799b0d4be4fb5e3962005448119133a6bf74b2
      
https://github.com/qemu/qemu/commit/98799b0d4be4fb5e3962005448119133a6bf74b2
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M vl.c

  Log Message:
  -----------
  vl: fix migration from prelaunch state

Reproducer is simply to migrate a virtual machine that was started with -S,
or that was already migrated.

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


  Commit: 4987783400667147ada01a5bdcce53f11b822888
      
https://github.com/qemu/qemu/commit/4987783400667147ada01a5bdcce53f11b822888
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M migration/ram.c

  Log Message:
  -----------
  migration: fix incorrect memory_global_dirty_log_start outside BQL

This can cause various segmentation faults or aborts in qemu-iotests
test 091.

Fixes: 5b82b703b69acc67b78b98a5efc897a3912719eb
Cc: Dave Gilbert <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: b44bbeb44bbacd1f47473d5f70468ae2141847cf
      
https://github.com/qemu/qemu/commit/b44bbeb44bbacd1f47473d5f70468ae2141847cf
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M hw/scsi/mptconfig.c

  Log Message:
  -----------
  mptsas: add missing va_end

Reported by Coverity.

Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 18557e646b9df9d60755f2fab151642d8b81affb
      
https://github.com/qemu/qemu/commit/18557e646b9df9d60755f2fab151642d8b81affb
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M hw/scsi/mptsas.c

  Log Message:
  -----------
  mptsas: fix memory leak

Reported by Coverity.

Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 9155b7606a17967b1e056aa5d0433a047f23ae51
      
https://github.com/qemu/qemu/commit/9155b7606a17967b1e056aa5d0433a047f23ae51
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M hw/scsi/mptsas.c

  Log Message:
  -----------
  mptsas: fix wrong formula

MPI_DOORBELL_WHO_INIT_SHIFT is being repeated twice.  Reported
by Coverity.

Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 73d60fa5fae60c8e07e1f295d8c7fd5d04320160
      
https://github.com/qemu/qemu/commit/73d60fa5fae60c8e07e1f295d8c7fd5d04320160
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c

  Log Message:
  -----------
  ipmi: sensor number should not exceed MAX_SENSORS

Fix a number of off-by-ones, one of them spotted by Coverity.

Signed-off-by: Cédric Le Goater <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 90998d58964cd17f8b0b03800b0a4508f8b543da
      
https://github.com/qemu/qemu/commit/90998d58964cd17f8b0b03800b0a4508f8b543da
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M hmp.c
    M include/monitor/monitor.h
    M include/qom/object_interfaces.h
    M qmp.c
    M qom/object_interfaces.c
    M vl.c

  Log Message:
  -----------
  qom: add helpers for UserCreatable object types

The QMP monitor code has two helper methods object_add
and qmp_object_del that are called from several places
in the code (QMP, HMP and main emulator startup).

The HMP and main emulator startup code also share
further logic that extracts the qom-type & id
values from a qdict.

We soon need to use this logic from qemu-img, qemu-io
and qemu-nbd too, but don't want those to depend on
the monitor, nor do we want to duplicate the code.

To avoid this, move some code out of qmp.c and hmp.c
adding new methods to qom/object_interfaces.c

 - user_creatable_add - takes a QDict holding a full
   object definition & instantiates it
 - user_creatable_add_type - takes an ID, type name,
   and QDict holding object properties & instantiates
   it
 - user_creatable_add_opts - takes a QemuOpts holding
   a full object definition & instantiates it
 - user_creatable_add_opts_foreach - variant on
   user_creatable_add_opts which can be directly used
   in conjunction with qemu_opts_foreach.
 - user_creatable_del - takes an ID and deletes the
   corresponding object

The existing code is updated to use these new methods.

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


  Commit: 0ab3b3375b362e4ea53714e8448eaf60d311daac
      
https://github.com/qemu/qemu/commit/0ab3b3375b362e4ea53714e8448eaf60d311daac
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M qemu-nbd.c
    M qemu-nbd.texi

  Log Message:
  -----------
  qemu-nbd: add support for --object command line arg

Allow creation of user creatable object types with qemu-nbd
via a new --object command line arg. This will be used to supply
passwords and/or encryption keys to the various block driver
backends via the recently added 'secret' object type.

 # printf letmein > mypasswd.txt
 # qemu-nbd --object secret,id=sec0,file=mypasswd.txt \
      ...other nbd args...

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


  Commit: 064097d919508e8636b220baedb52b382b9b07c6
      
https://github.com/qemu/qemu/commit/064097d919508e8636b220baedb52b382b9b07c6
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M Makefile
    M block/nbd-client.c
    M block/nbd-client.h
    M block/nbd.c
    M qemu-img.c
    M qemu-io.c
    M tests/Makefile

  Log Message:
  -----------
  nbd: convert block client to use I/O channels for connection setup

This converts the NBD block driver client to use the QIOChannelSocket
class for initial connection setup. The NbdClientSession struct has
two pointers, one to the master QIOChannelSocket providing the raw
data channel, and one to a QIOChannel which is the current channel
used for I/O. Initially the two point to the same object, but when
TLS support is added, they will point to different objects.

The qemu-img & qemu-io tools now need to use MODULE_INIT_QOM to
ensure the QIOChannel object classes are registered. The qemu-nbd
tool already did this.

In this initial conversion though, all I/O is still actually done
using the raw POSIX sockets APIs.

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


  Commit: d0d6ff584d0f715ae5c9b934b1846c8760b298f0
      
https://github.com/qemu/qemu/commit/d0d6ff584d0f715ae5c9b934b1846c8760b298f0
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M qemu-nbd.c

  Log Message:
  -----------
  nbd: convert qemu-nbd server to use I/O channels for connection setup

This converts the qemu-nbd server to use the QIOChannelSocket
class for initial listener socket setup and accepting of client
connections. Actual I/O is still being performed against the
socket file descriptor using the POSIX socket APIs.

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


  Commit: ae39827802bc2aa781137d2f41bab0b60acd4e63
      
https://github.com/qemu/qemu/commit/ae39827802bc2aa781137d2f41bab0b60acd4e63
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M blockdev-nbd.c

  Log Message:
  -----------
  nbd: convert blockdev NBD server to use I/O channels for connection setup

This converts the blockdev NBD server to use the QIOChannelSocket
class for initial listener socket setup and accepting of client
connections. Actual I/O is still being performed against the
socket file descriptor using the POSIX socket APIs.

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


  Commit: 1c778ef729dd50d4b06780af1f44b69c63c532f8
      
https://github.com/qemu/qemu/commit/1c778ef729dd50d4b06780af1f44b69c63c532f8
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M block/nbd-client.c
    M blockdev-nbd.c
    M include/block/nbd.h
    M nbd/client.c
    M nbd/common.c
    M nbd/nbd-internal.h
    M nbd/server.c
    M qemu-nbd.c

  Log Message:
  -----------
  nbd: convert to using I/O channels for actual socket I/O

Now that all callers are converted to use I/O channels for
initial connection setup, it is possible to switch the core
NBD protocol handling core over to use QIOChannel APIs for
actual sockets I/O.

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


  Commit: f72d705f0de9ec49248e72cf888624994f09eda2
      
https://github.com/qemu/qemu/commit/f72d705f0de9ec49248e72cf888624994f09eda2
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M nbd/client.c

  Log Message:
  -----------
  nbd: invert client logic for negotiating protocol version

The nbd_receive_negotiate() method takes different code
paths based on whether 'name == NULL', and then checks
the expected protocol version in each branch.

This patch inverts the logic, so that it takes different
code paths based on what protocol version it receives and
then checks if name is NULL or not as needed.

This facilitates later code which allows the client to
be capable of using the new style protocol regardless
of whether an export name is listed or not.

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


  Commit: 26afa868dbd8641070c0a8d851b082b603c04fa1
      
https://github.com/qemu/qemu/commit/26afa868dbd8641070c0a8d851b082b603c04fa1
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M nbd/server.c

  Log Message:
  -----------
  nbd: make server compliant with fixed newstyle spec

If the client does not request the fixed new style protocol,
then we should only accept NBD_OPT_EXPORT_NAME. All other
options are only valid when fixed new style has been activated.

The qemu-nbd client doesn't currently request fixed new style
protocol, but this change won't break qemu-nbd, because it
fortunately only ever uses NBD_OPT_EXPORT_NAME, so was never
triggering the non-compliant server behaviour.

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


  Commit: e2a9d9a39d55fc3a0df387df05497b4b47d2dd83
      
https://github.com/qemu/qemu/commit/e2a9d9a39d55fc3a0df387df05497b4b47d2dd83
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M nbd/client.c

  Log Message:
  -----------
  nbd: make client request fixed new style if advertised

If the server advertises support for the fixed new style
negotiation, the client should in turn enable new style.
This will allow the client to negotiate further NBD
options besides the export name.

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


  Commit: 3d4b2f9c9449ee1acdb1a488177204ebfdaccd0d
      
https://github.com/qemu/qemu/commit/3d4b2f9c9449ee1acdb1a488177204ebfdaccd0d
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M qemu-nbd.c
    M qemu-nbd.texi

  Log Message:
  -----------
  nbd: allow setting of an export name for qemu-nbd server

The qemu-nbd server currently always uses the old style protocol
since it never sets any export name. This is a problem because
future TLS support will require use of the new style protocol
negotiation.

This adds "--exportname NAME" / "-x NAME" arguments to qemu-nbd
which allow the user to set an explicit export name. When an
export name is set the server will always use the new style
NBD protocol.

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


  Commit: 9344e5f554690d5e379b5426daebadef7c87baf5
      
https://github.com/qemu/qemu/commit/9344e5f554690d5e379b5426daebadef7c87baf5
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M nbd/client.c
    M nbd/server.c
    M tests/qemu-iotests/140.out
    M tests/qemu-iotests/143.out

  Log Message:
  -----------
  nbd: always query export list in fixed new style protocol

With the new style protocol, the NBD client will currenetly
send NBD_OPT_EXPORT_NAME as the first (and indeed only)
option it wants. The problem is that the NBD protocol spec
does not allow for returning an error message with the
NBD_OPT_EXPORT_NAME option. So if the server mandates use
of TLS, the client will simply see an immediate connection
close after issuing NBD_OPT_EXPORT_NAME which is not user
friendly.

To improve this situation, if we have the fixed new style
protocol, we can sent NBD_OPT_LIST as the first option
to query the list of server exports. We can check for our
named export in this list and raise an error if it is not
found, instead of going ahead and sending NBD_OPT_EXPORT_NAME
with a name that we know will be rejected.

This improves the error reporting both in the case that the
server required TLS, and in the case that the client requested
export name does not exist on the server.

If the server does not support NBD_OPT_LIST, we just ignore
that and carry on with NBD_OPT_EXPORT_NAME as before.

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


  Commit: 69b49502d8b7b582af79fac5bef7b7ccc2dc9c1e
      
https://github.com/qemu/qemu/commit/69b49502d8b7b582af79fac5bef7b7ccc2dc9c1e
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M nbd/client.c
    M nbd/server.c

  Log Message:
  -----------
  nbd: use "" as a default export name if none provided

If the user does not provide an export name and the server
is running the new style protocol, where export names are
mandatory, use "" as the default export name if the user
has not specified any. "" is defined in the NBD protocol
as the default name to use in such scenarios.

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


  Commit: f95910fe6bbf64bb9b5cea7546a1778ba96ce782
      
https://github.com/qemu/qemu/commit/f95910fe6bbf64bb9b5cea7546a1778ba96ce782
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M block/nbd-client.c
    M blockdev-nbd.c
    M include/block/nbd.h
    M nbd/client.c
    M nbd/common.c
    M nbd/nbd-internal.h
    M nbd/server.c
    M qemu-nbd.c

  Log Message:
  -----------
  nbd: implement TLS support in the protocol negotiation

This extends the NBD protocol handling code so that it is capable
of negotiating TLS support during the connection setup. This involves
requesting the STARTTLS protocol option before any other NBD options.

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


  Commit: 75822a12c046646684bc8cad6296842b60e7b6bb
      
https://github.com/qemu/qemu/commit/75822a12c046646684bc8cad6296842b60e7b6bb
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M block/nbd-client.c
    M block/nbd-client.h
    M block/nbd.c

  Log Message:
  -----------
  nbd: enable use of TLS with NBD block driver

This modifies the NBD driver so that it is possible to request
use of TLS. This is done by providing the 'tls-creds' parameter
with the ID of a previously created QCryptoTLSCreds object.

For example

  $QEMU -object tls-creds-x509,id=tls0,endpoint=client,\
          dir=/home/berrange/security/qemutls \
  -drive driver=nbd,host=localhost,port=9000,tls-creds=tls0

The client will drop the connection if the NBD server does not
provide TLS.

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


  Commit: 145614a112a8e67d6c84b26faaf2b2002e17d9be
      
https://github.com/qemu/qemu/commit/145614a112a8e67d6c84b26faaf2b2002e17d9be
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M qemu-nbd.c
    M qemu-nbd.texi

  Log Message:
  -----------
  nbd: enable use of TLS with qemu-nbd server

This modifies the qemu-nbd program so that it is possible to
request the use of TLS with the server. It simply adds a new
command line option --tls-creds which is used to provide the
ID of a QCryptoTLSCreds object previously created via the
--object command line option.

For example

  qemu-nbd --object tls-creds-x509,id=tls0,endpoint=server,\
              dir=/home/berrange/security/qemutls \
     --tls-creds tls0 \
     --exportname default

TLS requires the new style NBD protocol, so if no export name
is set (via --export-name), then we use the default NBD protocol
export name ""

TLS is only supported when using an IPv4/IPv6 socket listener.
It is not possible to use with UNIX sockets, which includes
when connecting the NBD server to a host device.

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


  Commit: ddffee3904828f11d596a13bd3c8960d747c66d8
      
https://github.com/qemu/qemu/commit/ddffee3904828f11d596a13bd3c8960d747c66d8
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M blockdev-nbd.c
    M hmp.c
    M qapi/block.json
    M qmp-commands.hx

  Log Message:
  -----------
  nbd: enable use of TLS with nbd-server-start command

This modifies the nbd-server-start QMP command so that it
is possible to request use of TLS. This is done by adding
a new optional parameter "tls-creds" which provides the ID
of a previously created QCryptoTLSCreds object instance.

TLS is only supported when using an IPv4/IPv6 socket listener.

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


  Commit: 3fc63c3f339a61f4e4526f88150927424744f687
      
https://github.com/qemu/qemu/commit/3fc63c3f339a61f4e4526f88150927424744f687
  Author: Peter Maydell <address@hidden>
  Date:   2016-02-16 (Tue, 16 Feb 2016)

  Changed paths:
    M Makefile
    M block/nbd-client.c
    M block/nbd-client.h
    M block/nbd.c
    M blockdev-nbd.c
    M hmp.c
    M hw/ipmi/ipmi_bmc_sim.c
    M hw/scsi/mptconfig.c
    M hw/scsi/mptsas.c
    M include/block/nbd.h
    M include/monitor/monitor.h
    M include/qom/object_interfaces.h
    M migration/ram.c
    M nbd/client.c
    M nbd/common.c
    M nbd/nbd-internal.h
    M nbd/server.c
    M qapi/block.json
    M qemu-char.c
    M qemu-img.c
    M qemu-io.c
    M qemu-nbd.c
    M qemu-nbd.texi
    M qmp-commands.hx
    M qmp.c
    M qom/object_interfaces.c
    M scripts/checkpatch.pl
    M tests/Makefile
    M tests/qemu-iotests/140.out
    M tests/qemu-iotests/143.out
    M vl.c

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

* Coverity fixes for IPMI and mptsas
* qemu-char fixes from Daniel and Marc-André
* Bug fixes that break qemu-iotests
* Changes to fix reset from panicked state
* checkpatch false positives for designated initializers
* TLS support in the NBD servers and clients

# gpg: Signature made Tue 16 Feb 2016 16:27:17 GMT using RSA key ID 78C7AE83
# gpg: Good signature from "Paolo Bonzini <address@hidden>"
# gpg:                 aka "Paolo Bonzini <address@hidden>"

* remotes/bonzini/tags/for-upstream: (28 commits)
  nbd: enable use of TLS with nbd-server-start command
  nbd: enable use of TLS with qemu-nbd server
  nbd: enable use of TLS with NBD block driver
  nbd: implement TLS support in the protocol negotiation
  nbd: use "" as a default export name if none provided
  nbd: always query export list in fixed new style protocol
  nbd: allow setting of an export name for qemu-nbd server
  nbd: make client request fixed new style if advertised
  nbd: make server compliant with fixed newstyle spec
  nbd: invert client logic for negotiating protocol version
  nbd: convert to using I/O channels for actual socket I/O
  nbd: convert blockdev NBD server to use I/O channels for connection setup
  nbd: convert qemu-nbd server to use I/O channels for connection setup
  nbd: convert block client to use I/O channels for connection setup
  qemu-nbd: add support for --object command line arg
  qom: add helpers for UserCreatable object types
  ipmi: sensor number should not exceed MAX_SENSORS
  mptsas: fix wrong formula
  mptsas: fix memory leak
  mptsas: add missing va_end
  ...

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


Compare: https://github.com/qemu/qemu/compare/250f53ddaac3...3fc63c3f339a

reply via email to

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