qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 9dc44a: os: don't corrupt pre-existing memory


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 9dc44a: os: don't corrupt pre-existing memory-backend data...
Date: Wed, 15 Mar 2017 11:00:15 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 9dc44aa5829eb3131a01378a738dee28a382bbc1
      
https://github.com/qemu/qemu/commit/9dc44aa5829eb3131a01378a738dee28a382bbc1
  Author: Daniel P. Berrange <address@hidden>
  Date:   2017-03-15 (Wed, 15 Mar 2017)

  Changed paths:
    M util/oslib-posix.c

  Log Message:
  -----------
  os: don't corrupt pre-existing memory-backend data with prealloc

When using a memory-backend object with prealloc turned on, QEMU
will memset() the first byte in every memory page to zero. While
this might have been acceptable for memory backends associated
with RAM, this corrupts application data for NVDIMMs.

Instead of setting every page to zero, read the current byte
value and then just write that same value back, so we are not
corrupting the original data. Directly write the value instead
of memset()ing it, since there's no benefit to memset for a
single byte write.

Signed-off-by: Daniel P. Berrange <address@hidden>
Reviewed-by: Andrea Arcangeli <address@hidden>
Message-id: address@hidden
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 7584bf5e6fcb444a75687314ab9d06d2ba1f8e4e
      
https://github.com/qemu/qemu/commit/7584bf5e6fcb444a75687314ab9d06d2ba1f8e4e
  Author: Peter Maydell <address@hidden>
  Date:   2017-03-15 (Wed, 15 Mar 2017)

  Changed paths:
    M util/oslib-posix.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into 
staging

# gpg: Signature made Wed 15 Mar 2017 05:05:04 GMT
# gpg:                using RSA key 0x9CA4ABB381AB73C8
# gpg: Good signature from "Stefan Hajnoczi <address@hidden>"
# gpg:                 aka "Stefan Hajnoczi <address@hidden>"
# Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8

* remotes/stefanha/tags/block-pull-request:
  os: don't corrupt pre-existing memory-backend data with prealloc

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


Compare: https://github.com/qemu/qemu/compare/926e36838842...7584bf5e6fcb

reply via email to

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