[LU-3182] duplicate directory entries from readdir() Created: 17/Apr/13 Updated: 05/Dec/14 Resolved: 10/Jul/13 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | Lustre 2.4.0 |
| Fix Version/s: | Lustre 2.4.0, Lustre 2.5.0 |
| Type: | Bug | Priority: | Major |
| Reporter: | Ned Bass | Assignee: | Emoly Liu |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | ppc | ||
| Severity: | 3 |
| Rank (Obsolete): | 7764 |
| Description |
|
lmv_readpage() fails to overwrite the ldp_hash_end and ldp_flags of the first lu_dirpage in a CFS_PAGE with the values from the last lu_dirpage. This causes duplicate directory entries to be returned from readdir() for sufficiently large directories. This is only an issue on platforms where CFS_PAGE_SIZE > LU_PAGE_SIZE, i.e. PPC. The regression was introduced in patch http://review.whamcloud.com/#change,5011, with the apparently accidental removal of these lines from lmv_readpage(): - hash_end = dp->ldp_hash_end;
- flags = dp->ldp_flags;
|
| Comments |
| Comment by Ned Bass [ 17/Apr/13 ] |
|
Patch for review: |
| Comment by Peter Jones [ 17/Apr/13 ] |
|
Emoly is looking into this |
| Comment by Emoly Liu [ 06/May/13 ] |
|
Landed for 2.4 |
| Comment by Ned Bass [ 21/May/13 ] |
|
I found a flaw in the patch that causes duplicate entries for some directories. I'll push a fix to gerrit. |
| Comment by Ned Bass [ 21/May/13 ] |
|
Patch for review: |
| Comment by Emoly Liu [ 10/Jul/13 ] |
|
The patch at http://review.whamcloud.com/#change,6405 has been landed to master. |