diff options
author | Frank Pavlic <fpavlic@de.ibm.com> | 2006-09-15 10:26:52 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-09-17 01:03:07 -0400 |
commit | f956b6902eabbff249000287c7b36cd65761d8b8 (patch) | |
tree | 8452e831e5361be54e392cf678abefa55716a719 /drivers/s390/net/qeth.h | |
parent | 09d2d38a152419467f764c0f730821e896766c1f (diff) |
[PATCH] s390: qeth driver fixes [5/6]
[PATCH 8/9] s390: qeth driver fixes [5/6]
From: Frank Pavlic <fpavlic@de.ibm.com>
fix kernel panic in qdio queue handling.
qeth_qdio_clear_card() could be invoked by 2 CPUs
simultaneously (for example reboot event and recovery).
Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/s390/net/qeth.h')
-rw-r--r-- | drivers/s390/net/qeth.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/s390/net/qeth.h b/drivers/s390/net/qeth.h index 22a7ffbcaa42..821383d8cbe7 100644 --- a/drivers/s390/net/qeth.h +++ b/drivers/s390/net/qeth.h | |||
@@ -463,6 +463,7 @@ enum qeth_qdio_info_states { | |||
463 | QETH_QDIO_UNINITIALIZED, | 463 | QETH_QDIO_UNINITIALIZED, |
464 | QETH_QDIO_ALLOCATED, | 464 | QETH_QDIO_ALLOCATED, |
465 | QETH_QDIO_ESTABLISHED, | 465 | QETH_QDIO_ESTABLISHED, |
466 | QETH_QDIO_CLEANING | ||
466 | }; | 467 | }; |
467 | 468 | ||
468 | struct qeth_buffer_pool_entry { | 469 | struct qeth_buffer_pool_entry { |
@@ -537,7 +538,7 @@ struct qeth_qdio_out_q { | |||
537 | } __attribute__ ((aligned(256))); | 538 | } __attribute__ ((aligned(256))); |
538 | 539 | ||
539 | struct qeth_qdio_info { | 540 | struct qeth_qdio_info { |
540 | volatile enum qeth_qdio_info_states state; | 541 | atomic_t state; |
541 | /* input */ | 542 | /* input */ |
542 | struct qeth_qdio_q *in_q; | 543 | struct qeth_qdio_q *in_q; |
543 | struct qeth_qdio_buffer_pool in_buf_pool; | 544 | struct qeth_qdio_buffer_pool in_buf_pool; |