Failed XFS mounting with message "XFS_WANT_CORRUPTED_GOTO" reported

This document (000021215) is provided subject to the disclaimer at the end of this document.

Environment

SUSE Linux Enterprise server 15
SUSE Linux Enterprise server 12
SUSE Linux Enterprise server 11
SUSE Linux Enterprise server for SAP applications 15
SUSE Linux Enterprise server for SAP applications 12
SUSE Linux Enterprise server for SAP applications 11

Situation

XFS filesystem experienced corruption and cannot not be mounted.

Example of messages reported :
Jan 21 13:00:57 lab-host kernel: [ 3367.580367] XFS: Internal error XFS_WANT_CORRUPTED_GOTO at line 1521 of file /usr/src/packages/BUILD/kernel-default-3.0.101/linux-3.0/fs/xfs/xfs_alloc.c.  Caller 0xffffffffa066c4d9
Jan 21 13:00:57 lab-host kernel: [ 3367.580385] Call Trace:
Jan 21 13:00:57 lab-host kernel: [ 3367.580401]  [<ffffffff81004b35>] dump_trace+0x75/0x300
Jan 21 13:00:57 lab-host kernel: [ 3367.580408]  [<ffffffff8146ace3>] dump_stack+0x69/0x6f
Jan 21 13:00:57 lab-host kernel: [ 3367.580429]  [<ffffffffa066a3f7>] xfs_free_ag_extent+0x547/0x810 [xfs]
Jan 21 13:00:57 lab-host kernel: [ 3367.580464]  [<ffffffffa066c4d9>] xfs_free_extent+0xe9/0x110 [xfs]
Jan 21 13:00:57 lab-host kernel: [ 3367.580498]  [<ffffffffa06a74cd>] xlog_recover_process_efi+0x1ad/0x1f0 [xfs] 

Resolution

Verify if there is a backup of the original filesystem, and if yes, prepare the backup in case clearing the dirty region logging does not resolve the problem.

Attempt to mount the filesystem to see if it is mountable:
# mount <devicepath> /mnt

...where <devicepath> could be /dev/mapper/vg01-lv01 for example.
If it is mountable but still show errors, unmount to allow logging to be cleared:
# umount <devicepath>
# xfs_repair <devicepath>
If the filesystem is still unmountable, use the -L option (force log zeroing) to clear the log:
# xfs_repair -L <devicepath>

Cause

The affected XFS filesystem has corruption which could not be recovered by the kernel:
Jan 22 00:20:52 lab-host kernel: [ 9253.615083] XFS (dm-8): Starting recovery (logdev: internal)
Jan 22 00:20:52 lab-host kernel: [ 9253.619277] XFS: Internal error XFS_WANT_CORRUPTED_GOTO at line 1521 of file /usr/src/packages/BUILD/kernel-default-3.0.101/linux-3.0/fs/xfs/xfs_alloc.c.  Caller 0xffffffffa06dd4a9
As a result mounting was not possible:
Jan 22 00:20:52 lab-host kernel: [ 9253.586575] XFS (dm-8): Mounting Filesystem
Jan 22 00:20:52 lab-host kernel: [ 9253.619309] Pid: 55023, comm: mount Not tainted 3.0.101-94-default #1
Jan 22 00:20:52 lab-host kernel: [ 9253.622508] XFS (dm-8): log mount finish failed
The stack trace just gives us the breakdown of actions by kernel:
Jan 22 00:20:52 lab-host kernel: [ 9253.619314] Call Trace:
Jan 22 00:20:52 lab-host kernel: [ 9253.619405]  [<ffffffff81004b35>] dump_trace+0x75/0x300
Jan 22 00:20:52 lab-host kernel: [ 9253.619464]  [<ffffffff81467683>] dump_stack+0x69/0x6f
Jan 22 00:20:52 lab-host kernel: [ 9253.619661]  [<ffffffffa06db3c7>] xfs_free_ag_extent+0x547/0x810 [xfs]
Jan 22 00:20:52 lab-host kernel: [ 9253.619957]  [<ffffffffa06dd4a9>] xfs_free_extent+0xe9/0x110 [xfs]
Jan 22 00:20:52 lab-host kernel: [ 9253.620211]  [<ffffffffa071834d>] xlog_recover_process_efi+0x1ad/0x1f0 [xfs]
Jan 22 00:20:52 lab-host kernel: [ 9253.620597]  [<ffffffffa07184d8>] xlog_recover_process_efis+0x58/0xa0 [xfs]
Jan 22 00:20:52 lab-host kernel: [ 9253.620957]  [<ffffffffa071c3dc>] xlog_recover_finish+0x1c/0xb0 [xfs]
Jan 22 00:20:52 lab-host kernel: [ 9253.621341]  [<ffffffffa0720062>] xfs_mountfs+0x442/0x660 [xfs]
Jan 22 00:20:52 lab-host kernel: [ 9253.621732]  [<ffffffffa07388ff>] xfs_fs_fill_super+0x21f/0x340 [xfs]
Jan 22 00:20:52 lab-host kernel: [ 9253.622122]  [<ffffffff81162fbe>] mount_bdev+0x16e/0x1e0
Jan 22 00:20:52 lab-host kernel: [ 9253.622175]  [<ffffffff8116291e>] mount_fs+0x4e/0x1a0
Jan 22 00:20:52 lab-host kernel: [ 9253.622211]  [<ffffffff8117ea85>] vfs_kern_mount+0x65/0xd0
Jan 22 00:20:52 lab-host kernel: [ 9253.622243]  [<ffffffff8117eb73>] do_kern_mount+0x53/0x110
Jan 22 00:20:52 lab-host kernel: [ 9253.622274]  [<ffffffff8117fbfd>] do_mount+0x21d/0x260
Jan 22 00:20:52 lab-host kernel: [ 9253.622305]  [<ffffffff8117fd00>] sys_mount+0xc0/0xf0
Jan 22 00:20:52 lab-host kernel: [ 9253.622340]  [<ffffffff81472972>] system_call_fastpath+0x16/0x1b
Jan 22 00:20:52 lab-host kernel: [ 9253.622466]  [<00007f9e690e3eba>] 0x7f9e690e3eb9
The end result was that kernel failed to recover the filesystem:
Jan 22 00:20:52 lab-host kernel: [ 9253.622505] XFS (dm-8): Failed to recover EFIs

Disclaimer

This Support Knowledgebase provides a valuable tool for SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.

  • Document ID:000021215
  • Creation Date: 26-Sep-2023
  • Modified Date:12-Oct-2023
    • SUSE Linux Enterprise Server
    • SUSE Manager Management Pack for Microsoft Center

< Back to Support Search

For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com

SUSE Support Forums

Get your questions answered by experienced Sys Ops or interact with other SUSE community experts.

Join Our Community

Support Resources

Learn how to get the most from the technical support you receive with your SUSE Subscription, Premium Support, Academic Program, or Partner Program.


SUSE Customer Support Quick Reference Guide SUSE Technical Support Handbook Update Advisories
Support FAQ

Open an Incident

Open an incident with SUSE Technical Support, manage your subscriptions, download patches, or manage user access.

Go to Customer Center