[LU-1580] POSIX: pathconf.32: pathconf("/dev/pts/0", _PC_NAME_MAX) did not give correct results Created: 28/Jun/12  Updated: 27/Sep/12  Resolved: 08/Aug/12

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.3.0
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Maloo Assignee: Jian Yu
Resolution: Fixed Votes: 0
Labels: None

Severity: 3
Rank (Obsolete): 5807

 Description   

This issue was created by maloo for Chris Gearing <chris@whamcloud.com>

This issue relates to the following test suite run: https://maloo.whamcloud.com/test_sets/e8bc176e-c0a4-11e1-a5ca-52540035b04c.

The sub-test test_1 failed with the following error:

Run POSIX testsuite on /mnt/lustre failed

Info required for matching: posix 1



 Comments   
Comment by Sarah Liu [ 09/Jul/12 ]

another failure: https://maloo.whamcloud.com/test_sets/aeb9eac8-c57c-11e1-ab7d-52540035b04c
From the test report there are 4 failed tests, 3 of them are known issues listed in LU-380 and LU-379 while the pathconf.32 is a new one.

14:21:04:Test Name: pathconf.32 Failed
14:21:04:
14:21:04: Test Description:
14:21:04:When path does not refer to a directory, then a call to pathconf(path,
14:21:04:_PC_NAME_MAX) either returns a value of -1 and sets errno to [EINVAL],
14:21:04:or returns a valid value for

{NAME_MAX}

.
14:21:04:Posix Ref: Component PATHCONF Assertion 5.7.1.4-52(A)
14:21:04:
14:21:04: Test Strategy:
14:21:04:FOR a regular file, a FIFO (when not testing XNFS) and a terminal file
14:21:04:(when not testing XNFS)
14:21:04: OBTAIN the system value associated with pathconf() and _PC_NAME_MAX
14:21:04: VERIFY that pathconf() returned successfully or pathconf() returned
14:21:04: -1 and errno was set to EINVAL
14:21:04:
14:21:04: Test Information:
14:21:04:pathconf("/dev/pts/0", _PC_NAME_MAX) did not give correct results
14:21:04:expected: return value == -1, errno == 22 (EINVAL)
14:21:04: OR: return value != -1
14:21:04:observed: return value == -1, errno == 2 (ENOENT)

Comment by Minh Diep [ 10/Jul/12 ]

I'll try this manually to see if it makes a difference. This is not due to testsuite but posix detect some issue.

Comment by Minh Diep [ 18/Jul/12 ]

I have reproduced this manually. This seems like Posix issue
https://maloo.whamcloud.com/test_sets/2ed77eb4-d077-11e1-aa18-52540035b04c

Comment by Jodi Levi (Inactive) [ 26/Jul/12 ]

Yu Jian,
Can you please take a look at this one?

Comment by nasf (Inactive) [ 26/Jul/12 ]

Since Lustre never pass all the POSIX test cases. We need to check whether above failures are new ones or known issues.

Comment by Jian Yu [ 01/Aug/12 ]

The unlink.6 and write.15 failures are LU-380. The readdir.6 failure is LU-379. This ticket is used to track pathconf.32 failure.

I found that while formatting a partition/disk as ext4 filesystem and run POSIX test suite on it to generate baseline, the pathconf.32 test also failed. However, if a loop device is used to be formatted as ext4, the test passed. So, the issue is related to the baseline, not Lustre.

Comment by Jodi Levi (Inactive) [ 06/Aug/12 ]

This item needs to be added to the release notes.

Comment by Peter Jones [ 07/Aug/12 ]

Actually, Yujian is working on a fix.

Comment by Jian Yu [ 07/Aug/12 ]

I just verified again that the same failure also occurred on ext4 filesystem. After updating the LSB-VSX POSIX test suite to disable the terminal file test in pathconf.32, Lustre POSIX compliance testing passed on T.pathconf test set (baseline is ext4):

Lustre branch: master
Lustre build: http://build.whamcloud.com/job/lustre-master/766/
https://maloo.whamcloud.com/test_sets/3df07240-e088-11e1-a388-52540035b04c

Comment by Jian Yu [ 08/Aug/12 ]

The change on LSB-VSX POSIX test suite has been pushed into the toolkit repository. Let's wait for a successful posix test run performed by autotest and then we can close this ticket as resolved.

Comment by Minh Diep [ 08/Aug/12 ]

Yujian, you can verify by doing a yum install posix on any node. If the src include your change, then we are good. If not, please contact Joshua to sync the repo with yum

Comment by Jian Yu [ 08/Aug/12 ]

Yujian, you can verify by doing a yum install posix on any node. If the src include your change, then we are good. If not, please contact Joshua to sync the repo with yum

Thanks Minh for this info. I've verified this by provisioning Lustre 2.1.3 test nodes and run posix test on them, the posix-1.0-wc1 package contained the new changes and posix test passed:
https://maloo.whamcloud.com/test_sessions/150c92c0-e158-11e1-9a39-52540035b04c

Generated at Sat Feb 10 01:17:53 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.