qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 89aa0d: nbd/client: fix nbd_negotiate_simple_


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 89aa0d: nbd/client: fix nbd_negotiate_simple_meta_context
Date: Fri, 04 May 2018 07:44:10 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 89aa0d87634e2cb98517509dc8bdb876f26ecf8b
      
https://github.com/qemu/qemu/commit/89aa0d87634e2cb98517509dc8bdb876f26ecf8b
  Author: Vladimir Sementsov-Ogievskiy <address@hidden>
  Date:   2018-05-04 (Fri, 04 May 2018)

  Changed paths:
    M nbd/client.c

  Log Message:
  -----------
  nbd/client: fix nbd_negotiate_simple_meta_context

Initialize received variable. Otherwise, is is possible for server to
answer without any contexts, but we will set context_id to something
random (received_id is not initialized too) and return 1, which is
wrong.

To solve it, just initialize received to false. Initialize received_id
too, just to make all possible checkers happy.

Bug was introduced in 78a33ab58782efdb206de14 "nbd: BLOCK_STATUS for
standard get_block_status function: client part" with the whole
function.

Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
CC: address@hidden
Signed-off-by: Eric Blake <address@hidden>


  Commit: 16a2227893dc1d5cad78ed376ad1d7e300978fbe
      
https://github.com/qemu/qemu/commit/16a2227893dc1d5cad78ed376ad1d7e300978fbe
  Author: Vladimir Sementsov-Ogievskiy <address@hidden>
  Date:   2018-05-04 (Fri, 04 May 2018)

  Changed paths:
    M migration/block-dirty-bitmap.c

  Log Message:
  -----------
  migration/block-dirty-bitmap: fix memory leak in dirty_bitmap_load_bits

Release buf on error path too.

Bug was introduced in b35ebdf076d697bc "migration: add postcopy
migration of dirty bitmaps" with the whole function.

Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
CC: address@hidden
Signed-off-by: Eric Blake <address@hidden>


  Commit: e475d108f1b3d3163f0affea67cdedbe5fc9752b
      
https://github.com/qemu/qemu/commit/e475d108f1b3d3163f0affea67cdedbe5fc9752b
  Author: Eric Blake <address@hidden>
  Date:   2018-05-04 (Fri, 04 May 2018)

  Changed paths:
    M nbd/client.c

  Log Message:
  -----------
  nbd/client: Fix error messages during NBD_INFO_BLOCK_SIZE

A missing space makes for poor error messages, and sizes can't
go negative.  Also, we missed diagnosing a server that sends
a maximum block size less than the minimum.

Fixes: 081dd1fe
CC: address@hidden
Signed-off-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>


  Commit: acfd8f7a5f92e703d2d046cbe3d510008a697194
      
https://github.com/qemu/qemu/commit/acfd8f7a5f92e703d2d046cbe3d510008a697194
  Author: Eric Blake <address@hidden>
  Date:   2018-05-04 (Fri, 04 May 2018)

  Changed paths:
    M block/nbd-client.c

  Log Message:
  -----------
  nbd/client: Relax handling of large NBD_CMD_BLOCK_STATUS reply

The NBD spec is proposing a relaxation of NBD_CMD_BLOCK_STATUS
where a server may have the final extent per context give a
length beyond the original request, if it can easily prove that
subsequent bytes have the same status, on the grounds that a
client can take advantage of this information for fewer block
status requests.  Since qemu 2.12 as a client always sends
NBD_CMD_FLAG_REQ_ONE, and rejects a server that sends extra
length, the upstream NBD spec will probably limit this behavior
to clients that don't request REQ_ONE semantics; but it doesn't
hurt to relax qemu to always be permissive of this server
behavior, even if it continues to use REQ_ONE.

CC: address@hidden
Signed-off-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Reviewed-by:  Vladimir Sementsov-Ogievskiy <address@hidden>


  Commit: c8b7e627b4269a3bc3ae41d9f420547a47e6d9b9
      
https://github.com/qemu/qemu/commit/c8b7e627b4269a3bc3ae41d9f420547a47e6d9b9
  Author: Peter Maydell <address@hidden>
  Date:   2018-05-04 (Fri, 04 May 2018)

  Changed paths:
    M block/nbd-client.c
    M migration/block-dirty-bitmap.c
    M nbd/client.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/ericb/tags/pull-nbd-2018-05-04' into 
staging

nbd patches for 2018-05-04

- Vladimir Sementsov-Ogievskiy: 0/2 fix coverity bugs
- Eric Blake: nbd/client: Fix error messages during NBD_INFO_BLOCK_SIZE
- Eric Blake: nbd/client: Relax handling of large NBD_CMD_BLOCK_STATUS reply

# gpg: Signature made Fri 04 May 2018 14:25:55 BST
# gpg:                using RSA key A7A16B4A2527436A
# gpg: Good signature from "Eric Blake <address@hidden>"
# gpg:                 aka "Eric Blake (Free Software Programmer) 
<address@hidden>"
# gpg:                 aka "[jpeg image of size 6874]"
# Primary key fingerprint: 71C2 CC22 B1C4 6029 27D2  F3AA A7A1 6B4A 2527 436A

* remotes/ericb/tags/pull-nbd-2018-05-04:
  nbd/client: Relax handling of large NBD_CMD_BLOCK_STATUS reply
  nbd/client: Fix error messages during NBD_INFO_BLOCK_SIZE
  migration/block-dirty-bitmap: fix memory leak in dirty_bitmap_load_bits
  nbd/client: fix nbd_negotiate_simple_meta_context

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


Compare: https://github.com/qemu/qemu/compare/7c867af89a43...c8b7e627b426
      **NOTE:** This service been marked for deprecation: 
https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.

reply via email to

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