[PULL 16/56] hw/block/nvme: Support Zoned Namespace Command Set

2021-02-09 Thread Klaus Jensen
From: Dmitry Fomichev The emulation code has been changed to advertise NVM Command Set when "zoned" device property is not set (default) and Zoned Namespace Command Set otherwise. Define values and structures that are needed to support Zoned Namespace Command Set (NVMe TP 4053) in PCI NVMe contr

[PULL 13/56] hw/block/nvme: Add support for Namespace Types

2021-02-09 Thread Klaus Jensen
From: Niklas Cassel Define the structures and constants required to implement Namespace Types support. Namespace Types introduce a new command set, "I/O Command Sets", that allows the host to retrieve the command sets associated with a namespace. Introduce support for the command set and enable

[PULL 21/56] hw/block/nvme: conditionally enable DULBE for zoned namespaces

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen The device uses the BDRV_BLOCK_ZERO flag to determine the "deallocated" status of logical blocks. Since the zoned namespaces command set specification defines that logical blocks SHALL be marked as deallocated when the zone is in the Empty or Offline states, DULBE can only be s

[PULL 26/56] hw/block/nvme: add missing string representations for commands

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen Add missing string representations for a couple of new commands. Signed-off-by: Klaus Jensen Tested-by: Dmitry Fomichev Reviewed-by: Dmitry Fomichev --- hw/block/nvme.h | 4 1 file changed, 4 insertions(+) diff --git a/hw/block/nvme.h b/hw/block/nvme.h index b7fbcca3

[PULL 19/56] hw/block/nvme: Document zoned parameters in usage text

2021-02-09 Thread Klaus Jensen
From: Dmitry Fomichev Added brief descriptions of the new device properties that are now available to users to configure features of Zoned Namespace Command Set in the emulator. This patch is for documentation only, no functionality change. Signed-off-by: Dmitry Fomichev Reviewed-by: Niklas Ca

[PULL 18/56] hw/block/nvme: Support Zone Descriptor Extensions

2021-02-09 Thread Klaus Jensen
From: Dmitry Fomichev Zone Descriptor Extension is a label that can be assigned to a zone. It can be set to an Empty zone and it stays assigned until the zone is reset. This commit adds a new optional module property, "zoned.descr_ext_size". Its value must be a multiple of 64 bytes. If this valu

[PULL 28/56] hw/block/nvme: Correct error status for unaligned ZA

2021-02-09 Thread Klaus Jensen
From: Dmitry Fomichev TP 4053 says (in section 2.3.1.1) - ... if a Zone Append command specifies a ZSLBA that is not the lowest logical block address in that zone, then the controller shall abort that command with a status code of Invalid Field In Command. In the code, Zone Invalid Write is retu

[PULL 17/56] hw/block/nvme: Introduce max active and open zone limits

2021-02-09 Thread Klaus Jensen
From: Dmitry Fomichev Add two module properties, "zoned.max_active" and "zoned.max_open" to control the maximum number of zones that can be active or open. Once these variables are set to non-default values, these limits are checked during I/O and Too Many Active or Too Many Open command status i

[PULL 20/56] hw/block/nvme: fix for non-msix machines

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen Commit 1c0c2163aa08 ("hw/block/nvme: verify msix_init_exclusive_bar() return value") had the unintended effect of breaking support on several platforms not supporting MSI-X. Still check for errors, but only report that MSI-X is unsupported instead of bailing out. Fixes: 1c0c2

[PULL 24/56] hw/block/nvme: enum style fix

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen Align with existing style and use a typedef for header-file enums. Signed-off-by: Klaus Jensen Tested-by: Dmitry Fomichev Reviewed-by: Dmitry Fomichev --- hw/block/nvme-ns.h | 4 ++-- include/block/nvme.h | 4 ++-- hw/block/nvme.c | 19 +-- 3 files

[PULL 45/56] hw/block/nvme: disable PMR at boot up

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen The PMR should not be enabled at boot up. Disable the PMR MemoryRegion initially and implement MMIO for PMRCTL, allowing the host to enable the PMR explicitly. Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- hw/block/nvme.c | 14 -- 1 file changed, 12 i

[PULL 22/56] hw/block/nvme: fix shutdown/reset logic

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen A shutdown is only about flushing stuff. It is the host that should delete any queues, so do not perform a reset here. Also, on shutdown, make sure that the PMR is flushed if in use. Fixes: 368f4e752cf9 ("hw/block/nvme: Process controller reset and shutdown differently") Sig

[PULL 25/56] hw/block/nvme: zero out zones on reset

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen The zoned command set specification states that "All logical blocks in a zone *shall* be marked as deallocated when [the zone is reset]". Since the device guarantees 0x00 to be read from deallocated blocks we have to issue a pwrite_zeroes since we cannot be sure that a discard

[PULL 27/56] hw/block/nvme: remove unnecessary check for append

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen nvme_io_cmd already checks if the namespace supports the Zone Append command, so the removed check is dead code. Signed-off-by: Klaus Jensen Tested-by: Dmitry Fomichev Reviewed-by: Dmitry Fomichev --- hw/block/nvme.c | 4 1 file changed, 4 deletions(-) diff --git a/h

[PULL 30/56] hw/block/nvme: open code for volatile write cache

