Bug 27249 - xfsprogs update to 5.8.0 for kernel 5.8
Summary: xfsprogs update to 5.8.0 for kernel 5.8
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 7
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: MGA7-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2020-09-05 20:25 CEST by David Walser
Modified: 2020-09-07 14:42 CEST (History)
3 users (show)

See Also:
Source RPM: xfsprogs-5.7.0-1.mga7.src.rpm
CVE:
Status comment:


Attachments

Description David Walser 2020-09-05 20:25:14 CEST
Advisory:
----------------------------------------

The xfsprogs package has been updated to version 5.8.0, with full support for
the 5.8 series Linux kernels, bug fixes, and other enhancements.  See the
upstream CHANGES file for details.

References:
https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/tree/doc/CHANGES?id=7fa3a67f2993d516c4f65c70a36acac518df5b22
----------------------------------------

Updated packages in core/updates_testing:
----------------------------------------
xfsprogs-5.8.0-1.mga7
libxfs1-5.8.0-1.mga7
libxfs-devel-5.8.0-1.mga7
libxfs-static-devel-5.8.0-1.mga7

from xfsprogs-5.8.0-1.mga7.src.rpm
Comment 1 Len Lawrence 2020-09-06 17:49:58 CEST
mga7, x86_64

Updated the four packages.
Found an old 8GB CompactFlash card containing a FAT partition.

Looking over Herman's shoulder - bug 26694:

# umount /dev/sdf1
# mkfs.xfs /dev/sdf
mkfs.xfs: /dev/sdf appears to contain a partition table (dos).
mkfs.xfs: Use the -f option to force overwrite
# mkfs.xfs -f /dev/sdf
meta-data=/dev/sdf               isize=512    agcount=4, agsize=487935 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=1951740, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Pulled out the USB adapter and plugged in again.
$ df -h
/dev/sdf                   7.5G   86M  7.4G   2% /run/media/lcl/7a5d7def-907f-4100-bc3b-777a51e5a1ec
# xfs_bmap /run/media/lcl/7a5d7def-907f-4100-bc3b-777a51e5a1ec
/run/media/lcl/7a5d7def-907f-4100-bc3b-777a51e5a1ec: no extents
# xfs_info /run/...
Returned the same data as the mkfs.xfs command.
# xfs_admin -l -u /dev/sdf
label = ""
UUID = 56bca829-069c-480f-bed8-e463ad5f7ec3

Modified the ownership of the disk and copied a text file to it.
$ export XDISK=/run/media/lcl/56bca829-069c-480f-bed8-e463ad5f7ec3
$ ls $XDISK
utilities

$ xfs_metadump $XDISK metadump
xfs_metadump: can't determine device size
 xfs_metadump /dev/sdf metadump
xfs_metadump: /dev/sdf contains a mounted and writable filesystem
fatal error -- couldn't initialize XFS library

$ xfs_estimate $XDISK
/run/media/lcl/56bca829-069c-480f-bed8-e463ad5f7ec3 will take about 4.4 megabytes
$ xfs_info $XDISK
meta-data=/dev/sdf               isize=512    agcount=4, agsize=487935 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=1951740, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

$ cp tsunami.ts $XDISK
$ du -hs $XDISK
1.1G	/run/media/lcl/56bca829-069c-480f-bed8-e463ad5f7ec3
$ ls -a $XDISK
./  ../  tsunami.ts  utilities
$ xfs_copy $XDISK /data/xfs
xfs_copy: can't determine device size
$ xfs_copy -d $XDISK /data/xfs
xfs_copy: can't determine device size

$ xfs_repair -n /dev/sdf
xfs_repair: /dev/sdf contains a mounted and writable filesystem
fatal error -- couldn't initialize XFS library
$ xfs_repair -n $XDISK
xfs_repair: can't determine device size
$ sudo umount $XDISK
$ sudo xfs_repair -n /dev/sdf
Phase 1 - find and verify superblock...
Phase 2 - using internal log
        - zero log...
        - scan filesystem freespace and inode maps...
        - found root inode chunk
