From: Dave Jones <davej@redhat.com>
To: Dave Chinner <david@fromorbit.com>
Cc: Linux Kernel <linux-kernel@vger.kernel.org>, xfs@oss.sgi.com
Subject: Re: XFS assertion from truncate. (3.10-rc2)
Date: Thu, 23 May 2013 14:49:48 -0400 [thread overview]
Message-ID: <20130523184948.GA11151@redhat.com> (raw)
In-Reply-To: <20130522215454.GL29466@dastard>
On Thu, May 23, 2013 at 07:54:54AM +1000, Dave Chinner wrote:
> Gah, I've got not idea what the hell I was smoking yesterday
> afternoon. 0x2000 is actually ATTR_FILE, and 0x8000 is ATTR_OPEN.
>
> So a mask of 0xa068 is correct and valid from the open path, and
> 0x2068 is just file from the truncate path.
>
> But, neither of those should trigger that assert. indeed, on a test
> kernel (3.10-rc2 based):
>
> # echo I need a new drug > /mnt/scr/bah/blah/black/sheep/foo
> [ 296.742990] XFS (vdb): xfs_setattr_size: mask 0xa068, masked # 0x0 ii 0xffff88003e6297c0, d 0xffff88003e5b9cb0 path /bah/blah/black/sheep/foo
> #
>
> And there's not assert failure. Indeed, the "masked # 0x0" is what
> the assert is checking.
>
> And yeah, path output works. Trick for anyone who doesn't read the
> code closely - the buffer is filled from the end backwards, and the
> start of the path is the return variable. So, the above code is:
>
> {
> struct dentry *d = d_find_alias(VFS_I(ip));
> char buf[MAXPATHLEN];
> char *ptr;
>
> memset(buf, 0, MAXPATHLEN);
> ptr = dentry_path(d, buf, MAXPATHLEN);
> xfs_warn(mp, "%s: mask 0x%x, masked 0x%x ii 0x%p, d 0x%p path %s",
> __func__, mask,
> (mask & (ATTR_MODE|ATTR_UID|ATTR_GID|ATTR_ATIME|ATTR_ATIME_SET|
> ATTR_MTIME_SET|ATTR_KILL_SUID|ATTR_KILL_SGID|
> ATTR_KILL_PRIV|ATTR_TIMES_SET)),
> ip, d, ptr);
> dput(d);
> }
>
> Which I put just before the assert that is firing on your machine.
>
> And, obviously, it isn't firing on mine and obviously shouldn't be firing on a
> mask of 0xa068.
With this, I get a spew of these when I start a kernel build..
[ 964.378690] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a95dac0, d 0xffff880221b5d970 path /davej/tmp/ccN2RrM5.s
[ 964.651927] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a95dac0, d 0xffff88020ff80b90 path /davej/tmp/ccB1Cdmo.s
[ 964.867444] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a95dac0, d 0xffff8802218a5bc0 path /davej/tmp/ccCUaXbG.s
[ 965.102661] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a95dac0, d 0xffff88020ffacde0 path /davej/tmp/cckMLf2X.s
[ 967.743312] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a93c200, d 0xffff88022212c250 path /davej/tmp/ccFMkBbA.s
[ 967.947154] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a93c200, d 0xffff8802226cc6f0 path /davej/tmp/cc5iX4SR.s
[ 968.009414] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a988000, d 0xffff8802219f1970 path /davej/tmp/ccvWCHTZ.o
[ 968.091504] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a9898c0, d 0xffff88022208de10 path /davej/tmp/cc9n6fnm.ld
[ 968.107997] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a98dac0, d 0xffff880221160de0 path /davej/tmp/cc5rlvHu.le
Dave
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
WARNING: multiple messages have this Message-ID (diff)
From: Dave Jones <davej@redhat.com>
To: Dave Chinner <david@fromorbit.com>
Cc: Linux Kernel <linux-kernel@vger.kernel.org>, xfs@oss.sgi.com
Subject: Re: XFS assertion from truncate. (3.10-rc2)
Date: Thu, 23 May 2013 14:49:48 -0400 [thread overview]
Message-ID: <20130523184948.GA11151@redhat.com> (raw)
In-Reply-To: <20130522215454.GL29466@dastard>
On Thu, May 23, 2013 at 07:54:54AM +1000, Dave Chinner wrote:
> Gah, I've got not idea what the hell I was smoking yesterday
> afternoon. 0x2000 is actually ATTR_FILE, and 0x8000 is ATTR_OPEN.
>
> So a mask of 0xa068 is correct and valid from the open path, and
> 0x2068 is just file from the truncate path.
>
> But, neither of those should trigger that assert. indeed, on a test
> kernel (3.10-rc2 based):
>
> # echo I need a new drug > /mnt/scr/bah/blah/black/sheep/foo
> [ 296.742990] XFS (vdb): xfs_setattr_size: mask 0xa068, masked # 0x0 ii 0xffff88003e6297c0, d 0xffff88003e5b9cb0 path /bah/blah/black/sheep/foo
> #
>
> And there's not assert failure. Indeed, the "masked # 0x0" is what
> the assert is checking.
>
> And yeah, path output works. Trick for anyone who doesn't read the
> code closely - the buffer is filled from the end backwards, and the
> start of the path is the return variable. So, the above code is:
>
> {
> struct dentry *d = d_find_alias(VFS_I(ip));
> char buf[MAXPATHLEN];
> char *ptr;
>
> memset(buf, 0, MAXPATHLEN);
> ptr = dentry_path(d, buf, MAXPATHLEN);
> xfs_warn(mp, "%s: mask 0x%x, masked 0x%x ii 0x%p, d 0x%p path %s",
> __func__, mask,
> (mask & (ATTR_MODE|ATTR_UID|ATTR_GID|ATTR_ATIME|ATTR_ATIME_SET|
> ATTR_MTIME_SET|ATTR_KILL_SUID|ATTR_KILL_SGID|
> ATTR_KILL_PRIV|ATTR_TIMES_SET)),
> ip, d, ptr);
> dput(d);
> }
>
> Which I put just before the assert that is firing on your machine.
>
> And, obviously, it isn't firing on mine and obviously shouldn't be firing on a
> mask of 0xa068.
With this, I get a spew of these when I start a kernel build..
[ 964.378690] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a95dac0, d 0xffff880221b5d970 path /davej/tmp/ccN2RrM5.s
[ 964.651927] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a95dac0, d 0xffff88020ff80b90 path /davej/tmp/ccB1Cdmo.s
[ 964.867444] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a95dac0, d 0xffff8802218a5bc0 path /davej/tmp/ccCUaXbG.s
[ 965.102661] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a95dac0, d 0xffff88020ffacde0 path /davej/tmp/cckMLf2X.s
[ 967.743312] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a93c200, d 0xffff88022212c250 path /davej/tmp/ccFMkBbA.s
[ 967.947154] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a93c200, d 0xffff8802226cc6f0 path /davej/tmp/cc5iX4SR.s
[ 968.009414] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a988000, d 0xffff8802219f1970 path /davej/tmp/ccvWCHTZ.o
[ 968.091504] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a9898c0, d 0xffff88022208de10 path /davej/tmp/cc9n6fnm.ld
[ 968.107997] XFS (sda2): xfs_setattr_size: mask 0xa068, masked 0x0 ii 0xffff88020a98dac0, d 0xffff880221160de0 path /davej/tmp/cc5rlvHu.le
Dave
next prev parent reply other threads:[~2013-05-23 18:49 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-21 22:52 XFS assertion from truncate. (3.10-rc2) Dave Jones
2013-05-21 22:52 ` Dave Jones
2013-05-21 23:34 ` Dave Chinner
2013-05-21 23:34 ` Dave Chinner
2013-05-21 23:40 ` Dave Jones
2013-05-21 23:40 ` Dave Jones
2013-05-21 23:54 ` Dave Chinner
2013-05-21 23:54 ` Dave Chinner
2013-05-22 0:08 ` Dave Jones
2013-05-22 0:08 ` Dave Jones
2013-05-22 0:16 ` Dave Chinner
2013-05-22 0:16 ` Dave Chinner
2013-05-22 2:56 ` Dave Jones
2013-05-22 2:56 ` Dave Jones
2013-05-22 4:03 ` Dave Chinner
2013-05-22 4:03 ` Dave Chinner
2013-05-22 4:15 ` Dave Jones
2013-05-22 4:15 ` Dave Jones
2013-05-22 5:12 ` Dave Chinner
2013-05-22 5:12 ` Dave Chinner
2013-05-22 5:29 ` Dave Jones
2013-05-22 5:29 ` Dave Jones
2013-05-22 5:51 ` Dave Chinner
2013-05-22 5:51 ` Dave Chinner
2013-05-22 14:22 ` Dave Jones
2013-05-22 14:22 ` Dave Jones
2013-05-22 16:19 ` Dave Jones
2013-05-22 16:19 ` Dave Jones
2013-05-22 22:09 ` Dave Chinner
2013-05-22 22:09 ` Dave Chinner
2013-05-22 23:53 ` Dave Jones
2013-05-22 23:53 ` Dave Jones
2013-05-23 15:17 ` Dave Jones
2013-05-23 15:17 ` Dave Jones
2013-05-23 18:13 ` Dave Jones
2013-05-23 18:13 ` Dave Jones
2013-05-22 21:54 ` Dave Chinner
2013-05-22 21:54 ` Dave Chinner
2013-05-23 18:49 ` Dave Jones [this message]
2013-05-23 18:49 ` Dave Jones
2013-05-23 22:30 ` Dave Chinner
2013-05-23 22:30 ` Dave Chinner
2013-05-24 0:49 ` Dave Jones
2013-05-24 0:49 ` Dave Jones
2013-05-24 1:26 ` Dave Chinner
2013-05-24 1:26 ` Dave Chinner
2013-05-24 1:36 ` Dave Jones
2013-05-24 1:36 ` Dave Jones
2013-05-24 1:52 ` Dave Jones
2013-05-24 1:52 ` Dave Jones
2013-05-24 3:03 ` Dave Jones
2013-05-24 3:03 ` Dave Jones
2013-05-24 8:03 ` Dave Chinner
2013-05-24 8:03 ` Dave Chinner
2013-05-24 20:16 ` Dave Jones
2013-05-24 20:16 ` Dave Jones
2013-05-25 4:58 ` Eric Sandeen
2013-05-25 4:58 ` Eric Sandeen
2013-05-25 6:39 ` Stan Hoeppner
2013-05-26 22:43 ` Dave Chinner
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=20130523184948.GA11151@redhat.com \
--to=davej@redhat.com \
--cc=david@fromorbit.com \
--cc=linux-kernel@vger.kernel.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.