search for: summary_indicators

Displaying 20 results from an estimated 57 matches for "summary_indicators".

Did you mean: summary_indicator
2019 May 08
2
[PATCH 10/10] virtio/s390: make airq summary indicators DMA
...ic int virtio_ccw_use_airq = 1; > > struct airq_info { > rwlock_t lock; > - u8 summary_indicator; > + u8 summary_indicator_idx; > struct airq_struct airq; > struct airq_iv *aiv; > }; > static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; > +static u8 *summary_indicators; > + > +static inline u8 *get_summary_indicator(struct airq_info *info) > +{ > + return summary_indicators + info->summary_indicator_idx; > +} > > #define CCW_CMD_SET_VQ 0x13 > #define CCW_CMD_VDEV_RESET 0x33 > @@ -225,7 +231,7 @@ static void virtio_airq_handler...
2019 May 08
2
[PATCH 10/10] virtio/s390: make airq summary indicators DMA
...ic int virtio_ccw_use_airq = 1; > > struct airq_info { > rwlock_t lock; > - u8 summary_indicator; > + u8 summary_indicator_idx; > struct airq_struct airq; > struct airq_iv *aiv; > }; > static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; > +static u8 *summary_indicators; > + > +static inline u8 *get_summary_indicator(struct airq_info *info) > +{ > + return summary_indicators + info->summary_indicator_idx; > +} > > #define CCW_CMD_SET_VQ 0x13 > #define CCW_CMD_VDEV_RESET 0x33 > @@ -225,7 +231,7 @@ static void virtio_airq_handler...
2019 Jun 06
0
[PATCH v4 8/8] virtio/s390: make airq summary indicators DMA
...ivers/s390/virtio/virtio_ccw.c @@ -140,11 +140,17 @@ static int virtio_ccw_use_airq = 1; struct airq_info { rwlock_t lock; - u8 summary_indicator; + u8 summary_indicator_idx; struct airq_struct airq; struct airq_iv *aiv; }; static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; +static u8 *summary_indicators; + +static inline u8 *get_summary_indicator(struct airq_info *info) +{ + return summary_indicators + info->summary_indicator_idx; +} #define CCW_CMD_SET_VQ 0x13 #define CCW_CMD_VDEV_RESET 0x33 @@ -209,7 +215,7 @@ static void virtio_airq_handler(struct airq_struct *airq, bool floating) br...
2019 Jun 12
0
[PATCH v5 8/8] virtio/s390: make airq summary indicators DMA
...ivers/s390/virtio/virtio_ccw.c @@ -140,11 +140,17 @@ static int virtio_ccw_use_airq = 1; struct airq_info { rwlock_t lock; - u8 summary_indicator; + u8 summary_indicator_idx; struct airq_struct airq; struct airq_iv *aiv; }; static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; +static u8 *summary_indicators; + +static inline u8 *get_summary_indicator(struct airq_info *info) +{ + return summary_indicators + info->summary_indicator_idx; +} #define CCW_CMD_SET_VQ 0x13 #define CCW_CMD_VDEV_RESET 0x33 @@ -209,7 +215,7 @@ static void virtio_airq_handler(struct airq_struct *airq, bool floating) br...
2019 May 29
0
[PATCH v3 8/8] virtio/s390: make airq summary indicators DMA
...ivers/s390/virtio/virtio_ccw.c @@ -140,11 +140,17 @@ static int virtio_ccw_use_airq = 1; struct airq_info { rwlock_t lock; - u8 summary_indicator; + u8 summary_indicator_idx; struct airq_struct airq; struct airq_iv *aiv; }; static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; +static u8 *summary_indicators; + +static inline u8 *get_summary_indicator(struct airq_info *info) +{ + return summary_indicators + info->summary_indicator_idx; +} #define CCW_CMD_SET_VQ 0x13 #define CCW_CMD_VDEV_RESET 0x33 @@ -225,7 +231,7 @@ static void virtio_airq_handler(struct airq_struct *airq, bool floating) br...
2019 Apr 26
0
[PATCH 10/10] virtio/s390: make airq summary indicators DMA
...ivers/s390/virtio/virtio_ccw.c @@ -140,11 +140,17 @@ static int virtio_ccw_use_airq = 1; struct airq_info { rwlock_t lock; - u8 summary_indicator; + u8 summary_indicator_idx; struct airq_struct airq; struct airq_iv *aiv; }; static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; +static u8 *summary_indicators; + +static inline u8 *get_summary_indicator(struct airq_info *info) +{ + return summary_indicators + info->summary_indicator_idx; +} #define CCW_CMD_SET_VQ 0x13 #define CCW_CMD_VDEV_RESET 0x33 @@ -225,7 +231,7 @@ static void virtio_airq_handler(struct airq_struct *airq) break; vring_i...
2019 May 23
0
[PATCH v2 8/8] virtio/s390: make airq summary indicators DMA
...ivers/s390/virtio/virtio_ccw.c @@ -140,11 +140,17 @@ static int virtio_ccw_use_airq = 1; struct airq_info { rwlock_t lock; - u8 summary_indicator; + u8 summary_indicator_idx; struct airq_struct airq; struct airq_iv *aiv; }; static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; +static u8 *summary_indicators; + +static inline u8 *get_summary_indicator(struct airq_info *info) +{ + return summary_indicators + info->summary_indicator_idx; +} #define CCW_CMD_SET_VQ 0x13 #define CCW_CMD_VDEV_RESET 0x33 @@ -225,7 +231,7 @@ static void virtio_airq_handler(struct airq_struct *airq, bool floating) br...
2019 May 15
0
[PATCH 10/10] virtio/s390: make airq summary indicators DMA
...struct airq_info { >> ????? rwlock_t lock; >> -??? u8 summary_indicator; >> +??? u8 summary_indicator_idx; >> ????? struct airq_struct airq; >> ????? struct airq_iv *aiv; >> ? }; >> ? static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; >> +static u8 *summary_indicators; >> + >> +static inline u8 *get_summary_indicator(struct airq_info *info) >> +{ >> +??? return summary_indicators + info->summary_indicator_idx; >> +} >> ? #define CCW_CMD_SET_VQ 0x13 >> ? #define CCW_CMD_VDEV_RESET 0x33 >> @@ -225,7 +231,7 @@ stat...
2019 May 27
3
[PATCH v2 8/8] virtio/s390: make airq summary indicators DMA
...> drivers/s390/virtio/virtio_ccw.c | 22 +++++++++++++++------- > 1 file changed, 15 insertions(+), 7 deletions(-) (...) > @@ -1501,6 +1508,7 @@ static int __init virtio_ccw_init(void) > { > /* parse no_auto string before we do anything further */ > no_auto_parse(); > + summary_indicators = cio_dma_zalloc(MAX_AIRQ_AREAS); What happens if this fails? > return ccw_driver_register(&virtio_ccw_driver); > } > device_initcall(virtio_ccw_init);
2019 May 27
3
[PATCH v2 8/8] virtio/s390: make airq summary indicators DMA
...> drivers/s390/virtio/virtio_ccw.c | 22 +++++++++++++++------- > 1 file changed, 15 insertions(+), 7 deletions(-) (...) > @@ -1501,6 +1508,7 @@ static int __init virtio_ccw_init(void) > { > /* parse no_auto string before we do anything further */ > no_auto_parse(); > + summary_indicators = cio_dma_zalloc(MAX_AIRQ_AREAS); What happens if this fails? > return ccw_driver_register(&virtio_ccw_driver); > } > device_initcall(virtio_ccw_init);
2019 Jun 03
1
[PATCH v3 8/8] virtio/s390: make airq summary indicators DMA
...s/s390/virtio/virtio_ccw.c | 26 +++++++++++++++++++------- > 1 file changed, 19 insertions(+), 7 deletions(-) (...) > @@ -1501,6 +1508,11 @@ static int __init virtio_ccw_init(void) > { > /* parse no_auto string before we do anything further */ > no_auto_parse(); > + > + summary_indicators = cio_dma_zalloc(MAX_AIRQ_AREAS); > + if (!summary_indicators) > + return -ENOMEM; > + > return ccw_driver_register(&virtio_ccw_driver); Don't you need to free summary_indicators again if registering the driver fails? > } > device_initcall(virtio_ccw_init);
2013 Jun 07
0
[PATCH RFC] s390/virtio-ccw: Adapter interrupt support.
Handle the new CCW_CMD_SET_IND_ADAPTER command enabling adapter interrupts on guest request. When active, host->guest notifications will be handled via global_indicator -> queue indicators instead of queue indicators + subchannel I/O interrupt. Indicators for virtqueues may be present at an offset. Signed-off-by: Cornelia Huck <cornelia.huck at de.ibm.com> --- hw/s390x/css.c |
2013 Jul 09
0
[RFC PATCH v2] s390/virtio-ccw: Adapter interrupt support.
Handle the new CCW_CMD_SET_IND_ADAPTER command enabling adapter interrupts on guest request. When active, host->guest notifications will be handled via global_indicator -> queue indicators instead of queue indicators + subchannel I/O interrupt. Indicators for virtqueues may be present at an offset. Signed-off-by: Cornelia Huck <cornelia.huck at de.ibm.com> --- hw/s390x/css.c |
2013 Jun 07
2
[PATCH RFC 0/2] KVM: s390: virtio-ccw adapter interrupts.
Hi, here's the guest driver support for adapter interrupts in virtio-ccw. We use one summary indicator per page of indicators. For each device, we try to find a space in an indicator where all of its virtqueues fit. Locking probably needs some more love, but it seems to work fine so far. Cornelia Huck (2): KVM: s390: virtio-ccw: Handle command rejects. KVM: s390: virtio-ccw adapter
2013 Jun 07
2
[PATCH RFC 0/2] KVM: s390: virtio-ccw adapter interrupts.
Hi, here's the guest driver support for adapter interrupts in virtio-ccw. We use one summary indicator per page of indicators. For each device, we try to find a space in an indicator where all of its virtqueues fit. Locking probably needs some more love, but it seems to work fine so far. Cornelia Huck (2): KVM: s390: virtio-ccw: Handle command rejects. KVM: s390: virtio-ccw adapter
2013 Jun 07
1
[PATCH RFC] qemu: Adapter interrupts for virtio-ccw.
Hi, here's the qemu patch that implements the new adapter indicators ccw in virtio-ccw and injects adapter interrupts for the devices enabled for it. Cornelia Huck (1): s390/virtio-ccw: Adapter interrupt support. hw/s390x/css.c | 10 ++++++++ hw/s390x/css.h | 2 ++ hw/s390x/virtio-ccw.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++++- hw/s390x/virtio-ccw.h |
2013 Jun 07
1
[PATCH RFC] qemu: Adapter interrupts for virtio-ccw.
Hi, here's the qemu patch that implements the new adapter indicators ccw in virtio-ccw and injects adapter interrupts for the devices enabled for it. Cornelia Huck (1): s390/virtio-ccw: Adapter interrupt support. hw/s390x/css.c | 10 ++++++++ hw/s390x/css.h | 2 ++ hw/s390x/virtio-ccw.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++++- hw/s390x/virtio-ccw.h |
2019 Jul 23
3
[PATCH 1/1] virtio/s390: fix race on airq_areas
...io/virtio_ccw.c index 1a55e5942d36..d97742662755 100644 --- a/drivers/s390/virtio/virtio_ccw.c +++ b/drivers/s390/virtio/virtio_ccw.c @@ -145,6 +145,8 @@ struct airq_info { struct airq_iv *aiv; }; static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; +DEFINE_MUTEX(airq_areas_lock); + static u8 *summary_indicators; static inline u8 *get_summary_indicator(struct airq_info *info) @@ -265,9 +267,11 @@ static unsigned long get_airq_indicator(struct virtqueue *vqs[], int nvqs, unsigned long bit, flags; for (i = 0; i < MAX_AIRQ_AREAS && !indicator_addr; i++) { + mutex_lock(&airq_areas_lock...
2019 Jul 23
3
[PATCH 1/1] virtio/s390: fix race on airq_areas
...io/virtio_ccw.c index 1a55e5942d36..d97742662755 100644 --- a/drivers/s390/virtio/virtio_ccw.c +++ b/drivers/s390/virtio/virtio_ccw.c @@ -145,6 +145,8 @@ struct airq_info { struct airq_iv *aiv; }; static struct airq_info *airq_areas[MAX_AIRQ_AREAS]; +DEFINE_MUTEX(airq_areas_lock); + static u8 *summary_indicators; static inline u8 *get_summary_indicator(struct airq_info *info) @@ -265,9 +267,11 @@ static unsigned long get_airq_indicator(struct virtqueue *vqs[], int nvqs, unsigned long bit, flags; for (i = 0; i < MAX_AIRQ_AREAS && !indicator_addr; i++) { + mutex_lock(&airq_areas_lock...
2013 Jul 09
2
[RFC PATCH v2] qemu: Adapter interrupts for virtio-ccw.
Hi, here's the current implementation of virtio-ccw adapter interrupts in qemu. Code is unchanged, only rebased against current master. Cornelia Huck (1): s390/virtio-ccw: Adapter interrupt support. hw/s390x/css.c | 10 ++++++++ hw/s390x/css.h | 2 ++ hw/s390x/virtio-ccw.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++++- hw/s390x/virtio-ccw.h | 4 ++++