Phase 3 - for each AG...
        - scan (but don't clear) agi unlinked lists...
        - process known inodes and perform inode discovery...
        - agno = 0
        - agno = 1
        - agno = 2
        - agno = 3
        - process newly discovered inodes...
Phase 4 - check for duplicate blocks...
        - setting up duplicate extent list...
        - check for inodes claiming duplicate blocks...
        - agno = 0
        - agno = 3
        - agno = 2
        - agno = 1
No modify flag set, skipping phase 5
Phase 6 - check inode connectivity...
        - traversing filesystem ...
        - traversal finished ...
        - moving disconnected inodes to lost+found ...
Phase 7 - verify link counts...
No modify flag set, skipping filesystem flush and exiting.

Don't understand what is going on here.  It was impossible to create the XFS system as a partition and I am guessing that without a proper partition table the utilities cannot cope; viz: "can't determine device size".  The file system itself can be written to and read.  The video played fine.  However, I am reluctant to pass this without some assurance from an expert.

CC: (none) => tarazed25

Len Lawrence 2020-09-06 23:19:54 CEST

Keywords: (none) => NEEDHELP

Len Lawrence 2020-09-06 23:21:20 CEST

Keywords: NEEDHELP => feedback

Comment 2 Dave Hodgins 2020-09-07 08:30:13 CEST
The main problem above, copied from bug 26694 is using mkfs.xfs /dev/sdf
instead of mkfs.xfs /dev/sdf1, wiping out the partition table. While it's
technically valid to have a file system use the entire device and not have
a partition table, it confuses many tools. Also be aware if such a device
is present when some versions of windows is used, a blank partition table
will be written to the device without any indication to the user, resulting
in the file system being unusable.

# mkfs.xfs -f -L kinston /dev/sde1
meta-data=/dev/sde1              isize=512    agcount=4, agsize=977024 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=3908096, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

After removing and inserting the usb stick, used the device notifier to
mount it. Changed the ownership of it's mountpoint to my id, and copied a
file to it.

# xfs_bmap /run/media/dave/kinston/inittab 
/run/media/dave/kinston/inittab:
        0: [0..7]: 80..87

# xfs_admin -l -u /dev/sde1
label = "kinston"
UUID = e7e991f8-fecb-48c4-82e2-ee937d45b682

After unmounting the filesystem ...
# xfs_repair -n /dev/sde1
Phase 1 - find and verify superblock...
Phase 2 - using internal log
        - zero log...
        - scan filesystem freespace and inode maps...
        - found root inode chunk
Phase 3 - for each AG...
        - scan (but don't clear) agi unlinked lists...
        - process known inodes and perform inode discovery...
        - agno = 0
        - agno = 1
        - agno = 2
        - agno = 3
        - process newly discovered inodes...
Phase 4 - check for duplicate blocks...
        - setting up duplicate extent list...
        - check for inodes claiming duplicate blocks...
        - agno = 0
        - agno = 2
        - agno = 3
        - agno = 1
No modify flag set, skipping phase 5
Phase 6 - check inode connectivity...
        - traversing filesystem ...
        - traversal finished ...
        - moving disconnected inodes to lost+found ...
Phase 7 - verify link counts...
No modify flag set, skipping filesystem flush and exiting.

No regressions found. Validating.

CC: (none) => davidwhodgins, sysadmin-bugs
Keywords: feedback => validated_update
Whiteboard: (none) => MGA7-64-OK

Comment 3 Len Lawrence 2020-09-07 09:25:43 CEST
@Dave, re comment 2.  Thanks for stepping in.
The device used in my case was a CF disk with a DCIM directory on it, which looked like it had never been used.  The disk was recognized by 'df -h' and mounted on /run/media/.... as /dev/sdf.  It was not recognized by diskdrake which seemed to indicate that there was no partition table to start with.  So, not a good device to work with.
Aurelien Oudelet 2020-09-07 10:02:25 CEST

Source RPM: xfsprogs-5.7.0-1.mga7.src.rpm => xfsprogs-5.8.0-1.mga7.src.rpm
Keywords: (none) => advisory

Comment 4 Mageia Robot 2020-09-07 10:41:46 CEST
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGAA-2020-0204.html

Resolution: (none) => FIXED
Status: NEW => RESOLVED

David Walser 2020-09-07 14:42:43 CEST

Source RPM: xfsprogs-5.8.0-1.mga7.src.rpm => xfsprogs-5.7.0-1.mga7.src.rpm


Note You need to log in before you can comment on or make changes to this bug.