提交 7883097f 编写于 作者: J Jan Glauber 提交者: Martin Schwidefsky

[S390] qdio: remove superfluous log entries and WARN_ONs.

* Don't write debug feature log entries for sl, slsb and sbal since these
  elements can be located from the qdio_q pointer which is also logged.
* Convert WARN_ON for wrong alignment of sbal to BUG_ON.
* Remove WARN_ON's for wrong alignment of q / qib / slib since these
  alignments should be guaranteed by kmem_cache_alloc alignment /
  struct aligned attribute / __get_free_page.
Signed-off-by: NJan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
上级 ca633fd0
...@@ -48,7 +48,6 @@ static void set_impl_params(struct qdio_irq *irq_ptr, ...@@ -48,7 +48,6 @@ static void set_impl_params(struct qdio_irq *irq_ptr,
if (!irq_ptr) if (!irq_ptr)
return; return;
WARN_ON((unsigned long)&irq_ptr->qib & 0xff);
irq_ptr->qib.pfmt = qib_param_field_format; irq_ptr->qib.pfmt = qib_param_field_format;
if (qib_param_field) if (qib_param_field)
memcpy(irq_ptr->qib.parm, qib_param_field, memcpy(irq_ptr->qib.parm, qib_param_field,
...@@ -82,14 +81,12 @@ static int __qdio_allocate_qs(struct qdio_q **irq_ptr_qs, int nr_queues) ...@@ -82,14 +81,12 @@ static int __qdio_allocate_qs(struct qdio_q **irq_ptr_qs, int nr_queues)
q = kmem_cache_alloc(qdio_q_cache, GFP_KERNEL); q = kmem_cache_alloc(qdio_q_cache, GFP_KERNEL);
if (!q) if (!q)
return -ENOMEM; return -ENOMEM;
WARN_ON((unsigned long)q & 0xff);
q->slib = (struct slib *) __get_free_page(GFP_KERNEL); q->slib = (struct slib *) __get_free_page(GFP_KERNEL);
if (!q->slib) { if (!q->slib) {
kmem_cache_free(qdio_q_cache, q); kmem_cache_free(qdio_q_cache, q);
return -ENOMEM; return -ENOMEM;
} }
WARN_ON((unsigned long)q->slib & 0x7ff);
irq_ptr_qs[i] = q; irq_ptr_qs[i] = q;
} }
return 0; return 0;
...@@ -131,7 +128,7 @@ static void setup_storage_lists(struct qdio_q *q, struct qdio_irq *irq_ptr, ...@@ -131,7 +128,7 @@ static void setup_storage_lists(struct qdio_q *q, struct qdio_irq *irq_ptr,
/* fill in sbal */ /* fill in sbal */
for (j = 0; j < QDIO_MAX_BUFFERS_PER_Q; j++) { for (j = 0; j < QDIO_MAX_BUFFERS_PER_Q; j++) {
q->sbal[j] = *sbals_array++; q->sbal[j] = *sbals_array++;
WARN_ON((unsigned long)q->sbal[j] & 0xff); BUG_ON((unsigned long)q->sbal[j] & 0xff);
} }
/* fill in slib */ /* fill in slib */
...@@ -147,11 +144,6 @@ static void setup_storage_lists(struct qdio_q *q, struct qdio_irq *irq_ptr, ...@@ -147,11 +144,6 @@ static void setup_storage_lists(struct qdio_q *q, struct qdio_irq *irq_ptr,
/* fill in sl */ /* fill in sl */
for (j = 0; j < QDIO_MAX_BUFFERS_PER_Q; j++) for (j = 0; j < QDIO_MAX_BUFFERS_PER_Q; j++)
q->sl->element[j].sbal = (unsigned long)q->sbal[j]; q->sl->element[j].sbal = (unsigned long)q->sbal[j];
DBF_EVENT("sl-slsb-sbal");
DBF_HEX(q->sl, sizeof(void *));
DBF_HEX(&q->slsb, sizeof(void *));
DBF_HEX(q->sbal, sizeof(void *));
} }
static void setup_queues(struct qdio_irq *irq_ptr, static void setup_queues(struct qdio_irq *irq_ptr,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册