| .. | .. |
|---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-only */ |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. |
|---|
| 3 | 4 | * Copyright (C) 2004-2008 Red Hat, Inc. All rights reserved. |
|---|
| 4 | | - * |
|---|
| 5 | | - * This copyrighted material is made available to anyone wishing to use, |
|---|
| 6 | | - * modify, copy, or redistribute it subject to the terms and conditions |
|---|
| 7 | | - * of the GNU General Public License version 2. |
|---|
| 8 | 5 | */ |
|---|
| 9 | 6 | |
|---|
| 10 | 7 | #ifndef __LOPS_DOT_H__ |
|---|
| .. | .. |
|---|
| 20 | 17 | ((sizeof(struct gfs2_log_descriptor) + (2 * sizeof(__be64) - 1)) & \ |
|---|
| 21 | 18 | ~(2 * sizeof(__be64) - 1)) |
|---|
| 22 | 19 | |
|---|
| 23 | | -extern const struct gfs2_log_operations gfs2_glock_lops; |
|---|
| 24 | | -extern const struct gfs2_log_operations gfs2_buf_lops; |
|---|
| 25 | | -extern const struct gfs2_log_operations gfs2_revoke_lops; |
|---|
| 26 | | -extern const struct gfs2_log_operations gfs2_databuf_lops; |
|---|
| 27 | | - |
|---|
| 28 | 20 | extern const struct gfs2_log_operations *gfs2_log_ops[]; |
|---|
| 29 | | -extern u64 gfs2_log_bmap(struct gfs2_sbd *sdp); |
|---|
| 21 | +extern void gfs2_log_incr_head(struct gfs2_sbd *sdp); |
|---|
| 22 | +extern u64 gfs2_log_bmap(struct gfs2_jdesc *jd, unsigned int lbn); |
|---|
| 30 | 23 | extern void gfs2_log_write(struct gfs2_sbd *sdp, struct page *page, |
|---|
| 31 | 24 | unsigned size, unsigned offset, u64 blkno); |
|---|
| 32 | 25 | extern void gfs2_log_write_page(struct gfs2_sbd *sdp, struct page *page); |
|---|
| 33 | | -extern void gfs2_log_flush_bio(struct gfs2_sbd *sdp, int op, int op_flags); |
|---|
| 26 | +extern void gfs2_log_submit_bio(struct bio **biop, int opf); |
|---|
| 34 | 27 | extern void gfs2_pin(struct gfs2_sbd *sdp, struct buffer_head *bh); |
|---|
| 35 | | - |
|---|
| 28 | +extern int gfs2_find_jhead(struct gfs2_jdesc *jd, |
|---|
| 29 | + struct gfs2_log_header_host *head, bool keep_cache); |
|---|
| 36 | 30 | static inline unsigned int buf_limit(struct gfs2_sbd *sdp) |
|---|
| 37 | 31 | { |
|---|
| 38 | 32 | unsigned int limit; |
|---|
| .. | .. |
|---|
| 77 | 71 | gfs2_log_ops[x]->lo_before_scan(jd, head, pass); |
|---|
| 78 | 72 | } |
|---|
| 79 | 73 | |
|---|
| 80 | | -static inline int lops_scan_elements(struct gfs2_jdesc *jd, unsigned int start, |
|---|
| 74 | +static inline int lops_scan_elements(struct gfs2_jdesc *jd, u32 start, |
|---|
| 81 | 75 | struct gfs2_log_descriptor *ld, |
|---|
| 82 | 76 | __be64 *ptr, |
|---|
| 83 | 77 | unsigned int pass) |
|---|