Commit 73092698 authored by Abhi Das's avatar Abhi Das Committed by Andreas Gruenbacher
Browse files

gfs2: Add fields for statfs info in struct gfs2_log_header_host



And read these in __get_log_header() from the log header.
Also make gfs2_statfs_change_out() non-static so it can be used
outside of super.c

Signed-off-by: default avatarAbhi Das <adas@redhat.com>
Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
parent ed3adb37
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -41,6 +41,10 @@ struct gfs2_log_header_host {
	u32 lh_flags;		/* GFS2_LOG_HEAD_... */
	u32 lh_tail;		/* Block number of log tail */
	u32 lh_blkno;

	s64 lh_local_total;
	s64 lh_local_free;
	s64 lh_local_dinodes;
};

/*
+4 −0
Original line number Diff line number Diff line
@@ -144,6 +144,10 @@ int __get_log_header(struct gfs2_sbd *sdp, const struct gfs2_log_header *lh,
	head->lh_tail = be32_to_cpu(lh->lh_tail);
	head->lh_blkno = be32_to_cpu(lh->lh_blkno);

	head->lh_local_total = be64_to_cpu(lh->lh_local_total);
	head->lh_local_free = be64_to_cpu(lh->lh_local_free);
	head->lh_local_dinodes = be64_to_cpu(lh->lh_local_dinodes);

	return 0;
}
/**
+1 −1
Original line number Diff line number Diff line
@@ -230,7 +230,7 @@ void gfs2_statfs_change_in(struct gfs2_statfs_change_host *sc, const void *buf)
	sc->sc_dinodes = be64_to_cpu(str->sc_dinodes);
}

static void gfs2_statfs_change_out(const struct gfs2_statfs_change_host *sc, void *buf)
void gfs2_statfs_change_out(const struct gfs2_statfs_change_host *sc, void *buf)
{
	struct gfs2_statfs_change *str = buf;

+2 −0
Original line number Diff line number Diff line
@@ -37,6 +37,8 @@ extern void gfs2_statfs_change(struct gfs2_sbd *sdp, s64 total, s64 free,
			       s64 dinodes);
extern void gfs2_statfs_change_in(struct gfs2_statfs_change_host *sc,
				  const void *buf);
extern void gfs2_statfs_change_out(const struct gfs2_statfs_change_host *sc,
				   void *buf);
extern void update_statfs(struct gfs2_sbd *sdp, struct buffer_head *m_bh,
			  struct buffer_head *l_bh);
extern int gfs2_statfs_sync(struct super_block *sb, int type);