[LU-190] random mode opencreate will LBUG lustre client Created: 04/Apr/11 Updated: 25/Jul/12 Resolved: 08/Dec/11 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | Lustre 2.1.0 |
| Fix Version/s: | Lustre 2.1.0 |
| Type: | Bug | Priority: | Minor |
| Reporter: | Liang Zhen (Inactive) | Assignee: | Liang Zhen (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||
| Severity: | 3 | ||||||||||||
| Rank (Obsolete): | 5068 | ||||||||||||
| Description |
|
we can easily get LBUG if calling open with O_CREATE but without specified mode: fd = open(filename, O_CREAT |O_RDWR); Apr 4 06:12:01 prime kernel: LustreError: 6697:0:(client.c:2083:__ptlrpc_free_req()) ASSERTION(!request->rq_replay) failed: req ffff81021d734800 after reading into code, I found it's because VFS will not check & validate nameidata::intent::open::create_mode before calling into lookup of llite, so llite will get a totally random lookup_intent::it_create_mode, meanwhile, llite will use high bits of it_create_mode to store M_CHECK_STALE, so it will see an unexpected M_CHECK_STALE and totally screw up logic. |
| Comments |
| Comment by Build Master (Inactive) [ 04/Apr/11 ] |
|
Integrated in Liang Zhen : d03399a030bd520557e7a3afe831420ad2caf1d4
|
| Comment by Oleg Drokin [ 04/Apr/11 ] |
|
This mostly looks like a kernel bug, though I agree we should not fall into this trap. |
| Comment by Liang Zhen (Inactive) [ 05/Apr/11 ] |
|
yes, I agree it is a kernel bug. |
| Comment by Oleg Drokin [ 18/Apr/11 ] |
|
I landed the patch, but please note that I think a better fix is still needed so probably a bad idea to close this bug. |
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Build Master (Inactive) [ 18/Apr/11 ] |
|
Integrated in Oleg Drokin : 8e04352101ce30d4b32dc218a8f2ab6396101e98
|
| Comment by Liang Zhen (Inactive) [ 08/Dec/11 ] |
|
fix is already in master |