diff options
author | Al Viro <viro@ftp.linux.org.uk> | 2006-12-06 14:18:20 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-06 17:51:14 -0500 |
commit | 4927b3f74c6a2fd92226dcf1542a598be9738808 (patch) | |
tree | aee712f33f32a6dc992434773fd0de41e335078e /drivers/s390/cio/css.c | |
parent | f9e9dcb38f5106fa8cdac04a9e967d5487f1cd20 (diff) |
[PATCH] More work_struct induced breakage (s390)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/s390/cio/css.c')
-rw-r--r-- | drivers/s390/cio/css.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/s390/cio/css.c b/drivers/s390/cio/css.c index ad7f7e1c0163..26cf2f5ae2e7 100644 --- a/drivers/s390/cio/css.c +++ b/drivers/s390/cio/css.c | |||
@@ -334,7 +334,7 @@ static LIST_HEAD(slow_subchannels_head); | |||
334 | static DEFINE_SPINLOCK(slow_subchannel_lock); | 334 | static DEFINE_SPINLOCK(slow_subchannel_lock); |
335 | 335 | ||
336 | static void | 336 | static void |
337 | css_trigger_slow_path(void) | 337 | css_trigger_slow_path(struct work_struct *unused) |
338 | { | 338 | { |
339 | CIO_TRACE_EVENT(4, "slowpath"); | 339 | CIO_TRACE_EVENT(4, "slowpath"); |
340 | 340 | ||
@@ -359,8 +359,7 @@ css_trigger_slow_path(void) | |||
359 | spin_unlock_irq(&slow_subchannel_lock); | 359 | spin_unlock_irq(&slow_subchannel_lock); |
360 | } | 360 | } |
361 | 361 | ||
362 | typedef void (*workfunc)(void *); | 362 | DECLARE_WORK(slow_path_work, css_trigger_slow_path); |
363 | DECLARE_WORK(slow_path_work, (workfunc)css_trigger_slow_path, NULL); | ||
364 | struct workqueue_struct *slow_path_wq; | 363 | struct workqueue_struct *slow_path_wq; |
365 | 364 | ||
366 | /* Reprobe subchannel if unregistered. */ | 365 | /* Reprobe subchannel if unregistered. */ |
@@ -397,7 +396,7 @@ static int reprobe_subchannel(struct subchannel_id schid, void *data) | |||
397 | } | 396 | } |
398 | 397 | ||
399 | /* Work function used to reprobe all unregistered subchannels. */ | 398 | /* Work function used to reprobe all unregistered subchannels. */ |
400 | static void reprobe_all(void *data) | 399 | static void reprobe_all(struct work_struct *unused) |
401 | { | 400 | { |
402 | int ret; | 401 | int ret; |
403 | 402 | ||
@@ -413,7 +412,7 @@ static void reprobe_all(void *data) | |||
413 | need_reprobe); | 412 | need_reprobe); |
414 | } | 413 | } |
415 | 414 | ||
416 | DECLARE_WORK(css_reprobe_work, reprobe_all, NULL); | 415 | DECLARE_WORK(css_reprobe_work, reprobe_all); |
417 | 416 | ||
418 | /* Schedule reprobing of all unregistered subchannels. */ | 417 | /* Schedule reprobing of all unregistered subchannels. */ |
419 | void css_schedule_reprobe(void) | 418 | void css_schedule_reprobe(void) |