public inbox for cluster-cvs@sourceware.org help / color / mirror / Atom feed
From: Bob Peterson <rpeterso@fedoraproject.org> To: cluster-cvs-relay@redhat.com Subject: cluster: RHEL5 - gfs2_edit produces unaligned access Date: Sun, 19 Jul 2009 04:44:00 -0000 [thread overview] Message-ID: <20090719044400.677BB120269@lists.fedorahosted.org> (raw) Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=3a7d9047ac8192bd621dfc8ef22918070faafb67 Commit: 3a7d9047ac8192bd621dfc8ef22918070faafb67 Parent: c4344d672a442a24a176706ab3be71f8098dc33e Author: Bob Peterson <rpeterso@redhat.com> AuthorDate: Sat Jul 18 22:44:31 2009 -0500 Committer: Bob Peterson <rpeterso@redhat.com> CommitterDate: Sat Jul 18 22:44:31 2009 -0500 gfs2_edit produces unaligned access bz 503530 --- gfs2/edit/hexedit.c | 5 ++--- gfs2/edit/savemeta.c | 10 +++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/gfs2/edit/hexedit.c b/gfs2/edit/hexedit.c index 38274c2..5937663 100644 --- a/gfs2/edit/hexedit.c +++ b/gfs2/edit/hexedit.c @@ -872,9 +872,8 @@ void rgcount(void) /* ------------------------------------------------------------------------ */ uint64_t find_rgrp_block(struct gfs2_inode *di, int rg) { - char buf[sizeof(struct gfs2_rindex)]; int amt; - struct gfs2_rindex ri; + struct gfs2_rindex buf, ri; uint64_t offset, gfs1_adj = 0; offset = rg * risize(); @@ -889,7 +888,7 @@ uint64_t find_rgrp_block(struct gfs2_inode *di, int rg) amt = gfs2_readi(di, (void *)&buf, offset + gfs1_adj, risize()); if (!amt) /* end of file */ return 0; - gfs2_rindex_in(&ri, buf); + gfs2_rindex_in(&ri, (void *)&buf); return ri.ri_addr; } diff --git a/gfs2/edit/savemeta.c b/gfs2/edit/savemeta.c index 3a058fb..01d2bc3 100644 --- a/gfs2/edit/savemeta.c +++ b/gfs2/edit/savemeta.c @@ -66,12 +66,13 @@ uint64_t masterblock(const char *fn); */ int get_gfs_struct_info(char *buf, int *block_type, int *struct_len) { - struct gfs2_meta_header mh; + struct gfs2_meta_header mh, mhbuf; *block_type = 0; *struct_len = sbd.bsize; - gfs2_meta_header_in(&mh, buf); + memcpy(&mhbuf, buf, sizeof(mhbuf)); + gfs2_meta_header_in(&mh, (void *)&mhbuf); if (mh.mh_magic != GFS2_MAGIC) return -1; @@ -736,7 +737,10 @@ int restore_data(int fd, int in_fd, int printblocksonly) do_read(in_fd, savedata->buf, savedata->siglen); if (first) { - gfs2_sb_in(&sbd.sd_sb, savedata->buf); + struct gfs2_sb bufsb; + + memcpy(&bufsb, savedata->buf, sizeof(bufsb)); + gfs2_sb_in(&sbd.sd_sb, (void *)&bufsb); sbd1 = (struct gfs_sb *)&sbd.sd_sb; if (sbd1->sb_fs_format == GFS_FORMAT_FS && sbd1->sb_header.mh_type ==
reply other threads:[~2009-07-19 4:44 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20090719044400.677BB120269@lists.fedorahosted.org \ --to=rpeterso@fedoraproject.org \ --cc=cluster-cvs-relay@redhat.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).