diff options
author | Steven Whitehouse <swhiteho@redhat.com> | 2007-09-17 05:59:52 -0400 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2007-10-10 03:56:24 -0400 |
commit | 16615be18cadf53ee6f8a4f0bdd647f0753421b1 (patch) | |
tree | 670c75e931e6d606211f338ee5e8b1d603c96521 /fs/gfs2/incore.h | |
parent | 55c0c4ac0be144014651b19e77c9b77f367955de (diff) |
[GFS2] Clean up journaled data writing
This patch cleans up the code for writing journaled data into the log.
It also removes the need to allocate a small "tag" structure for each
block written into the log. Instead we just keep count of the outstanding
I/O so that we can be sure that its all been written at the correct time.
Another result of this patch is that a number of ll_rw_block() calls
have become submit_bh() calls, closing some races at the same time.
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/incore.h')
-rw-r--r-- | fs/gfs2/incore.h | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h index 8aa5780862be..eaddfb5a8e6f 100644 --- a/fs/gfs2/incore.h +++ b/fs/gfs2/incore.h | |||
@@ -341,12 +341,6 @@ struct gfs2_quota_data { | |||
341 | unsigned long qd_last_touched; | 341 | unsigned long qd_last_touched; |
342 | }; | 342 | }; |
343 | 343 | ||
344 | struct gfs2_log_buf { | ||
345 | struct list_head lb_list; | ||
346 | struct buffer_head *lb_bh; | ||
347 | struct buffer_head *lb_real; | ||
348 | }; | ||
349 | |||
350 | struct gfs2_trans { | 344 | struct gfs2_trans { |
351 | unsigned long tr_ip; | 345 | unsigned long tr_ip; |
352 | 346 | ||
@@ -631,7 +625,8 @@ struct gfs2_sbd { | |||
631 | 625 | ||
632 | unsigned long sd_log_flush_time; | 626 | unsigned long sd_log_flush_time; |
633 | struct rw_semaphore sd_log_flush_lock; | 627 | struct rw_semaphore sd_log_flush_lock; |
634 | struct list_head sd_log_flush_list; | 628 | atomic_t sd_log_in_flight; |
629 | wait_queue_head_t sd_log_flush_wait; | ||
635 | 630 | ||
636 | unsigned int sd_log_flush_head; | 631 | unsigned int sd_log_flush_head; |
637 | u64 sd_log_flush_wrapped; | 632 | u64 sd_log_flush_wrapped; |