Displaying 20 results from an estimated 54 matches for "gen_pool".
2019 May 27
3
[PATCH v2 2/8] s390/cio: introduce DMA pools to cio
...alization cio will need to make sure the
> memory used for communication with the hypervisor is DMA memory.
>
> Let us introduce one global cio, and some tools for pools seated
"one global pool for cio"?
> at individual devices.
>
> Our DMA pools are implemented as a gen_pool backed with DMA pages. The
> idea is to avoid each allocation effectively wasting a page, as we
> typically allocate much less than PAGE_SIZE.
>
> Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
> ---
> arch/s390/Kconfig | 1 +
> arch/s390/include/asm/ci...
2019 May 27
3
[PATCH v2 2/8] s390/cio: introduce DMA pools to cio
...alization cio will need to make sure the
> memory used for communication with the hypervisor is DMA memory.
>
> Let us introduce one global cio, and some tools for pools seated
"one global pool for cio"?
> at individual devices.
>
> Our DMA pools are implemented as a gen_pool backed with DMA pages. The
> idea is to avoid each allocation effectively wasting a page, as we
> typically allocate much less than PAGE_SIZE.
>
> Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
> ---
> arch/s390/Kconfig | 1 +
> arch/s390/include/asm/ci...
2019 May 23
0
[PATCH v2 2/8] s390/cio: introduce DMA pools to cio
...alil Pasic <pasic at linux.ibm.com>
To support protected virtualization cio will need to make sure the
memory used for communication with the hypervisor is DMA memory.
Let us introduce one global cio, and some tools for pools seated
at individual devices.
Our DMA pools are implemented as a gen_pool backed with DMA pages. The
idea is to avoid each allocation effectively wasting a page, as we
typically allocate much less than PAGE_SIZE.
Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
---
arch/s390/Kconfig | 1 +
arch/s390/include/asm/cio.h | 11 +++++
drivers/s390/cio/c...
2019 Apr 26
0
[PATCH 05/10] s390/cio: introduce DMA pools to cio
To support protected virtualization cio will need to make sure the
memory used for communication with the hypervisor is DMA memory.
Let us introduce one global cio, and some tools for pools seated
at individual devices.
Our DMA pools are implemented as a gen_pool backed with DMA pages. The
idea is to avoid each allocation effectively wasting a page, as we
typically allocate much less than PAGE_SIZE.
Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
---
arch/s390/Kconfig | 1 +
arch/s390/include/asm/cio.h | 11 +++++
drivers/s390/cio/c...
2019 May 29
0
[PATCH v3 2/8] s390/cio: introduce DMA pools to cio
From: Halil Pasic <pasic at linux.ibm.com>
To support protected virtualization cio will need to make sure the
memory used for communication with the hypervisor is DMA memory.
Let us introduce one global pool for cio.
Our DMA pools are implemented as a gen_pool backed with DMA pages. The
idea is to avoid each allocation effectively wasting a page, as we
typically allocate much less than PAGE_SIZE.
Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
Reviewed-by: Sebastian Ott <sebott at linux.ibm.com>
Signed-off-by: Michael Mueller <mimu at...
2019 Jun 06
0
[PATCH v4 2/8] s390/cio: introduce DMA pools to cio
To support protected virtualization cio will need to make sure the
memory used for communication with the hypervisor is DMA memory.
Let us introduce one global pool for cio.
Our DMA pools are implemented as a gen_pool backed with DMA pages. The
idea is to avoid each allocation effectively wasting a page, as we
typically allocate much less than PAGE_SIZE.
Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
Reviewed-by: Sebastian Ott <sebott at linux.ibm.com>
---
arch/s390/Kconfig | 1 +...
2019 Jun 12
0
[PATCH v5 2/8] s390/cio: introduce DMA pools to cio
To support protected virtualization cio will need to make sure the
memory used for communication with the hypervisor is DMA memory.
Let us introduce one global pool for cio.
Our DMA pools are implemented as a gen_pool backed with DMA pages. The
idea is to avoid each allocation effectively wasting a page, as we
typically allocate much less than PAGE_SIZE.
Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
Reviewed-by: Sebastian Ott <sebott at linux.ibm.com>
Reviewed-by: Cornelia Huck <cohuck at r...
2019 Jun 03
5
[PATCH v3 2/8] s390/cio: introduce DMA pools to cio
...gt; From: Halil Pasic <pasic at linux.ibm.com>
>
> To support protected virtualization cio will need to make sure the
> memory used for communication with the hypervisor is DMA memory.
>
> Let us introduce one global pool for cio.
>
> Our DMA pools are implemented as a gen_pool backed with DMA pages. The
> idea is to avoid each allocation effectively wasting a page, as we
> typically allocate much less than PAGE_SIZE.
>
> Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
> Reviewed-by: Sebastian Ott <sebott at linux.ibm.com>
> Signed-off-b...
2019 Jun 03
5
[PATCH v3 2/8] s390/cio: introduce DMA pools to cio
...gt; From: Halil Pasic <pasic at linux.ibm.com>
>
> To support protected virtualization cio will need to make sure the
> memory used for communication with the hypervisor is DMA memory.
>
> Let us introduce one global pool for cio.
>
> Our DMA pools are implemented as a gen_pool backed with DMA pages. The
> idea is to avoid each allocation effectively wasting a page, as we
> typically allocate much less than PAGE_SIZE.
>
> Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
> Reviewed-by: Sebastian Ott <sebott at linux.ibm.com>
> Signed-off-b...
2019 Jun 03
0
[PATCH v3 2/8] s390/cio: introduce DMA pools to cio
...;pasic at linux.ibm.com>
>>
>> To support protected virtualization cio will need to make sure the
>> memory used for communication with the hypervisor is DMA memory.
>>
>> Let us introduce one global pool for cio.
>>
>> Our DMA pools are implemented as a gen_pool backed with DMA pages. The
>> idea is to avoid each allocation effectively wasting a page, as we
>> typically allocate much less than PAGE_SIZE.
>>
>> Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
>> Reviewed-by: Sebastian Ott <sebott at linux.ibm.com>...
2019 May 27
0
[PATCH v2 2/8] s390/cio: introduce DMA pools to cio
...emory used for communication with the hypervisor is DMA memory.
> >
> > Let us introduce one global cio, and some tools for pools seated
>
> "one global pool for cio"?
>
Nod.
> > at individual devices.
> >
> > Our DMA pools are implemented as a gen_pool backed with DMA pages. The
> > idea is to avoid each allocation effectively wasting a page, as we
> > typically allocate much less than PAGE_SIZE.
> >
> > Signed-off-by: Halil Pasic <pasic at linux.ibm.com>
> > ---
> > arch/s390/Kconfig | 1 +...
2019 May 10
3
[PATCH 05/10] s390/cio: introduce DMA pools to cio
On Fri, 10 May 2019 00:11:12 +0200
Halil Pasic <pasic at linux.ibm.com> wrote:
> On Thu, 9 May 2019 12:11:06 +0200
> Cornelia Huck <cohuck at redhat.com> wrote:
>
> > On Wed, 8 May 2019 23:22:10 +0200
> > Halil Pasic <pasic at linux.ibm.com> wrote:
> >
> > > On Wed, 8 May 2019 15:18:10 +0200 (CEST)
> > > Sebastian Ott <sebott
2019 May 10
3
[PATCH 05/10] s390/cio: introduce DMA pools to cio
On Fri, 10 May 2019 00:11:12 +0200
Halil Pasic <pasic at linux.ibm.com> wrote:
> On Thu, 9 May 2019 12:11:06 +0200
> Cornelia Huck <cohuck at redhat.com> wrote:
>
> > On Wed, 8 May 2019 23:22:10 +0200
> > Halil Pasic <pasic at linux.ibm.com> wrote:
> >
> > > On Wed, 8 May 2019 15:18:10 +0200 (CEST)
> > > Sebastian Ott <sebott
2019 May 13
2
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...ree(iv->vector, iv_size(iv->bits));
> kfree(iv->avail);
> kfree(iv);
> }
> diff --git a/drivers/s390/cio/css.c b/drivers/s390/cio/css.c
> index 7087cc3..88d9c92 100644
> --- a/drivers/s390/cio/css.c
> +++ b/drivers/s390/cio/css.c
> @@ -1063,7 +1063,10 @@ struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
> static void __gp_dma_free_dma(struct gen_pool *pool,
> struct gen_pool_chunk *chunk, void *data)
> {
> - dma_free_coherent((struct device *) data, PAGE_SIZE,
> +
> + size_t chunk_size = chunk->end_addr - chu...
2019 May 13
2
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...ree(iv->vector, iv_size(iv->bits));
> kfree(iv->avail);
> kfree(iv);
> }
> diff --git a/drivers/s390/cio/css.c b/drivers/s390/cio/css.c
> index 7087cc3..88d9c92 100644
> --- a/drivers/s390/cio/css.c
> +++ b/drivers/s390/cio/css.c
> @@ -1063,7 +1063,10 @@ struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
> static void __gp_dma_free_dma(struct gen_pool *pool,
> struct gen_pool_chunk *chunk, void *data)
> {
> - dma_free_coherent((struct device *) data, PAGE_SIZE,
> +
> + size_t chunk_size = chunk->end_addr - chu...
2019 May 12
0
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...;vector, iv->vector_dma);
+ cio_dma_free(iv->vector, iv_size(iv->bits));
kfree(iv->avail);
kfree(iv);
}
diff --git a/drivers/s390/cio/css.c b/drivers/s390/cio/css.c
index 7087cc3..88d9c92 100644
--- a/drivers/s390/cio/css.c
+++ b/drivers/s390/cio/css.c
@@ -1063,7 +1063,10 @@ struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
static void __gp_dma_free_dma(struct gen_pool *pool,
struct gen_pool_chunk *chunk, void *data)
{
- dma_free_coherent((struct device *) data, PAGE_SIZE,
+
+ size_t chunk_size = chunk->end_addr - chunk->start_addr + 1;
+
+ dma...
2019 May 08
4
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...dma_mask;
> + sch->dev.dma_mask = &sch->dma_mask;
> + sch->dev.coherent_dma_mask = sch->dma_mask;
Could we do:
sch->dev.dma_mask = &sch->dev.coherent_dma_mask;
sch->dev.coherent_dma_mask = css_dev_dma_mask;
?
> +#define POOL_INIT_PAGES 1
> +static struct gen_pool *cio_dma_pool;
> +/* Currently cio supports only a single css */
> +#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
__GFP_ZERO has no meaning with the dma api (since all implementations do
an implicit zero initialization) but let's keep it for the sake of
documentation.
We need GFP_DMA h...
2019 May 08
4
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...dma_mask;
> + sch->dev.dma_mask = &sch->dma_mask;
> + sch->dev.coherent_dma_mask = sch->dma_mask;
Could we do:
sch->dev.dma_mask = &sch->dev.coherent_dma_mask;
sch->dev.coherent_dma_mask = css_dev_dma_mask;
?
> +#define POOL_INIT_PAGES 1
> +static struct gen_pool *cio_dma_pool;
> +/* Currently cio supports only a single css */
> +#define CIO_DMA_GFP (GFP_KERNEL | __GFP_ZERO)
__GFP_ZERO has no meaning with the dma api (since all implementations do
an implicit zero initialization) but let's keep it for the sake of
documentation.
We need GFP_DMA h...
2019 May 23
18
[PATCH v2 0/8] s390: virtio: support protected virtualization
Enhanced virtualization protection technology may require the use of
bounce buffers for I/O. While support for this was built into the virtio
core, virtio-ccw wasn't changed accordingly.
Some background on technology (not part of this series) and the
terminology used.
* Protected Virtualization (PV):
Protected Virtualization guarantees, that non-shared memory of a guest
that operates in PV
2019 May 15
0
[PATCH 05/10] s390/cio: introduce DMA pools to cio
...;
> > kfree(iv->avail);
> > kfree(iv);
> > }
> > diff --git a/drivers/s390/cio/css.c b/drivers/s390/cio/css.c
> > index 7087cc3..88d9c92 100644
> > --- a/drivers/s390/cio/css.c
> > +++ b/drivers/s390/cio/css.c
> > @@ -1063,7 +1063,10 @@ struct gen_pool *cio_gp_dma_create(struct device *dma_dev, int nr_pages)
> > static void __gp_dma_free_dma(struct gen_pool *pool,
> > struct gen_pool_chunk *chunk, void *data)
> > {
> > - dma_free_coherent((struct device *) data, PAGE_SIZE,
> > +
> > + size_t chunk_s...