Commit f6ca45e3 authored by Andreas Gruenbacher's avatar Andreas Gruenbacher
Browse files

gfs2: Use mod_delayed_work in gfs2_queue_try_to_evict



In the unlikely case that we're trying to queue GLF_TRY_TO_EVICT work
for an inode that already has GLF_VERIFY_DELETE work queued, we want to
make sure that the GLF_TRY_TO_EVICT work gets scheduled immediately
instead of waiting for the delayed work timer to expire.

Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
parent a6033333
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -1008,8 +1008,7 @@ bool gfs2_queue_try_to_evict(struct gfs2_glock *gl)

	if (test_and_set_bit(GLF_TRY_TO_EVICT, &gl->gl_flags))
		return false;
	return queue_delayed_work(sdp->sd_delete_wq,
				  &gl->gl_delete, 0);
	return !mod_delayed_work(sdp->sd_delete_wq, &gl->gl_delete, 0);
}

bool gfs2_queue_verify_delete(struct gfs2_glock *gl, bool later)