From: Ben Myers <bpm@sgi.com>
To: Dave Chinner <david@fromorbit.com>
Cc: xfs@oss.sgi.com
Subject: Re: [PATCH 00/10] xfs: discontiguous buffer support a.k.a. die xfs_dabuf die
Date: Wed, 30 May 2012 09:48:01 -0500 [thread overview]
Message-ID: <20120530144801.GD4721@sgi.com> (raw)
In-Reply-To: <20120523092746.GM25351@dastard>
Hey Dave,
On Wed, May 23, 2012 at 07:27:46PM +1000, Dave Chinner wrote:
> On Wed, May 16, 2012 at 12:40:42PM -0500, Ben Myers wrote:
> > Hey Dave,
> >
> > Looks like there are some additional test failures due to this patchset. Here
> > some output from a bisect I did yesterday, running only the tests which failed
> > on the machine where I noticed this.
>
> So what the configuration you are testing on here?
This is an x86_64 box, a pair of dual core xeon @ 3.6Ghz, a single internal
disk.
my config:
TEST_DIR=/mnt/test
TEST_DEV=/dev/sdb3
TEST_LOGDEV=/dev/sdb1
SCRATCH_MNT=/mnt/scratch
SCRATCH_DEV=/dev/sdb4
SCRATCH_LOGDEV=/dev/sdb2
80gig of memory
# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 68627996 15411112 49730780 24% /
devtmpfs 4032444 96 4032348 1% /dev
tmpfs 4032444 0 4032444 0% /dev/shm
/dev/sdb3 36896036 4200608 32695428 12% /mnt/test
/dev/sdb4 2086912 67856 2019056 4% /mnt/scratch
> ....
> >
> > # git describe
> > v3.4-rc2-54-g1307bbd
>
> That's mostly meaningless to me - you've got a 3.4-rc2 kernel with
> 54 local commits in it.
My intention was that this refer to some publicly available repo. The script
should probably say which one. ;)
In this case it refers to xfs master git tree on oss.
> > from patches/series:
> > # normal: (there's my baseline on this machine. I noticed a larger number of test failures on another test box and brought that series over here)
> > #Failures: 030 178 230 231 232 233 250 274
> > #Failed 8 of 198 tests
> ......
> >
> > xfs-fix-delalloc-quota-accounting-on-failure.patch
> > xfs-fix-memory-reclaim-deadlock-on-agi-buffer.patch
> > xfs-add-trace-points-for-log-forces.patch
> > xfs-separate-buffer-indexing-from-block-map.patch
> > xfs-convert-internal-buffer-functions-to-pass-maps.patch
> > xfs-add-discontiguous-buffer-map-interface.patch
> > xfs-add-discontiguous-buffer-support-to-transactions.patch
> >
> > # ^^^ bisect 1, went ok.
> > # 030 050 085 086 087 121 128 179 182 200 230 231 232 233 235
> > # Failures: 030 230 231 232 233
> > # Failed 5 of 15 tests
>
>
> > # ^^^ bisect 4, making sure it's good
> > #Ran: 030 050 085 086 087 121 128 179 182 200 230 231 232 233 235
> > #Failures: 030 230 231 232 233
> > #Failed 5 of 15 tests
> >
> > xfs-struct-xfs_buf_log_format-isn-t-variable-sized.patch
> >
> > # ^^^ bisect 5, crashed. (consistently)
> >
> > xfs-support-discontiguous-buffers-in-the.patch
> >
> > # ^^^ bisect 6
> > #Ran: 030 050 085 086 087 121 128 179 182 200 230 231 232 233 235
> > #Failures: 030 085 086 087 121 179 182 200 230 231 232 233
> > #Failed 12 of 15 tests
>
> So, 085 086 087 121 179 182 200 are all log recovery tests.....
>
> So what are the failures?
I'll have to do another run to gather those up.
> This doesn't tell me anything about why
> these have failed, and the last set of test runs I did before
> posting this series showed:
> Failures: 030 050 073 249 250 263
> Failed 6 of 197 tests
>
> Which is standard for my 4k filesystem block size testing.
>
> > Looks like there is a problem in
> > xfs-struct-xfs_buf_log_format-isn-t-variable-sized.patch,
>
> Given the crashes, this is the likely cause of the problem.
> Especially as the version of the patch in this series is missing a
> critical hunk compared to the local patch I have been testing which
> would cause memcpy() to fall off the end of allocated memory
> buffers....
>
> --- a/fs/xfs/xfs_buf_item.c
> +++ b/fs/xfs/xfs_buf_item.c
> @@ -240,15 +240,14 @@ xfs_buf_item_format(
> (bip->bli_flags & XFS_BLI_STALE));
>
> /*
> - * The size of the base structure is the size of the
> - * declared structure plus the space for the extra words
> - * of the bitmap. We subtract one from the map size, because
> - * the first element of the bitmap is accounted for in the
> - * size of the base structure.
> + * Base size is the actual size of the ondisk structure - it reflects
> + * the actual size of the dirty bitmap rather than the size of the in
> + * memory structure. The xfs_buf_log_format size is the maximum,
> + * subtract the unused part of the bitmap from it.
> */
> - base_size =
> - (uint)(sizeof(xfs_buf_log_format_t) +
> - ((bip->bli_format.blf_map_size - 1) * sizeof(uint)));
> + base_size = sizeof(struct xfs_buf_log_format) -
> + ((XFS_BLF_DATAMAP_SIZE - bip->bli_format.blf_map_size) *
> + sizeof(uint));
> vecp->i_addr = &bip->bli_format;
> vecp->i_len = base_size;
> vecp->i_type = XLOG_REG_TYPE_BFORMAT;
>
>
> I'll retest the series and repost it.
Ok, looking forward to seeing it.
-Ben
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2012-05-30 14:42 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-24 6:33 [PATCH 00/10] xfs: discontiguous buffer support a.k.a. die xfs_dabuf die Dave Chinner
2012-04-24 6:33 ` [PATCH 01/10] xfs: add trace points for log forces Dave Chinner
2012-04-30 19:25 ` Mark Tinguely
2012-04-24 6:33 ` [PATCH 02/10] xfs: separate buffer indexing from block map Dave Chinner
2012-04-30 19:28 ` Mark Tinguely
2012-04-30 23:24 ` Dave Chinner
2012-05-01 13:16 ` Mark Tinguely
2012-05-02 1:16 ` Dave Chinner
2012-04-24 6:33 ` [PATCH 03/10] xfs: convert internal buffer functions to pass maps Dave Chinner
2012-05-01 15:13 ` Mark Tinguely
2012-04-24 6:33 ` [PATCH 04/10] xfs: add discontiguous buffer map interface Dave Chinner
2012-05-01 18:10 ` Mark Tinguely
2012-04-24 6:33 ` [PATCH 05/10] xfs: add discontiguous buffer support to transactions Dave Chinner
2012-05-03 19:41 ` Mark Tinguely
2012-04-24 6:33 ` [PATCH 06/10] xfs: struct xfs_buf_log_format isn't variable sized Dave Chinner
2012-05-02 13:39 ` Mark Tinguely
2012-04-24 6:33 ` [PATCH 07/10] xfs: support discontiguous buffers in the xfs_buf_log_item Dave Chinner
2012-05-03 19:42 ` Mark Tinguely
2012-04-24 6:33 ` [PATCH 08/10] xfs: use multiple irec xfs buf support in dabuf Dave Chinner
2012-05-03 19:43 ` Mark Tinguely
2012-04-24 6:33 ` [PATCH 09/10] xfs: remove struct xfs_dabuf and infrastructure Dave Chinner
2012-05-04 19:54 ` Mark Tinguely
2012-04-24 6:33 ` [PATCH 10/10] xfs: factor buffer reading from xfs_dir2_leaf_getdents Dave Chinner
2012-05-04 12:42 ` Mark Tinguely
2012-05-16 17:40 ` [PATCH 00/10] xfs: discontiguous buffer support a.k.a. die xfs_dabuf die Ben Myers
2012-05-23 9:27 ` Dave Chinner
2012-05-30 14:48 ` Ben Myers [this message]
2012-05-30 19:48 ` Ben Myers
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=20120530144801.GD4721@sgi.com \
--to=bpm@sgi.com \
--cc=david@fromorbit.com \
--cc=xfs@oss.sgi.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: link
Be 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