Bug 517994

Summary: ustat() system call is blocked after installing compat-glibc.ppc64
Product: Red Hat Enterprise Linux 5 Reporter: lixiao <likli>
Component: kernelAssignee: Eric Sandeen <esandeen>
Status: CLOSED WORKSFORME QA Contact: Red Hat Kernel QE team <kernel-qe>
Severity: medium Docs Contact:
Priority: medium    
Version: 5.4CC: esandeen, yshao
Target Milestone: rc   
Target Release: ---   
Hardware: ppc64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-04-01 22:02:48 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description lixiao 2009-08-18 10:29:29 UTC
Hostname:ibm-js22-06.rhts.bos.redhat.com

Steps to Reproduce:
1. First,make sure you can run xfs_logprint correctly;
1. yum install compat-glibc.ppc64;
2. xfs_logprint /dev/loop0;

  
Actual results:
system is blocked on: ustat(0x700, 0xff93e3d8) 

Expected results:
Thougn xfs_logprint is 32-bit, after installing compat-glibc.ppc64 pakage,the command can complete successfully!

Additional info:
See the bug 472426

Comment 1 lixiao 2009-08-19 09:11:46 UTC
(In reply to comment #0)
> Hostname:ibm-js22-06.rhts.bos.redhat.com
> 
> Steps to Reproduce:
> 1. First,make sure you can run xfs_logprint correctly;
> 1. yum install compat-glibc.ppc64;
> 2. xfs_logprint /dev/loop0;
> 
> 
> Actual results:
> system is blocked on: ustat(0x700, 0xff93e3d8) 
> 
> Expected results:
> Thougn xfs_logprint is 32-bit, after installing compat-glibc.ppc64 pakage,the
> command can complete successfully!
Sorry, I made a mistake, I installed compat-glibc.ppc pakage first,the system was blocked after executing xfs_logprint,then, I installed compat-glibc.ppc64 pakage,but it still can't work.
However , on the machine : ibm-js12-04.rhts.bos.redhat.com 2.6.18-128.el5, the system worked well and can display the log, so perhaps it related to the machine.

[root@ibm-js12-04 ~]# uname -a
Linux ibm-js12-04.rhts.bos.redhat.com 2.6.18-128.el5 #1 SMP Wed Dec 17 11:58:23 EST 2008 ppc64 ppc64 ppc64 GNU/Linux
well , in the kernel 2.6.18-162 ,you can get the same result.

[root@ibm-js12-04 ~]# rpm -q compat-glibc.ppc
compat-glibc-2.3.4-2.26
[root@ibm-js12-04 ~]# rpm -q compat-glibc.ppc64
compat-glibc-2.3.4-2.26
[root@ibm-js12-04 ~]# xfs_logprint /dev/loop0
xfs_logprint:
    data device: 0x700
    log device: 0x700 daddr: 40992 length: 9600

cycle: 1	version: 2		lsn: 1,0	tail_lsn: 1,0
length of Log Record: 20	prev offset: -1		num ops: 1
uuid: 3077c7fb-876f-48a2-9f6a-6d4d73ef1b9a   format: big endian linux
h_size: 32768
----------------------------------------------------------------------------
Oper (0): tid: b0c0d0d0  len: 8  clientid: LOG  flags: UNMOUNT 
Unmount filesystem

============================================================================
xfs_logprint: skipped 9598 zeroed blocks in range: 2 - 9599
xfs_logprint: physical end of log
============================================================================
xfs_logprint: logical end of log
============================================================================

> 
> Additional info:
> See the bug 472426

Comment 3 Eric Sandeen 2010-04-01 22:02:48 UTC
With:

[root@ibm-js22-vios-03-lp1 ~]# rpm -q xfsprogs
xfsprogs-2.10.2-7.el5
[root@ibm-js22-vios-03-lp1 ~]# file `which xfs_logprint`
/usr/sbin/xfs_logprint: ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped
[root@ibm-js22-vios-03-lp1 ~]# uname -a
Linux ibm-js22-vios-03-lp1.rhts.eng.brq.redhat.com 2.6.18-164.el5 #1 SMP Tue Aug 18 15:58:09 EDT 2009 ppc64 ppc64 ppc64 GNU/Linux
[root@ibm-js22-vios-03-lp1 ~]# rpm -q compat-glibc
package compat-glibc is not installed

I do not get a hang, but ustat reports an error:

ustat(0x700, 0xffd9e3b8)                = -1 EINVAL (Invalid argument)

After installing compat-glibc for both arches, it continues to work.

ustat fails w/o a mounted filesystem; I installed the xfs kmod, mounted it, and reran logprint; this also passed.

we're no longer shipping xfs for ppc on rhel5 and xfsprogs is the only user of ustat in the distro; that combined with inability to reproduce, I'm going to close this one.

Comment 4 Eric Sandeen 2010-04-01 22:04:07 UTC
FWIW ustat worked just fine here:

ustat(0x700, 0xff8ae3b8)                = 0