Displaying 20 results from an estimated 52 matches for "max_airq_areas".
2019 May 08
2
[PATCH 10/10] virtio/s390: make airq summary indicators DMA
....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 +23...
2019 May 08
2
[PATCH 10/10] virtio/s390: make airq summary indicators DMA
....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 +23...
2019 Jul 23
3
[PATCH 1/1] virtio/s390: fix race on airq_areas
...ff --git a/drivers/s390/virtio/virtio_ccw.c b/drivers/s390/virtio/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 &a...
2019 Jul 23
3
[PATCH 1/1] virtio/s390: fix race on airq_areas
...ff --git a/drivers/s390/virtio/virtio_ccw.c b/drivers/s390/virtio/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 &a...
2019 Jun 06
0
[PATCH v4 8/8] virtio/s390: make airq summary indicators DMA
.../virtio/virtio_ccw.c
+++ b/drivers/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_st...
2019 Jun 12
0
[PATCH v5 8/8] virtio/s390: make airq summary indicators DMA
.../virtio/virtio_ccw.c
+++ b/drivers/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_st...
2019 Jul 24
2
[PATCH 1/1] virtio/s390: fix race on airq_areas
...io_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,
> >...
2019 Jul 24
2
[PATCH 1/1] virtio/s390: fix race on airq_areas
...io_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,
> >...
2019 May 27
3
[PATCH v2 8/8] virtio/s390: make airq summary indicators DMA
....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
....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 Apr 26
0
[PATCH 10/10] virtio/s390: make airq summary indicators DMA
.../virtio/virtio_ccw.c
+++ b/drivers/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_st...
2019 May 23
0
[PATCH v2 8/8] virtio/s390: make airq summary indicators DMA
.../virtio/virtio_ccw.c
+++ b/drivers/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_st...
2019 May 29
0
[PATCH v3 8/8] virtio/s390: make airq summary indicators DMA
.../virtio/virtio_ccw.c
+++ b/drivers/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_st...
2019 May 15
0
[PATCH 10/10] virtio/s390: make airq summary indicators DMA
...t 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_RE...
2015 Sep 11
1
[PATCH RFC 0/1] virtio_ccw: new status accessor in driver
This patch (on top of "virtio/s390: handle failures of READ_VQ_CONF ccw")
implements the guest side of the new status ccw.
Pierre Morel (1):
virtio/s390: support READ_STATUS command for virtio-ccw
drivers/s390/virtio/virtio_ccw.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
--
2.3.8
2016 Apr 11
0
[PATCH 1/1] virtio/s390: support READ_STATUS command for virtio-ccw
...+++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/drivers/s390/virtio/virtio_ccw.c b/drivers/s390/virtio/virtio_ccw.c
index 8688ad4..d3a98d3 100644
--- a/drivers/s390/virtio/virtio_ccw.c
+++ b/drivers/s390/virtio/virtio_ccw.c
@@ -145,6 +145,7 @@ static struct airq_info *airq_areas[MAX_AIRQ_AREAS];
#define CCW_CMD_WRITE_CONF 0x21
#define CCW_CMD_WRITE_STATUS 0x31
#define CCW_CMD_READ_VQ_CONF 0x32
+#define CCW_CMD_READ_STATUS 0x72
#define CCW_CMD_SET_IND_ADAPTER 0x73
#define CCW_CMD_SET_VIRTIO_REV 0x83
@@ -160,6 +161,7 @@ static struct airq_info *airq_areas[MAX_AIRQ_AREAS];
#define V...
2016 Apr 11
1
[PATCH 0/1] virtio_ccw: new status accessor in driver
This patch implements the new status accessor in the ccw device,
as laid out in "[PATCH v2 1/1] ccw: add CCW_CMD_READ_STATUS".
Changes from the RFC (back in September):
- rebased
Pierre Morel (1):
virtio/s390: support READ_STATUS command for virtio-ccw
drivers/s390/virtio/virtio_ccw.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
--
2.6.6
2017 Jan 16
0
[PULL 3/5] virtio/s390: support READ_STATUS command for virtio-ccw
...+++++++++
1 file changed, 25 insertions(+)
diff --git a/drivers/s390/virtio/virtio_ccw.c b/drivers/s390/virtio/virtio_ccw.c
index 639ed4e6afd1..01e3dcfd7c64 100644
--- a/drivers/s390/virtio/virtio_ccw.c
+++ b/drivers/s390/virtio/virtio_ccw.c
@@ -145,6 +145,7 @@ static struct airq_info *airq_areas[MAX_AIRQ_AREAS];
#define CCW_CMD_WRITE_CONF 0x21
#define CCW_CMD_WRITE_STATUS 0x31
#define CCW_CMD_READ_VQ_CONF 0x32
+#define CCW_CMD_READ_STATUS 0x72
#define CCW_CMD_SET_IND_ADAPTER 0x73
#define CCW_CMD_SET_VIRTIO_REV 0x83
@@ -160,6 +161,7 @@ static struct airq_info *airq_areas[MAX_AIRQ_AREAS];
#define V...
2019 Jun 03
1
[PATCH v3 8/8] virtio/s390: make airq summary indicators DMA
...+++++++++++++++-------
> 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);
2019 Jul 24
0
[PATCH 1/1] virtio/s390: fix race on airq_areas
...io_ccw.c b/drivers/s390/virtio/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;
>...