2021-02-09 Thread Klaus Jensen
From: Minwoo Im Volatile Write Cache(VWC) feature is set in nvme_ns_setup() in the initial time. This feature is related to block device backed, but this feature is controlled in controller level via Set/Get Features command. This patch removed dependency between nvme and nvme-ns to manage the

[PULL 39/56] hw/block/nvme: fix 64 bit register hi/lo split writes

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen 64 bit registers like ASQ and ACQ should be writable by both a hi/lo 32 bit write combination as well as a plain 64 bit write. The spec does not define ordering on the hi/lo split, but the code currently assumes that the low order bits are written first. Additionally, the code

[PULL 29/56] hw/block/nvme: remove unused argument in nvme_ns_init_zoned

2021-02-09 Thread Klaus Jensen
From: Minwoo Im nvme_ns_init_zoned() has no use for given NvmeCtrl object. Signed-off-by: Minwoo Im Signed-off-by: Klaus Jensen --- hw/block/nvme-ns.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/block/nvme-ns.c b/hw/block/nvme-ns.c index 9be170abb78d..d35c2925ec

[PULL 33/56] hw/block/nvme: remove unused argument in nvme_ns_setup

2021-02-09 Thread Klaus Jensen
From: Minwoo Im nvme_ns_setup() finally does not have nothing to do with NvmeCtrl instance. Signed-off-by: Minwoo Im Signed-off-by: Klaus Jensen --- hw/block/nvme-ns.h | 2 +- hw/block/nvme-ns.c | 4 ++-- hw/block/nvme.c| 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git

[PULL 32/56] hw/block/nvme: split setup and register for namespace

2021-02-09 Thread Klaus Jensen
From: Minwoo Im In NVMe, namespace is being attached to process I/O. We register NVMe namespace to a controller via nvme_register_namespace() during nvme_ns_setup(). This is main reason of receiving NvmeCtrl object instance to this function to map the namespace to a controller. To make namespa

[PULL 37/56] hw/block/nvme: trigger async event during injecting smart warning

