xref: /linux/fs/gfs2/recovery.h (revision 0b2355fe)
17336d0e6SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
2b3b94faaSDavid Teigland /*
3b3b94faaSDavid Teigland  * Copyright (C) Sistina Software, Inc.  1997-2003 All rights reserved.
43a8a9a10SSteven Whitehouse  * Copyright (C) 2004-2006 Red Hat, Inc.  All rights reserved.
5b3b94faaSDavid Teigland  */
6b3b94faaSDavid Teigland 
7b3b94faaSDavid Teigland #ifndef __RECOVERY_DOT_H__
8b3b94faaSDavid Teigland #define __RECOVERY_DOT_H__
9b3b94faaSDavid Teigland 
10f2f7ba52SSteven Whitehouse #include "incore.h"
11f2f7ba52SSteven Whitehouse 
125c0dc371SAndreas Gruenbacher extern struct workqueue_struct *gfs2_recovery_wq;
136ecd7c2dSTejun Heo 
gfs2_replay_incr_blk(struct gfs2_jdesc * jd,u32 * blk)147c70b896SBob Peterson static inline void gfs2_replay_incr_blk(struct gfs2_jdesc *jd, u32 *blk)
15b3b94faaSDavid Teigland {
16e1cb6be9SBob Peterson 	if (++*blk == jd->jd_blocks)
17b3b94faaSDavid Teigland 	        *blk = 0;
18b3b94faaSDavid Teigland }
19b3b94faaSDavid Teigland 
20*0b2355feSAndreas Gruenbacher int gfs2_replay_read_block(struct gfs2_jdesc *jd, unsigned int blk,
21b3b94faaSDavid Teigland 			   struct buffer_head **bh);
22b3b94faaSDavid Teigland 
23*0b2355feSAndreas Gruenbacher int gfs2_revoke_add(struct gfs2_jdesc *jd, u64 blkno, unsigned int where);
24*0b2355feSAndreas Gruenbacher int gfs2_revoke_check(struct gfs2_jdesc *jd, u64 blkno, unsigned int where);
25*0b2355feSAndreas Gruenbacher void gfs2_revoke_clean(struct gfs2_jdesc *jd);
26b3b94faaSDavid Teigland 
27*0b2355feSAndreas Gruenbacher int gfs2_recover_journal(struct gfs2_jdesc *gfs2_jd, bool wait);
28*0b2355feSAndreas Gruenbacher void gfs2_recover_func(struct work_struct *work);
29*0b2355feSAndreas Gruenbacher int __get_log_header(struct gfs2_sbd *sdp,
3040e0e61eSAbhi Das 		     const struct gfs2_log_header *lh, unsigned int blkno,
3140e0e61eSAbhi Das 		     struct gfs2_log_header_host *head);
32b3b94faaSDavid Teigland 
33b3b94faaSDavid Teigland #endif /* __RECOVERY_DOT_H__ */
34b3b94faaSDavid Teigland 
35