search for: ndr_desc

Displaying 20 results from an estimated 55 matches for "ndr_desc".

2019 May 15
5
[PATCH v9 2/7] virtio-pmem: Add virtio pmem driver
...+ &vpmem->nd_desc); > + if (!vpmem->nvdimm_bus) { > + dev_err(&vdev->dev, "failed to register device with nvdimm_bus\n"); > + err = -ENXIO; > + goto out_vq; > + } > + > + dev_set_drvdata(&vdev->dev, vpmem->nvdimm_bus); > + > + ndr_desc.res = &res; > + ndr_desc.numa_node = nid; > + ndr_desc.flush = async_pmem_flush; > + set_bit(ND_REGION_PAGEMAP, &ndr_desc.flags); > + set_bit(ND_REGION_ASYNC, &ndr_desc.flags); > + nd_region = nvdimm_pmem_region_create(vpmem->nvdimm_bus, &ndr_desc); > + if (!nd_...
2019 May 15
5
[PATCH v9 2/7] virtio-pmem: Add virtio pmem driver
...+ &vpmem->nd_desc); > + if (!vpmem->nvdimm_bus) { > + dev_err(&vdev->dev, "failed to register device with nvdimm_bus\n"); > + err = -ENXIO; > + goto out_vq; > + } > + > + dev_set_drvdata(&vdev->dev, vpmem->nvdimm_bus); > + > + ndr_desc.res = &res; > + ndr_desc.numa_node = nid; > + ndr_desc.flush = async_pmem_flush; > + set_bit(ND_REGION_PAGEMAP, &ndr_desc.flags); > + set_bit(ND_REGION_ASYNC, &ndr_desc.flags); > + nd_region = nvdimm_pmem_region_create(vpmem->nvdimm_bus, &ndr_desc); > + if (!nd_...
2019 May 14
2
[PATCH v8 2/6] virtio-pmem: Add virtio pmem driver
...t;>> + >>> + return 0; >>> +}; >>> + >>> +static int virtio_pmem_probe(struct virtio_device *vdev) >>> +{ >>> + int err = 0; >>> + struct resource res; >>> + struct virtio_pmem *vpmem; >>> + struct nd_region_desc ndr_desc = {}; >>> + int nid = dev_to_node(&vdev->dev); >>> + struct nd_region *nd_region; >> >> Nit: use reverse Christmas tree layout :) > > Done. > >> >>> + >>> + if (!vdev->config->get) { >>> + dev_err(&vdev->...
2019 May 14
2
[PATCH v8 2/6] virtio-pmem: Add virtio pmem driver
...t;>> + >>> + return 0; >>> +}; >>> + >>> +static int virtio_pmem_probe(struct virtio_device *vdev) >>> +{ >>> + int err = 0; >>> + struct resource res; >>> + struct virtio_pmem *vpmem; >>> + struct nd_region_desc ndr_desc = {}; >>> + int nid = dev_to_node(&vdev->dev); >>> + struct nd_region *nd_region; >> >> Nit: use reverse Christmas tree layout :) > > Done. > >> >>> + >>> + if (!vdev->config->get) { >>> + dev_err(&vdev->...
2019 Apr 10
3
[PATCH v5 2/5] virtio-pmem: Add virtio pmem driver
...NIT_LIST_HEAD(&vpmem->req_list); > + > + return 0; > +}; > + > +static int virtio_pmem_probe(struct virtio_device *vdev) > +{ > + int err = 0; > + struct resource res; > + struct virtio_pmem *vpmem; > + struct nvdimm_bus *nvdimm_bus; > + struct nd_region_desc ndr_desc = {}; > + int nid = dev_to_node(&vdev->dev); > + struct nd_region *nd_region; > + > + if (!vdev->config->get) { > + dev_err(&vdev->dev, "%s failure: config disabled\n", Maybe s/config disabled/config access disabled/ ? That seems to be the more common...
2019 Apr 10
3
[PATCH v5 2/5] virtio-pmem: Add virtio pmem driver
...NIT_LIST_HEAD(&vpmem->req_list); > + > + return 0; > +}; > + > +static int virtio_pmem_probe(struct virtio_device *vdev) > +{ > + int err = 0; > + struct resource res; > + struct virtio_pmem *vpmem; > + struct nvdimm_bus *nvdimm_bus; > + struct nd_region_desc ndr_desc = {}; > + int nid = dev_to_node(&vdev->dev); > + struct nd_region *nd_region; > + > + if (!vdev->config->get) { > + dev_err(&vdev->dev, "%s failure: config disabled\n", Maybe s/config disabled/config access disabled/ ? That seems to be the more common...
2019 Apr 11
4
[PATCH v5 1/6] libnvdimm: nd_region flush callback support
...mm_flush(nd_region); > + rc = nvdimm_flush(nd_region, NULL, false); > + if (rc) > + return rc; > > return len; > } > @@ -1085,6 +1087,11 @@ static struct nd_region *nd_region_create(struct nvdimm_bus *nvdimm_bus, > dev->of_node = ndr_desc->of_node; > nd_region->ndr_size = resource_size(ndr_desc->res); > nd_region->ndr_start = ndr_desc->res->start; > + if (ndr_desc->flush) > + nd_region->flush = ndr_desc->flush; > + else > + nd_region...
2019 Apr 11
4
[PATCH v5 1/6] libnvdimm: nd_region flush callback support
...mm_flush(nd_region); > + rc = nvdimm_flush(nd_region, NULL, false); > + if (rc) > + return rc; > > return len; > } > @@ -1085,6 +1087,11 @@ static struct nd_region *nd_region_create(struct nvdimm_bus *nvdimm_bus, > dev->of_node = ndr_desc->of_node; > nd_region->ndr_size = resource_size(ndr_desc->res); > nd_region->ndr_start = ndr_desc->res->start; > + if (ndr_desc->flush) > + nd_region->flush = ndr_desc->flush; > + else > + nd_region...
2019 Apr 11
1
[Qemu-devel] [PATCH v5 1/6] libnvdimm: nd_region flush callback support
...; > + if (rc) > > > + return rc; > > > > > > return len; > > > } > > > @@ -1085,6 +1087,11 @@ static struct nd_region *nd_region_create(struct > > > nvdimm_bus *nvdimm_bus, > > > dev->of_node = ndr_desc->of_node; > > > nd_region->ndr_size = resource_size(ndr_desc->res); > > > nd_region->ndr_start = ndr_desc->res->start; > > > + if (ndr_desc->flush) > > > + nd_region->flush = ndr_desc->flush; > &gt...
2019 Apr 03
2
[Qemu-devel] [PATCH v4 2/5] virtio-pmem: Add virtio pmem driver
...NIT_LIST_HEAD(&vpmem->req_list); > + > + return 0; > +}; > + > +static int virtio_pmem_probe(struct virtio_device *vdev) > +{ > + int err = 0; > + struct resource res; > + struct virtio_pmem *vpmem; > + struct nvdimm_bus *nvdimm_bus; > + struct nd_region_desc ndr_desc; > + int nid = dev_to_node(&vdev->dev); > + struct nd_region *nd_region; > + > + if (!vdev->config->get) { > + dev_err(&vdev->dev, "%s failure: config disabled\n", > + __func__); > + return -EINVAL; > + } > + > + vdev->priv = vpmem...
2019 Apr 03
2
[Qemu-devel] [PATCH v4 2/5] virtio-pmem: Add virtio pmem driver
...NIT_LIST_HEAD(&vpmem->req_list); > + > + return 0; > +}; > + > +static int virtio_pmem_probe(struct virtio_device *vdev) > +{ > + int err = 0; > + struct resource res; > + struct virtio_pmem *vpmem; > + struct nvdimm_bus *nvdimm_bus; > + struct nd_region_desc ndr_desc; > + int nid = dev_to_node(&vdev->dev); > + struct nd_region *nd_region; > + > + if (!vdev->config->get) { > + dev_err(&vdev->dev, "%s failure: config disabled\n", > + __func__); > + return -EINVAL; > + } > + > + vdev->priv = vpmem...
2019 May 14
2
[PATCH v8 2/6] virtio-pmem: Add virtio pmem driver
...the virtio_pmem_probe() directly, earlier (directly after allocating vpmem). > + > + return 0; > +}; > + > +static int virtio_pmem_probe(struct virtio_device *vdev) > +{ > + int err = 0; > + struct resource res; > + struct virtio_pmem *vpmem; > + struct nd_region_desc ndr_desc = {}; > + int nid = dev_to_node(&vdev->dev); > + struct nd_region *nd_region; Nit: use reverse Christmas tree layout :) > + > + if (!vdev->config->get) { > + dev_err(&vdev->dev, "%s failure: config access disabled\n", > + __func__); > + retur...
2019 May 14
2
[PATCH v8 2/6] virtio-pmem: Add virtio pmem driver
...the virtio_pmem_probe() directly, earlier (directly after allocating vpmem). > + > + return 0; > +}; > + > +static int virtio_pmem_probe(struct virtio_device *vdev) > +{ > + int err = 0; > + struct resource res; > + struct virtio_pmem *vpmem; > + struct nd_region_desc ndr_desc = {}; > + int nid = dev_to_node(&vdev->dev); > + struct nd_region *nd_region; Nit: use reverse Christmas tree layout :) > + > + if (!vdev->config->get) { > + dev_err(&vdev->dev, "%s failure: config access disabled\n", > + __func__); > + retur...
2019 May 14
0
[PATCH v8 2/6] virtio-pmem: Add virtio pmem driver
...t; >>> +}; > >>> + > >>> +static int virtio_pmem_probe(struct virtio_device *vdev) > >>> +{ > >>> + int err = 0; > >>> + struct resource res; > >>> + struct virtio_pmem *vpmem; > >>> + struct nd_region_desc ndr_desc = {}; > >>> + int nid = dev_to_node(&vdev->dev); > >>> + struct nd_region *nd_region; > >> > >> Nit: use reverse Christmas tree layout :) > > > > Done. > > > >> > >>> + > >>> + if (!vdev->config...
2019 Apr 04
1
[Qemu-devel] [PATCH v4 2/5] virtio-pmem: Add virtio pmem driver
...t; > + > > > +static int virtio_pmem_probe(struct virtio_device *vdev) > > > +{ > > > + int err = 0; > > > + struct resource res; > > > + struct virtio_pmem *vpmem; > > > + struct nvdimm_bus *nvdimm_bus; > > > + struct nd_region_desc ndr_desc; > > > + int nid = dev_to_node(&vdev->dev); > > > + struct nd_region *nd_region; > > > + > > > + if (!vdev->config->get) { > > > + dev_err(&vdev->dev, "%s failure: config disabled\n", > > > + __func__); > >...
2019 Apr 04
1
[Qemu-devel] [PATCH v4 2/5] virtio-pmem: Add virtio pmem driver
...t; > + > > > +static int virtio_pmem_probe(struct virtio_device *vdev) > > > +{ > > > + int err = 0; > > > + struct resource res; > > > + struct virtio_pmem *vpmem; > > > + struct nvdimm_bus *nvdimm_bus; > > > + struct nd_region_desc ndr_desc; > > > + int nid = dev_to_node(&vdev->dev); > > > + struct nd_region *nd_region; > > > + > > > + if (!vdev->config->get) { > > > + dev_err(&vdev->dev, "%s failure: config disabled\n", > > > + __func__); > >...
2019 May 15
0
[PATCH v9 2/7] virtio-pmem: Add virtio pmem driver
...;> + if (!vpmem->nvdimm_bus) { >> + dev_err(&vdev->dev, "failed to register device with nvdimm_bus\n"); >> + err = -ENXIO; >> + goto out_vq; >> + } >> + >> + dev_set_drvdata(&vdev->dev, vpmem->nvdimm_bus); >> + >> + ndr_desc.res = &res; >> + ndr_desc.numa_node = nid; >> + ndr_desc.flush = async_pmem_flush; >> + set_bit(ND_REGION_PAGEMAP, &ndr_desc.flags); >> + set_bit(ND_REGION_ASYNC, &ndr_desc.flags); >> + nd_region = nvdimm_pmem_region_create(vpmem->nvdimm_bus, &ndr_de...
2019 May 16
0
[PATCH v9 2/7] virtio-pmem: Add virtio pmem driver
...if (!vpmem->nvdimm_bus) { > > + dev_err(&vdev->dev, "failed to register device with nvdimm_bus\n"); > > + err = -ENXIO; > > + goto out_vq; > > + } > > + > > + dev_set_drvdata(&vdev->dev, vpmem->nvdimm_bus); > > + > > + ndr_desc.res = &res; > > + ndr_desc.numa_node = nid; > > + ndr_desc.flush = async_pmem_flush; > > + set_bit(ND_REGION_PAGEMAP, &ndr_desc.flags); > > + set_bit(ND_REGION_ASYNC, &ndr_desc.flags); > > + nd_region = nvdimm_pmem_region_create(vpmem->nvdimm_bus, &n...
2019 Apr 10
14
[PATCH v5 0/6] virtio pmem driver
This patch series has implementation for "virtio pmem". "virtio pmem" is fake persistent memory(nvdimm) in guest which allows to bypass the guest page cache. This also implements a VIRTIO based asynchronous flush mechanism. Sharing guest kernel driver in this patchset with the changes suggested in v4. Tested with Qemu side device emulation [6] for virtio-pmem.
2019 Apr 10
0
[PATCH v5 2/5] virtio-pmem: Add virtio pmem driver
...t; > + > > > +static int virtio_pmem_probe(struct virtio_device *vdev) > > > +{ > > > + int err = 0; > > > + struct resource res; > > > + struct virtio_pmem *vpmem; > > > + struct nvdimm_bus *nvdimm_bus; > > > + struct nd_region_desc ndr_desc = {}; > > > + int nid = dev_to_node(&vdev->dev); > > > + struct nd_region *nd_region; > > > + > > > + if (!vdev->config->get) { > > > + dev_err(&vdev->dev, "%s failure: config disabled\n", > > > > Maybe s/confi...