Bug 980358

Summary: filesystem-available should return false for xfs in rhel6
Product: Red Hat Enterprise Linux 6 Reporter: bfan
Component: libguestfsAssignee: Richard W.M. Jones <rjones>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.5CC: leiwang, wshi
Target Milestone: rcKeywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libguestfs-1.20.9-7.el6 Doc Type: Bug Fix
Doc Text:
Cause: Calling guestfs_filesystem_available(g,"xfs"). Consequence: Calling this function would return true, but subsequent XFS operations might fail (NB: XFS is a layered product in RHEL 6). Fix: No fix, the issue is documented in the manual.
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-11-21 04:45:32 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description bfan 2013-07-02 07:32:14 UTC
Description of problem:
rhel6 does not support xfs, so libguestfs command "filesystem-available" should returns false


Version-Release number of selected component (if applicable):
libguestfs-1.20.9-6.el6.x86_64


How reproducible:
100%


Steps to Reproduce:
[root]# guestfish -N fs filesystem-available xfs
true


Actual results:
return true


Expected results:
return false


Additional info:

Comment 1 Richard W.M. Jones 2013-07-05 12:55:14 UTC
It's correct, isn't it?

><rescue> modprobe xfs
[  207.985415] SGI XFS with ACLs, security attributes, large block/inode numbers, no debug enabled
[  208.005215] SGI XFS Quota Management subsystem
><rescue> grep xfs /proc/filesystems 
	xfs

I also created an xfs filesystem on Fedora:

fedora$ guestfish -N fs:xfs exit

and then copied it (test1.img) over to RHEL 6:

rhel6$ guestfish -a /tmp/test1.img 

Welcome to guestfish, the libguestfs filesystem interactive shell for
editing virtual machine filesystems.

Type: 'help' for help on commands
      'man' to read the manual
      'quit' to quit the shell

><fs> run
 100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00
><fs> mount /dev/sda1 /
><fs> ll /
total 4
drwxr-xr-x  2 root root    6 Jul  5 13:48 .
drwxr-xr-x 24  500  501 4096 Jul  5 13:49 ..

><fs> vfs-type /dev/sda1 
xfs

Lastly I tried to create an xfs filesystem on RHEL 6:

$ guestfish -N fs:xfs
libguestfs: error: mkfs: xfs: /dev/sda1: mkfs.xfs: No such file or directory
guestfish: error creating prepared disk image 'fs:xfs' on 'test1.img': failed to create filesystem (xfs): mkfs: xfs: /dev/sda1: mkfs.xfs: No such file or directory

Note also the documentation says:

    This is mainly useful as a negative test. If this returns true, it
    doesn't mean that a particular filesystem can be mounted, since
    filesystems can fail for other reasons such as it being a later version
    of the filesystem, or having incompatible features.

(We might change that to say "created or mounted").

Comment 2 Richard W.M. Jones 2013-07-05 13:00:04 UTC
I pushed this upstream:
https://github.com/libguestfs/libguestfs/commit/280dbed9aabcb5aa2ddbed4f0c49a82235df7eae

Comment 4 bfan 2013-08-06 07:36:06 UTC
Verified with libguestfs-1.20.10-2.el6.x86_64,

><fs> help filesystem-available
NAME
    filesystem-available - check if filesystem is available

SYNOPSIS
     filesystem-available filesystem

DESCRIPTION
    Check whether libguestfs supports the named filesystem. The argument
    "filesystem" is a filesystem name, such as "ext3".

    You must call "launch" before using this command.

    This is mainly useful as a negative test. If this returns true, it
    doesn't mean that a particular filesystem can be created or mounted,
    since filesystems can fail for other reasons such as it being a later
    version of the filesystem, or having incompatible features, or lacking
    the right mkfs.<*fs*> tool.

    See also "available", "AVAILABILITY" in guestfs(3).

><fs> 

Document modified, so change the status to verified

Comment 6 errata-xmlrpc 2013-11-21 04:45:32 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2013-1536.html