diff options
-rw-r--r-- | drivers/s390/cio/airq.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/s390/cio/airq.c b/drivers/s390/cio/airq.c index fe6cea15bbaf..d3850dc30e42 100644 --- a/drivers/s390/cio/airq.c +++ b/drivers/s390/cio/airq.c | |||
@@ -133,6 +133,8 @@ void do_adapter_IO(u8 isc) | |||
133 | while (word) { | 133 | while (word) { |
134 | if (word & INDICATOR_MASK) { | 134 | if (word & INDICATOR_MASK) { |
135 | airq = airqs[isc][i]; | 135 | airq = airqs[isc][i]; |
136 | /* Make sure gcc reads from airqs only once. */ | ||
137 | barrier(); | ||
136 | if (likely(airq)) | 138 | if (likely(airq)) |
137 | airq->handler(&indicators[isc].byte[i], | 139 | airq->handler(&indicators[isc].byte[i], |
138 | airq->drv_data); | 140 | airq->drv_data); |