[libvirt] [PATCH v2 00/14] Fix race on srv->nclients_unauth and some other changes

John Ferlan jferlan at redhat.com
Thu Dec 21 18:23:13 UTC 2017



On 12/21/2017 09:28 AM, Marc Hartmayer wrote:
> This patch series fixes some locking issues, a memory leak, some other
> cosmetic changes, and it fixes a bug that led to a libvirtd which
> doesn't accept new connections.
> 
> Changelog:
>  v1->v2:
>   + Added r-b's
>   + Patch 2: Replaced the patch with a new fix for the memory leak
>   + Patch 5: Introduce *Locked and simplified the function as John suggested
>   + Patch 7: Fixed coding style issues, merged in the former patch 9, reworded commit message
>   + Patch 9: (former patch 10) reworded the commit message and fixed coding style issues
>   + Patch 10: (former patch 11) Fixed coding style issues, moved check
>               to ExecRestart, reworded function description of
>               virNetServerSetClientAuthCompletedLocked
>   + New patch 14: Add locking around the critical section in remoteSASLFinish
> 
> Marc Hartmayer (14):
>   rpc: Remove duplicate declaration of virNetServerAddClient
>   tests: virnetserverclienttest: Fix memory leak @client
>   rpc: Use the enum value instead of a numerical value
>   rpc: Add typedef for the anonymous enum used for authentication
>     methods
>   rpc: Be more precise in which cases the authentication is needed and
>     introduce *Locked
>   rpc: First test if authentication is required
>   rpc: Refactor the condition whether a client needs authentication
>   rpc: Correct locking and simplify the function
>   rpc: Introduce virNetServerSetClientAuthenticated
>   rpc: virnetserver: Fix race on srv->nclients_unauth
>   tests: virnetdaemontest: Enable testing for 'auth_pending'
>   rpc: Remove virNetServerClientNeedAuthLocked
>   rpc: Replace virNetServerClientNeedAuth with
>     virNetServerClientIsAuthenticated
>   remote: add locking around the critical section in remoteSASLFinish
> 
>  daemon/remote.c                                    |  33 +++---
>  src/libvirt_remote.syms                            |  14 +--
>  src/rpc/virnetserver.c                             |  82 +++++++++-----
>  src/rpc/virnetserver.h                             |   6 +-
>  src/rpc/virnetserverclient.c                       | 118 ++++++++++++++++-----
>  src/rpc/virnetserverclient.h                       |  11 +-
>  src/rpc/virnetserverprogram.c                      |   9 +-
>  src/rpc/virnetserverservice.h                      |   4 +-
>  .../input-data-client-auth-pending-failure.json    |  44 ++++++++
>  .../input-data-client-auth-pending.json            |  70 ++++++++++++
>  .../virnetdaemondata/output-data-admin-nomdns.json |   4 +
>  .../output-data-admin-server-names.json            |   4 +
>  .../virnetdaemondata/output-data-anon-clients.json |   2 +
>  ...s.json => output-data-client-auth-pending.json} |   4 +-
>  tests/virnetdaemondata/output-data-client-ids.json |   2 +
>  .../output-data-client-timestamp.json              |   2 +
>  .../output-data-initial-nomdns.json                |   2 +
>  tests/virnetdaemondata/output-data-initial.json    |   2 +
>  .../output-data-no-keepalive-required.json         |   4 +
>  tests/virnetdaemontest.c                           |   2 +
>  tests/virnetserverclienttest.c                     |   1 +
>  21 files changed, 331 insertions(+), 89 deletions(-)
>  create mode 100644 tests/virnetdaemondata/input-data-client-auth-pending-failure.json
>  create mode 100644 tests/virnetdaemondata/input-data-client-auth-pending.json
>  copy tests/virnetdaemondata/{output-data-client-ids.json => output-data-client-auth-pending.json} (94%)
> 

For patches 1-13,

Reviewed-by: John Ferlan <jferlan at redhat.com>

Before pushing - probably should wait to make sure there's no other
objections from anyone else. I'm guessing Dan will take a look.

John




More information about the libvir-list mailing list