diff options
Diffstat (limited to 'fs/gfs2/glock.c')
-rw-r--r-- | fs/gfs2/glock.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c index f130f9894bda..438146904b58 100644 --- a/fs/gfs2/glock.c +++ b/fs/gfs2/glock.c | |||
@@ -35,7 +35,7 @@ | |||
35 | 35 | ||
36 | struct greedy { | 36 | struct greedy { |
37 | struct gfs2_holder gr_gh; | 37 | struct gfs2_holder gr_gh; |
38 | struct work_struct gr_work; | 38 | struct delayed_work gr_work; |
39 | }; | 39 | }; |
40 | 40 | ||
41 | struct gfs2_gl_hash_bucket { | 41 | struct gfs2_gl_hash_bucket { |
@@ -1350,9 +1350,9 @@ static void gfs2_glock_prefetch(struct gfs2_glock *gl, unsigned int state, | |||
1350 | glops->go_xmote_th(gl, state, flags); | 1350 | glops->go_xmote_th(gl, state, flags); |
1351 | } | 1351 | } |
1352 | 1352 | ||
1353 | static void greedy_work(void *data) | 1353 | static void greedy_work(struct work_struct *work) |
1354 | { | 1354 | { |
1355 | struct greedy *gr = data; | 1355 | struct greedy *gr = container_of(work, struct greedy, gr_work.work); |
1356 | struct gfs2_holder *gh = &gr->gr_gh; | 1356 | struct gfs2_holder *gh = &gr->gr_gh; |
1357 | struct gfs2_glock *gl = gh->gh_gl; | 1357 | struct gfs2_glock *gl = gh->gh_gl; |
1358 | const struct gfs2_glock_operations *glops = gl->gl_ops; | 1358 | const struct gfs2_glock_operations *glops = gl->gl_ops; |
@@ -1404,7 +1404,7 @@ int gfs2_glock_be_greedy(struct gfs2_glock *gl, unsigned int time) | |||
1404 | 1404 | ||
1405 | gfs2_holder_init(gl, 0, 0, gh); | 1405 | gfs2_holder_init(gl, 0, 0, gh); |
1406 | set_bit(HIF_GREEDY, &gh->gh_iflags); | 1406 | set_bit(HIF_GREEDY, &gh->gh_iflags); |
1407 | INIT_WORK(&gr->gr_work, greedy_work, gr); | 1407 | INIT_DELAYED_WORK(&gr->gr_work, greedy_work); |
1408 | 1408 | ||
1409 | set_bit(GLF_SKIP_WAITERS2, &gl->gl_flags); | 1409 | set_bit(GLF_SKIP_WAITERS2, &gl->gl_flags); |
1410 | schedule_delayed_work(&gr->gr_work, time); | 1410 | schedule_delayed_work(&gr->gr_work, time); |