From: Alexander Tsvetkov <alexander.tsvetkov@oracle.com>
To: xfs@oss.sgi.com
Subject: xfs_logprint segfault with external log
Date: Wed, 11 Feb 2015 16:51:44 +0300 [thread overview]
Message-ID: <54DB5E70.80607@oracle.com> (raw)
Hello,
I've obtained corrupted xfs log after some sanity xfs testing:
"log=logfile
log_size=855
dd if=/dev/zero "of=$log" bs=4096 count=$log_size
loopdev=$(losetup -f)
losetup $loopdev $log
mkfs.xfs -f -m crc=1 -llogdev=$loopdev,size=${log_size}b $SCRATCH_DEV
mount -t xfs -ologdev=$loopdev $SCRATCH_DEV $SCRATCH_MNT
./fdtree.sh -l 4 -d 4 -C -o $SCRATCH_MNT
sync
umount $SCRATCH_MNT
xfs_logprint -l $loopdev $SCRATCH_DEV"
Test makes crc enabled xfs filesystem with the external log of minimal
allowed size and then creates on this fs the small directory tree
with sub directories and files of fixed depth and size with help of
fdtree utility: https://computing.llnl.gov/?set=code&page=sio_downloads
After that xfs_logprint stably reports bad data in log:
"Oper (307): tid: eec9b0c7 len: 16 clientid: TRANS flags: none
EXTENTS inode data
Oper (308): tid: 41000000 len: 805306368 clientid: ERROR flags: none
LOCAL attr data
============================================================================
cycle: 1 version: 2 lsn: 1,3138 tail_lsn: 1,2
length of Log Record: 32256 prev offset: 3074 num ops: 375
uuid: 39a962b7-4c0d-4e0e-8bcd-39471f93bc1d format: little endian linux
h_size: 32768
----------------------------------------------------------------------------
Oper (0): tid: eec9b0c7 len: 48 clientid: TRANS flags: none
**********************************************************************
* ERROR: data block=3138 *
**********************************************************************
xfs_logprint: unknown log operation type (2e00)
Bad data in log"
Subsequent call to "xfs_repair -n -l $loopdev $SCRATCH_DEV" passes and
filesystem is mounted without errors.
I've supposed the using of inappropriate log size so updated log_size to
default mkfs.xfs value for this device: "log_size=2560".
After that xfs_logprint core dumped with segfault (race condition):
"Feb 11 13:55:42 fedora.fedora kernel: xfs_logprint[14007]: segfault at
29f16768 ip 00000000004028ed sp 00007fff61b46850 error 4 in
xfs_logprint[400000+4e000]"
I have the following configuration on vbox virtual machine with vdi,
fixed size /dev/sdb:
[root@fedora alex]# cat /etc/issue
Fedora release 20 (Heisenbug)
Kernel \r on an \m (\l)
[root@fedora alex]# uname -ir
3.19.0-rc6 x86_64
[root@fedora alex]# mkfs.xfs -V
mkfs.xfs version 3.2.2
[root@fedora alex]# xfs_logprint -V
xfs_logprint version 3.2.2
[root@fedora alex]# fdisk -l /dev/sdb
Disk /dev/sdb: 8 GiB, 8589934592 bytes, 16777216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
abrt data with sosreport are collected and available on request.
Thanks,
Alexander Tsvetkov
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next reply other threads:[~2015-02-11 13:50 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-11 13:51 Alexander Tsvetkov [this message]
2015-02-11 15:51 ` xfs_logprint segfault with external log Eric Sandeen
2015-02-11 20:54 ` Dave Chinner
2015-02-12 11:52 ` Alexander Tsvetkov
2015-02-12 23:09 ` Dave Chinner
2015-02-16 13:55 ` Alexander Tsvetkov
2015-02-17 1:38 ` Dave Chinner
2015-02-17 9:26 ` Alexander Tsvetkov
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=54DB5E70.80607@oracle.com \
--to=alexander.tsvetkov@oracle.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