2021-02-09 Thread Klaus Jensen
From: zhenwei pi During smart critical warning injection by setting property from QMP command, also try to trigger asynchronous event. Suggested by Keith, if a event has already been raised, there is no need to enqueue the duplicate event any more. Signed-off-by: zhenwei pi [k.jensen: fix typo

[PULL 48/56] hw/block/nvme: bump to v1.4

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen With the new CMB logic in place, bump the implemented specification version to v1.4 by default. This requires adding the setting the CNTRLTYPE field and modifying the VWC field since 0x00 is no longer a valid value for bits 2:1. Reviewed-by: Keith Busch Signed-off-by: Klaus

[PULL 40/56] hw/block/nvme: indicate CMB support through controller capabilities register

2021-02-09 Thread Klaus Jensen
From: Andrzej Jakowski This patch sets CMBS bit in controller capabilities register when user configures NVMe driver with CMB support, so capabilites are correctly reported to guest OS. Signed-off-by: Andrzej Jakowski Reviewed-by: Maxim Levitsky Reviewed-by: Minwoo Im Reviewed-by: Keith Busch

[PULL 34/56] hw/block/nvme: fix zone write finalize

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen The zone write pointer is unconditionally advanced, even for write faults. Make sure that the zone is always transitioned to Full if the write pointer reaches zone capacity. Cc: Dmitry Fomichev Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- hw/block/nvme.c | 10 +

[PULL 43/56] hw/block/nvme: rename PMR/CMB shift/mask fields

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen Use the correct field names. Reviewed-by: Minwoo Im Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- include/block/nvme.h | 18 +- hw/block/nvme.c | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/block/nvme.h b/

[PULL 31/56] hw/block/nvme: remove unused argument in nvme_ns_init_blk

2021-02-09 Thread Klaus Jensen
From: Minwoo Im Removed no longer used aregument NvmeCtrl object in nvme_ns_init_blk(). Signed-off-by: Minwoo Im Signed-off-by: Klaus Jensen --- hw/block/nvme-ns.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/block/nvme-ns.c b/hw/block/nvme-ns.c index 7a5a7798379

[PULL 38/56] hw/block/nvme: add size to mmio read/write trace events

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen Add the size of the mmio read/write to the trace event. Reviewed-by: Minwoo Im Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- hw/block/nvme.c | 4 ++-- hw/block/trace-events | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/hw/block/n

[PULL 36/56] hw/block/nvme: add smart_critical_warning property

2021-02-09 Thread Klaus Jensen
From: zhenwei pi There is a very low probability that hitting physical NVMe disk hardware critical warning case, it's hard to write & test a monitor agent service. For debugging purposes, add a new 'smart_critical_warning' property to emulate this situation. The orignal version of this change i

[PULL 50/56] hw/block/nvme: error if drive less than a zone size

2021-02-09 Thread Klaus Jensen
From: Minwoo Im If a user assigns a backing device with less capacity than the size of a single zone, the namespace capacity will be reported as zero and the kernel will silently fail to allocate the namespace. This patch errors out in case that the backing device cannot accomodate at least a si

[PULL 35/56] nvme: introduce bit 5 for critical warning

2021-02-09 Thread Klaus Jensen
From: zhenwei pi According to NVM Express v1.4, Section 5.14.1.2 ("SMART / Health Information"), introduce bit 5 for "Persistent Memory Region has become read-only or unreliable". Signed-off-by: zhenwei pi [k.jensen: minor brush ups in commit message] Signed-off-by: Klaus Jensen --- include/b

[PULL 44/56] hw/block/nvme: remove redundant zeroing of PMR registers

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen The controller registers are initially zero. Remove the redundant zeroing. Reviewed-by: Keith Busch Reviewed-by: Minwoo Im Signed-off-by: Klaus Jensen --- hw/block/nvme.c | 34 -- 1 file changed, 34 deletions(-) diff --git a/hw/block/nvme.c

[PULL 46/56] hw/block/nvme: add PMR RDS/WDS support

2021-02-09 Thread Klaus Jensen
From: Naveen Nagar Add support for the PMRMSCL and PMRMSCU MMIO registers. This allows adding RDS/WDS support for PMR as well. Reviewed-by: Keith Busch Signed-off-by: Naveen Nagar Signed-off-by: Klaus Jensen --- hw/block/nvme.h | 6 ++- hw/block/nvme.c | 122 +++

[PULL 55/56] hw/block/nvme: fix zone boundary check for append

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen When a zone append is processed the controller checks that validity of the write before assigning the LBA to the append command. This causes the boundary check to be wrong. Fix this by checking the write *after* assigning the LBA. Remove the append special case from the nvme_c

[PULL 42/56] hw/block/nvme: allow cmb and pmr to coexist

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen With BAR 4 now free to use, allow PMR and CMB to be enabled simultaneously. Reviewed-by: Minwoo Im Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- hw/block/nvme.c | 17 - 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/hw/block/nvme.c

[PULL 47/56] hw/block/nvme: move cmb logic to v1.4

2021-02-09 Thread Klaus Jensen
From: Padmakar Kalghatgi Implement v1.4 logic for configuring the Controller Memory Buffer. By default, the v1.4 scheme will be used (CMB must be explicitly enabled by the host), so drivers that only support v1.3 will not be able to use the CMB anymore. To retain the v1.3 behavior, set the boole

[PULL 49/56] hw/block/nvme: lift cmb restrictions

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen The controller now implements v1.4 and we can lift the restrictions on CMB Data Pointer and Command Independent Locations Support (CDPCILS) and CMB Data Pointer Mixed Locations Support (CDPMLS) since the device really does not care about mixed host/cmb pointers in those cases.

[PULL 52/56] hw/block/nvme: fix set feature save field check

2021-02-09 Thread Klaus Jensen
From: Gollu Appalanaidu Currently, no features are saveable, so the current check is not wrong, but add a check against the feature capabilities to make sure this will not regress if saveable features are added later. Signed-off-by: Gollu Appalanaidu Reviewed-by: Klaus Jensen Reviewed-by: Keit

[PULL 41/56] hw/block/nvme: move msix table and pba to BAR 0

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen In the interest of supporting both CMB and PMR to be enabled on the same device, move the MSI-X table and pending bit array out of BAR 4 and into BAR 0. This is a simplified version of the patch contributed by Andrzej Jakowski (see [1]). Leaving the CMB at offset 0 removes the

[PULL 54/56] hw/block/nvme: fix wrong parameter name 'cross_read'

2021-02-09 Thread Klaus Jensen
From: Minwoo Im The actual parameter name is 'cross_read' rather than 'cross_zone_read'. Signed-off-by: Minwoo Im Signed-off-by: Klaus Jensen --- hw/block/nvme.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/block/nvme.c b/hw/block/nvme.c index 2335739bdb17..e562d7467

[PULL 53/56] hw/block/nvme: align with existing style

2021-02-09 Thread Klaus Jensen
From: Gollu Appalanaidu Change status checks to align with the existing style and remove the explicit check against NVME_SUCCESS. Cc: Dmitry Fomichev Signed-off-by: Gollu Appalanaidu Reviewed-by: Klaus Jensen Reviewed-by: Keith Busch Reviewed-by: Dmitry Fomichev Signed-off-by: Klaus Jensen

Re: [PATCH RFC] pvrdma: wean code off pvrdma_ring.h kernel header

2021-02-09 Thread Cornelia Huck
On Mon, 8 Feb 2021 13:29:53 -0500 "Michael S. Tsirkin" wrote: > On Fri, Jan 22, 2021 at 07:00:29PM +0100, Cornelia Huck wrote: > > The pvrdma code relies on the pvrdma_ring.h kernel header for some > > basic ring buffer handling. The content of that header isn't very > > exciting, but contains so

[PULL 56/56] hw/block/nvme: refactor the logic for zone write checks

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen Refactor the zone write check logic such that the most "meaningful" error is returned first. That is, first, if the zone is not writable, return an appropriate status code for that. Then, make sure we are actually writing at the write pointer and finally check that we do not cr

[PULL 51/56] hw/block/nvme: fix set feature for error recovery

2021-02-09 Thread Klaus Jensen
From: Gollu Appalanaidu Only enable DULBE if the namespace supports it. Signed-off-by: Gollu Appalanaidu Reviewed-by: Klaus Jensen Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- hw/block/nvme.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/block/nvme.c

Re: [RFC PATCH v2 3/4] block: Support multiple reopening with x-blockdev-reopen

2021-02-09 Thread Vladimir Sementsov-Ogievskiy
08.02.2021 21:44, Alberto Garcia wrote: Signed-off-by: Alberto Garcia --- qapi/block-core.json | 2 +- include/block/block.h | 1 + block.c| 16 +-- blockdev.c | 85 +- tests/qemu-iotests/155 | 9

Re: [RFC PATCH v2 1/4] block: Allow changing bs->file on reopen

2021-02-09 Thread Vladimir Sementsov-Ogievskiy
08.02.2021 21:44, Alberto Garcia wrote: When the x-blockdev-reopen was added it allowed reconfiguring the graph by replacing backing files, but changing the 'file' option was forbidden. Because of this restriction some operations are not possible, notably inserting and removing block filters. Th

Re: [PATCH v1 1/1] MAINTAINERS: Add a SiFIve machine section

2021-02-09 Thread Philippe Mathieu-Daudé
On 2/9/21 3:14 AM, Bin Meng wrote: > On Tue, Feb 9, 2021 at 10:11 AM Alistair Francis > wrote: > > nits: SiFIve => SiFive in the title Reviewed-by: Philippe Mathieu-Daudé

Re: [PATCH] hw/sd/sdhci: Do not modify BlockSizeRegister if transaction in progress

2021-02-09 Thread Bin Meng
Hi Philippe, On Tue, Feb 9, 2021 at 3:34 AM Philippe Mathieu-Daudé wrote: > > Per the "SD Host Controller Simplified Specification Version 2.00" > spec. 'Table 2-4 : Block Size Register': > > Transfer Block Size [...] can be accessed only if no > transaction is executing (i.e., after a transa

Re: [PATCH v5 12/15] qapi/introspect.py: add type hint annotations

2021-02-09 Thread Markus Armbruster
John Snow writes: > On 2/8/21 10:34 AM, Markus Armbruster wrote: >> John Snow writes: >> >>> Signed-off-by: John Snow >>> >>> --- >>> >>> See the next patch for an optional amendment that helps to clarify what >>> _DObject is meant to be. >>> >>> Signed-off-by: John Snow >>> --- >>> scripts

Re: [PATCH] hw/sd/sdhci: Do not modify BlockSizeRegister if transaction in progress

2021-02-09 Thread Mauro Matteo Cascella
On Mon, Feb 8, 2021 at 9:26 PM Philippe Mathieu-Daudé wrote: > > On Mon, Feb 8, 2021 at 8:59 PM Mauro Matteo Cascella > wrote: > > On Mon, Feb 8, 2021 at 8:35 PM Philippe Mathieu-Daudé > > wrote: > > > > > > Per the "SD Host Controller Simplified Specification Version 2.00" > > > spec. 'Table 2

Re: [PATCH] util/cutils: Skip "." when looking for next directory component

2021-02-09 Thread Paolo Bonzini
On 08/02/21 21:57, Stefan Weil wrote: When looking for the next directory component, a "." component is now skipped. This fixes the path(s) used for firmware lookup for the prefix == bindir case which is standard for QEMU on Windows and where the internally used bindir value ends with "/.". Sig

Re: [PATCH v4 11/14] qapi/introspect.py: add type hint annotations

2021-02-09 Thread Markus Armbruster
John Snow writes: > On 2/5/21 8:42 AM, Markus Armbruster wrote: >> John Snow writes: >> >>> On 2/3/21 10:15 AM, Markus Armbruster wrote: John Snow writes: > Signed-off-by: John Snow > --- >scripts/qapi/introspect.py | 115 ++--- >

Re: [PATCH 0/9] hw/block: m25p80: Fix the mess of dummy bytes needed for fast read commands

2021-02-09 Thread Francisco Iglesias
Hello Edgar, On [2021 Feb 08] Mon 16:30:00, Edgar E. Iglesias wrote: >On Mon, Feb 8, 2021 at 3:42 PM Bin Meng wrote: > > On Thu, Jan 21, 2021 at 10:18 PM Francisco Iglesias > wrote: > > > > Hi Bin, > > > > On [2021 Jan 21] Thu 16:59:51, Bin Meng wrote: > >

Re: [PATCH v5 0/4] target/arm: Add support for FEAT_DIT, Data Independent Timing

2021-02-09 Thread Peter Maydell
On Mon, 8 Feb 2021 at 06:57, Rebecca Cran wrote: > > Add support for FEAT_DIT. DIT (Data Independent Timing) is a required > feature for ARMv8.4. > > Changes from v4 to v5: > > o Addressed review feedback. Applied to target-arm.next, thanks. -- PMM

Re: [PATCH] hw/sd/sdhci: Do not modify BlockSizeRegister if transaction in progress

2021-02-09 Thread Philippe Mathieu-Daudé
On 2/9/21 9:28 AM, Bin Meng wrote: > Hi Philippe, > > On Tue, Feb 9, 2021 at 3:34 AM Philippe Mathieu-Daudé wrote: >> >> Per the "SD Host Controller Simplified Specification Version 2.00" >> spec. 'Table 2-4 : Block Size Register': >> >> Transfer Block Size [...] can be accessed only if no >>

Re: [PATCH] hw/sd/sdhci: Do not modify BlockSizeRegister if transaction in progress

2021-02-09 Thread Bin Meng
Hi Philippe, On Tue, Feb 9, 2021 at 5:38 PM Philippe Mathieu-Daudé wrote: > > On 2/9/21 9:28 AM, Bin Meng wrote: > > Hi Philippe, > > > > On Tue, Feb 9, 2021 at 3:34 AM Philippe Mathieu-Daudé > > wrote: > >> > >> Per the "SD Host Controller Simplified Specification Version 2.00" > >> spec. 'Tab

Re: [PATCH v2 1/3] hw/net: Add npcm7xx emc model

2021-02-09 Thread Peter Maydell
On Tue, 9 Feb 2021 at 01:26, Doug Evans wrote: > On Mon, Feb 8, 2021 at 9:17 AM Peter Maydell wrote: >> Don't put local variable declarations in the middle of functions, >> please. Coding style says they should be at the start of a >> block (so, here, the start of the function). It looks like you

Re: [PATCH] hw/sd/sdhci: Do not modify BlockSizeRegister if transaction in progress

2021-02-09 Thread Bin Meng
Oops, hitting "send" by mistake ... On Tue, Feb 9, 2021 at 5:42 PM Bin Meng wrote: > > Hi Philippe, > > On Tue, Feb 9, 2021 at 5:38 PM Philippe Mathieu-Daudé wrote: > > > > On 2/9/21 9:28 AM, Bin Meng wrote: > > > Hi Philippe, > > > > > > On Tue, Feb 9, 2021 at 3:34 AM Philippe Mathieu-Daudé >

Re: [PATCH v2] hw/net: fsl_etsec: Reverse the RCTRL.RSF logic

2021-02-09 Thread Peter Maydell
On Tue, 9 Feb 2021 at 01:22, Bin Meng wrote: > > From: Bin Meng > > Per MPC8548ERM [1] chapter 14.5.3.4.1: > > When RCTRL.RSF is 1, frames less than 64 bytes are accepted upon > a DA match. But currently QEMU does the opposite. > > When RCTRL.RSF is 0, short frames are silently dropped, however >

Re: [PATCH 0/3] fix build failures from incorrectly skipped container build jobs

2021-02-09 Thread Daniel P . Berrangé
On Tue, Feb 09, 2021 at 07:01:49AM +0100, Stefan Weil wrote: > Am 08.02.21 um 19:12 schrieb Daniel P. Berrangé: > > > On Mon, Feb 08, 2021 at 07:08:39PM +0100, Philippe Mathieu-Daudé wrote: > > > On 2/8/21 6:22 PM, Daniel P. Berrangé wrote: > > > > On Mon, Feb 08, 2021 at 04:33:36PM +, Daniel

Re: [PATCH v2] hw/net: fsl_etsec: Reverse the RCTRL.RSF logic

2021-02-09 Thread Bin Meng
Hi Peter, On Tue, Feb 9, 2021 at 5:48 PM Peter Maydell wrote: > > On Tue, 9 Feb 2021 at 01:22, Bin Meng wrote: > > > > From: Bin Meng > > > > Per MPC8548ERM [1] chapter 14.5.3.4.1: > > > > When RCTRL.RSF is 1, frames less than 64 bytes are accepted upon > > a DA match. But currently QEMU does t

Re: [PATCH 1/3] gitlab: always build container images

2021-02-09 Thread Daniel P . Berrangé
On Tue, Feb 09, 2021 at 07:37:51AM +0100, Thomas Huth wrote: > On 08/02/2021 17.33, Daniel P. Berrangé wrote: > [...] > > For example, consider pushing 5 commits, one of which contains a > > dockerfile change. This will trigger a CI pipeline for the > > containers. Now consider you do some more wor

Re: [PULL 00/18] Integration testing patches for 2021-02-08

2021-02-09 Thread Peter Maydell
On Mon, 8 Feb 2021 at 20:21, Philippe Mathieu-Daudé wrote: > > On 2/8/21 9:06 PM, Peter Maydell wrote: > > On Mon, 8 Feb 2021 at 19:58, Philippe Mathieu-Daudé > > wrote: > >> > >> The following changes since commit > >> 5b19cb63d9dfda41b412373b8c9fe14641bcab60: > >> > >> Merge remote-tracking

Re: [PATCH] migration/tls: add error handling in multifd_tls_handshake_thread

2021-02-09 Thread Daniel P . Berrangé
On Tue, Feb 09, 2021 at 03:52:51PM +0800, Hao Wang wrote: > If any error happens during multifd send thread creating (e.g. channel broke > because new domain is destroyed by the dst), multifd_tls_handshake_thread > may exit silently, leaving main migration thread hanging (ram_save_setup -> > multif

Re: [PATCH v6 02/11] hvf: x86: Remove unused definitions

2021-02-09 Thread Roman Bolshakov
On Wed, Jan 20, 2021 at 11:44:35PM +0100, Alexander Graf wrote: > The hvf i386 has a few struct and cpp definitions that are never > used. Remove them. > > Suggested-by: Roman Bolshakov > Signed-off-by: Alexander Graf > Reviewed-by: Roman Bolshakov > Tested-by: Roman Bolshakov > --- Queued, t

Re: [PATCH] hvf: Fetch cr4 before evaluating CPUID(1)

2021-02-09 Thread Roman Bolshakov
On Sat, Jan 23, 2021 at 01:41:29AM +0100, Alexander Graf wrote: > The CPUID function 1 has a bit called OSXSAVE which tells user space the > status of the CR4.OSXSAVE bit. Our generic CPUID function injects that bit > based on the status of CR4. > > With Hypervisor.framework, we do not synchronize

Re: [PATCH] accel/tcg: Add URL of clang bug to comment about our workaround

2021-02-09 Thread Peter Maydell
On Fri, 29 Jan 2021 at 15:19, Alex Bennée wrote: > > > Peter Maydell writes: > > > In cpu_exec() we have a longstanding workaround for compilers which > > do not correctly implement the part of the sigsetjmp()/siglongjmp() > > spec which requires that local variables which are not changed > > bet

Re: [PATCH 07/22] tests/acceptance/virtiofs_submounts.py: evaluate string not length

2021-02-09 Thread Max Reitz
On 04.02.21 14:23, Alex Bennée wrote: Cleber Rosa writes: If the vmlinuz variable is set to anything that evaluates to True, then the respective arguments should be set. If the variable contains an empty string, than it will evaluate to False, and the extra arguments will not be set. This k

Re: [PATCH v3] target/i386/hvf: add vmware-cpuid-freq cpu feature

2021-02-09 Thread Roman Bolshakov
On Fri, Jan 22, 2021 at 06:05:18PM +0300, yaroshchuk2...@gmail.com wrote: > From: Vladislav Yaroshchuk > > For `-accel hvf` cpu_x86_cpuid() is wrapped with hvf_cpu_x86_cpuid() to > add paravirtualization cpuid leaf 0x4010 > https://lkml.org/lkml/2008/10/1/246 > > Leaf 0x4010, Timing Info

Re: [PATCH] target/i386/hvf: add rdmsr 35H MSR_CORE_THREAD_COUNT

2021-02-09 Thread Roman Bolshakov
On Wed, Jan 13, 2021 at 11:53:23PM +0300, yaroshchuk2...@gmail.com wrote: > From: Vladislav Yaroshchuk > > Some guests (ex. Darwin-XNU) can attemp to read this MSR to retrieve and > validate CPU topology comparing it to ACPI MADT content > > MSR description from Intel Manual: > 35H: MSR_CORE_THR

Re: [PATCH] MAINTAINERS: Add gdbstub.h to the "GDB stub" section

2021-02-09 Thread Peter Maydell
On Mon, 8 Feb 2021 at 13:34, Alex Bennée wrote: > > > Peter Maydell writes: > > > The F: patterns in the "GDB stub" section forgot gdbstub.h; add it. > > > > Signed-off-by: Peter Maydell > > --- > > Noticed this because my recent patchset which touched gdbstub.h > > didn't cause check-maintainer

[PATCH v2] hw/block/nvme: use locally assigned QEMU IEEE OUI

2021-02-09 Thread Klaus Jensen
From: Gollu Appalanaidu Commit 6eb7a071292a ("hw/block/nvme: change controller pci id") changed the controller to use a Red Hat assigned PCI Device and Vendor ID, but did not change the IEEE OUI away from the Intel IEEE OUI. Fix that and use the locally assigned QEMU IEEE OUI instead if the `use

Re: [PATCH v2 1/2] migration/tls: fix inverted semantics in multifd_channel_connect

2021-02-09 Thread Daniel P . Berrangé
On Tue, Feb 09, 2021 at 06:42:36PM +0800, Hao Wang wrote: > Function multifd_channel_connect() return "true" to indicate failure, > which is rather confusing. Fix that. > > Signed-off-by: Hao Wang > --- > migration/multifd.c | 10 +- > 1 file changed, 5 insertions(+), 5 deletions(-) Rev

Re: [PATCH v2 2/2] migration/tls: add error handling in multifd_tls_handshake_thread

2021-02-09 Thread Daniel P . Berrangé
On Tue, Feb 09, 2021 at 06:42:37PM +0800, Hao Wang wrote: > If any error happens during multifd send thread creating (e.g. channel broke > because new domain is destroyed by the dst), multifd_tls_handshake_thread > may exit silently, leaving main migration thread hanging (ram_save_setup -> > multif

[PATCH] hw/sd: sdhci: Do not transfer any data when command fails

2021-02-09 Thread Bin Meng
At the end of sdhci_send_command(), it starts a data transfer if the command register indicates a data is associated. However the data transfer should only be initiated when the command execution has succeeded. Cc: qemu-sta...@nongnu.org Fixes: CVE-2020-17380 Fixes: CVE-2020-25085 Reported-by: Ale

[PATCH] Raspberry PI GPIO interrupt support

2021-02-09 Thread Davide Berardi
The bcm2835 GPIOs now generate interrupts. This modification enables QTEST clients to trigger interrupt-based interfaces. Signed-off-by: Davide Berardi --- hw/arm/bcm2835_peripherals.c | 2 + hw/gpio/bcm2835_gpio.c | 105 + hw/intc/bcm2835_ic.c

[PATCH qemu v13] spapr: Implement Open Firmware client interface

2021-02-09 Thread Alexey Kardashevskiy
The PAPR platform which describes an OS environment that's presented by a combination of a hypervisor and firmware. The features it specifies require collaboration between the firmware and the hypervisor. Since the beginning, the runtime component of the firmware (RTAS) has been implemented as a 2

Re: [PATCH] hw/sd: sdhci: Do not transfer any data when command fails

2021-02-09 Thread Philippe Mathieu-Daudé
On 2/9/21 11:54 AM, Bin Meng wrote: > At the end of sdhci_send_command(), it starts a data transfer if > the command register indicates a data is associated. However the > data transfer should only be initiated when the command execution > has succeeded. > > Cc: qemu-sta...@nongnu.org > Fixes: CVE

[PATCH 2/2] hw/nvme: move device-scoped functions

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen Move a bunch of functions that are internal to a device out of the shared header. Signed-off-by: Klaus Jensen --- hw/nvme/nvme.h | 110 + hw/nvme/ctrl.c | 90 +++- hw/nvme/ns.c | 7 +++-

[PATCH 0/2] hw/nvme: move nvme emulation out of hw/block

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen With the introduction of the nvme-subsystem device we are really cluttering up the hw/block directory. As suggested by Philippe previously, move the nvme emulation to hw/nvme. Klaus Jensen (2): hw/nvme: move nvme emulation out of hw/block hw/nvme: move device-scoped funct

Re: [PATCH v2] hw/block/nvme: use locally assigned QEMU IEEE OUI

2021-02-09 Thread Philippe Mathieu-Daudé
On 2/9/21 11:45 AM, Klaus Jensen wrote: > From: Gollu Appalanaidu > > Commit 6eb7a071292a ("hw/block/nvme: change controller pci id") changed > the controller to use a Red Hat assigned PCI Device and Vendor ID, but > did not change the IEEE OUI away from the Intel IEEE OUI. > > Fix that and use

[PATCH 1/2] hw/nvme: move nvme emulation out of hw/block

2021-02-09 Thread Klaus Jensen
From: Klaus Jensen With the introduction of the nvme-subsystem device we are really cluttering up the hw/block directory. As suggested by Philippe previously, move the nvme emulation to hw/nvme. Suggested-by: Philippe Mathieu-Daudé Signed-off-by: Klaus Jensen --- meson.build

Re: [PATCH] Raspberry PI GPIO interrupt support

2021-02-09 Thread Philippe Mathieu-Daudé
Hi Davide, On 2/9/21 12:02 PM, Davide Berardi wrote: > The bcm2835 GPIOs now generate interrupts. > This modification enables QTEST clients to trigger interrupt-based > interfaces. Thanks for your patch! Can you provide QTEST client example? Even better would be a qtest! > > Signed-off-by: Davi

Re: [PATCH 07/22] tests/acceptance/virtiofs_submounts.py: evaluate string not length

2021-02-09 Thread Alex Bennée
Max Reitz writes: > On 04.02.21 14:23, Alex Bennée wrote: >> >> Cleber Rosa writes: >> >>> If the vmlinuz variable is set to anything that evaluates to True, >>> then the respective arguments should be set. If the variable contains >>> an empty string, than it will evaluate to False, and th

Re: [PATCH 07/22] tests/acceptance/virtiofs_submounts.py: evaluate string not length

2021-02-09 Thread Max Reitz
On 09.02.21 12:24, Alex Bennée wrote: Max Reitz writes: On 04.02.21 14:23, Alex Bennée wrote: Cleber Rosa writes: If the vmlinuz variable is set to anything that evaluates to True, then the respective arguments should be set. If the variable contains an empty string, than it will evalua

Re: [PATCH v13 0/5] UFFD write-tracking migration/snapshots

2021-02-09 Thread David Hildenbrand
On 21.01.21 16:24, andrey.gruzdev--- via wrote: This patch series is a kind of 'rethinking' of Denis Plotnikov's ideas he's implemented in his series '[PATCH v0 0/4] migration: add background snapshot'. Currently the only way to make (external) live VM snapshot is using existing dirty page loggi

Re: [PATCH v2 2/9] qtest: update tests/qtest/bios-tables-test-allowed-diff.h

2021-02-09 Thread Igor Mammedov
On Mon, 8 Feb 2021 13:57:21 -0800 isaku.yamah...@gmail.com wrote: > From: Isaku Yamahata > > The following tests will modify acpi tables. > prepare qtests to allow acpi table change. > add new tables for new tests. > - tests/data/acpi/q35/DSDT.nosmm > - tests/data/acpi/q35/FACP.nosmm > - tests/

Re: [PATCH v3] travis-ci: Disable C++ optional objects on AArch64 container

2021-02-09 Thread Wainer dos Santos Moschetta
On 2/7/21 9:12 AM, Philippe Mathieu-Daudé wrote: Travis-CI seems to have enforced memory limit on containers, and the 'GCC check-tcg' job started to fail on AArch64 [*]: [2041/3679] Compiling C++ object libcommon.fa.p/disas_nanomips.cpp.o FAILED: libcommon.fa.p/disas_nanomips.cpp.o {s

Re: [PATCH 2/6] qapi: Remember alias definitions in qobject-input-visitor

2021-02-09 Thread Markus Armbruster
Kevin Wolf writes: > Am 27.01.2021 um 14:06 hat Markus Armbruster geschrieben: >> Kevin Wolf writes: >> >> > This makes qobject-input-visitor remember the currently valid aliases in >> > each StackObject. It doesn't actually allow using the aliases yet. >> > >> > Signed-off-by: Kevin Wolf >> >

Re: [PATCH 2/6] qapi: Remember alias definitions in qobject-input-visitor

2021-02-09 Thread Markus Armbruster
Let me look at the actual code now Kevin reduced my confusion about the interface and the data structures. Kevin Wolf writes: > This makes qobject-input-visitor remember the currently valid aliases in > each StackObject. It doesn't actually allow using the aliases yet. > > Signed-off-by: Kevin W

Re: [PATCH 07/22] tests/acceptance/virtiofs_submounts.py: evaluate string not length

2021-02-09 Thread Alex Bennée
Max Reitz writes: > On 09.02.21 12:24, Alex Bennée wrote: >> >> Max Reitz writes: >> >>> On 04.02.21 14:23, Alex Bennée wrote: Cleber Rosa writes: > If the vmlinuz variable is set to anything that evaluates to True, > then the respective arguments should be set. If t

[PATCH v2 0/4] New APIs for the Clock framework

2021-02-09 Thread Peter Maydell
Hi; this patchset proposes a couple of new APIs for Clock, which I found I needed/wanted for a work-in-progress patchset. In this v2, the only change from the RFC series is that as Luc suggested I have made the clock-callback registration mechanisms all take a new parameter specifying the mask of

[PATCH v2 2/4] clock: Add ClockPreUpdate callback event type

2021-02-09 Thread Peter Maydell
Add a new callback event type ClockPreUpdate, which is called on period changes before the period is updated. Signed-off-by: Peter Maydell --- docs/devel/clocks.rst | 9 - include/hw/clock.h| 1 + hw/core/clock.c | 3 +++ 3 files changed, 12 insertions(+), 1 deletion(-) diff -

[PATCH v2 4/4] hw/timer/npcm7xx_timer: Use new clock_ns_to_ticks()

2021-02-09 Thread Peter Maydell
Use the new clock_ns_to_ticks() function in npcm7xx_timer where appropriate. Signed-off-by: Peter Maydell --- hw/timer/npcm7xx_timer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/timer/npcm7xx_timer.c b/hw/timer/npcm7xx_timer.c index 4efdf135b82..32f5e021f85 100644

[PATCH v2 3/4] clock: Add clock_ns_to_ticks() function

2021-02-09 Thread Peter Maydell
Add a clock_ns_to_ticks() function which does the opposite of clock_ticks_to_ns(): given a duration in nanoseconds, it returns the number of clock ticks that would happen in that time. This is useful for devices that have a free running counter register whose value can be calculated when it is rea

[PATCH v2 1/4] clock: Add ClockEvent parameter to callbacks

2021-02-09 Thread Peter Maydell
The Clock framework allows users to specify a callback which is called after the clock's period has been updated. Some users need to also have a callback which is called before the clock period is updated. As the first step in adding support for notifying Clock users on pre-update events, add an

Re: [PULL 00/46] Misc patches for 2021-02-08

2021-02-09 Thread Peter Maydell
On Mon, 8 Feb 2021 at 22:50, Paolo Bonzini wrote: > > The following changes since commit 6f0e9c26dbae9ac18b89d359791008fe3432ca91: > > Merge remote-tracking branch 'remotes/dg-gitlab/tags/cgs-pull-request' into > staging (2021-02-08 11:11:26 +) > > are available in the Git repository at: >

Re: [PATCH 0/7] qcow2: compressed write cache

2021-02-09 Thread Max Reitz
On 29.01.21 17:50, Vladimir Sementsov-Ogievskiy wrote: Hi all! I know, I have several series waiting for a resend, but I had to switch to another task spawned from our customer's bug. Original problem: we use O_DIRECT for all vm images in our product, it's the policy. The only exclusion is back

Re: [PATCH v3] travis-ci: Disable C++ optional objects on AArch64 container

2021-02-09 Thread Philippe Mathieu-Daudé
On Tue, Feb 9, 2021 at 1:53 PM Wainer dos Santos Moschetta wrote: > On 2/7/21 9:12 AM, Philippe Mathieu-Daudé wrote: > > Travis-CI seems to have enforced memory limit on containers, > > and the 'GCC check-tcg' job started to fail on AArch64 [*]: > > > >[2041/3679] Compiling C++ object libcommo

Re: [PATCH 07/22] tests/acceptance/virtiofs_submounts.py: evaluate string not length

2021-02-09 Thread Max Reitz
On 09.02.21 13:52, Alex Bennée wrote: Max Reitz writes: On 09.02.21 12:24, Alex Bennée wrote: Max Reitz writes: On 04.02.21 14:23, Alex Bennée wrote: Cleber Rosa writes: If the vmlinuz variable is set to anything that evaluates to True, then the respective arguments should be set.

Re: [PATCH 2/5] libqos/qgraph_internal: add qos_printf() and qos_printf_literal()

2021-02-09 Thread Christian Schoenebeck
On Donnerstag, 28. Januar 2021 11:13:27 CET Thomas Huth wrote: > On 27/01/2021 00.04, Christian Schoenebeck wrote: > > These two are macros wrapping regular printf() call. They are intended > > to be used instead of calling printf() directly in order to avoid > > breaking TAP output format. > > >

Re: [PATCH v3] travis-ci: Disable C++ optional objects on AArch64 container

2021-02-09 Thread Peter Maydell
On Tue, 9 Feb 2021 at 13:32, Philippe Mathieu-Daudé wrote: > Migration of this job is pending of Cleber's possibility to add an AArch64 > runner to Gitlab-CI, right? Then we need someone to support and maintain > the hardware... I don't think anybody volunteered. We have the hardware already. Eff

  1   2   3   4   5   >