[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 16/16] nvme: factor out controller identify setup
From: |
Maxim Levitsky |
Subject: |
Re: [PATCH v2 16/16] nvme: factor out controller identify setup |
Date: |
Tue, 21 Apr 2020 19:17:53 +0300 |
On Wed, 2020-04-15 at 15:01 +0200, Klaus Jensen wrote:
> From: Klaus Jensen <address@hidden>
>
> Signed-off-by: Klaus Jensen <address@hidden>
> Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
> ---
> hw/block/nvme.c | 52 +++++++++++++++++++++++++++----------------------
> 1 file changed, 29 insertions(+), 23 deletions(-)
>
> diff --git a/hw/block/nvme.c b/hw/block/nvme.c
> index 4c28d75e0fc8..804f24719dce 100644
> --- a/hw/block/nvme.c
> +++ b/hw/block/nvme.c
> @@ -1422,32 +1422,11 @@ static void nvme_init_pci(NvmeCtrl *n, PCIDevice
> *pci_dev)
> }
> }
>
> -static void nvme_realize(PCIDevice *pci_dev, Error **errp)
> +static void nvme_init_ctrl(NvmeCtrl *n, PCIDevice *pci_dev)
> {
> - NvmeCtrl *n = NVME(pci_dev);
> NvmeIdCtrl *id = &n->id_ctrl;
> - Error *err = NULL;
> + uint8_t *pci_conf = pci_dev->config;
>
> - int i;
> - uint8_t *pci_conf;
> -
> - nvme_check_constraints(n, &err);
> - if (err) {
> - error_propagate(errp, err);
> - return;
> - }
> -
> - nvme_init_state(n);
> -
> - nvme_init_blk(n, &err);
> - if (err) {
> - error_propagate(errp, err);
> - return;
> - }
> -
> - nvme_init_pci(n, pci_dev);
> -
> - pci_conf = pci_dev->config;
> id->vid = cpu_to_le16(pci_get_word(pci_conf + PCI_VENDOR_ID));
> id->ssvid = cpu_to_le16(pci_get_word(pci_conf +
> PCI_SUBSYSTEM_VENDOR_ID));
> strpadcpy((char *)id->mn, sizeof(id->mn), "QEMU NVMe Ctrl", ' ');
> @@ -1481,6 +1460,33 @@ static void nvme_realize(PCIDevice *pci_dev, Error
> **errp)
> n->bar.vs = 0x00010200;
> n->bar.intmc = n->bar.intms = 0;
>
> +
> +}
> +
> +static void nvme_realize(PCIDevice *pci_dev, Error **errp)
> +{
> + NvmeCtrl *n = NVME(pci_dev);
> + Error *err = NULL;
> +
> + int i;
> +
> + nvme_check_constraints(n, &err);
> + if (err) {
> + error_propagate(errp, err);
> + return;
> + }
> +
> +
> + nvme_init_state(n);
> + nvme_init_blk(n, &err);
> + if (err) {
> + error_propagate(errp, err);
> + return;
> + }
> +
> + nvme_init_pci(n, pci_dev);
> + nvme_init_ctrl(n, pci_dev);
> +
> for (i = 0; i < n->num_namespaces; i++) {
> nvme_init_namespace(n, &n->namespaces[i], &err);
> if (err) {
Reviewed-by: Maxim Levitsky <address@hidden>
Best regards,
Maxim Levitsky
- Re: [PATCH v2 13/16] nvme: factor out namespace setup, (continued)
Re: [PATCH v2 13/16] nvme: factor out namespace setup, Maxim Levitsky, 2020/04/21
[PATCH v2 15/16] nvme: factor out cmb setup, Klaus Jensen, 2020/04/15
[PATCH v2 12/16] nvme: add namespace helpers, Klaus Jensen, 2020/04/15
[PATCH v2 16/16] nvme: factor out controller identify setup, Klaus Jensen, 2020/04/15
Re: [PATCH v2 00/16] nvme: refactoring and cleanups, no-reply, 2020/04/15
Re: [PATCH v2 00/16] nvme: refactoring and cleanups, Klaus Birkelund Jensen, 2020/04/20
Re: [PATCH v2 00/16] nvme: refactoring and cleanups, Keith Busch, 2020/04/20
Re: [PATCH v2 00/16] nvme: refactoring and cleanups, Maxim Levitsky, 2020/04/21