Bug 907360
| Summary: | dracut does not create the mpath node after attaching the FCoE Luns | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Xiaowei Li <xiaoli> | ||||
| Component: | device-mapper-multipath | Assignee: | Ben Marzinski <bmarzins> | ||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Red Hat Kernel QE team <kernel-qe> | ||||
| Severity: | high | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 7.0 | CC: | agk, bmarzins, dracut-maint-list, harald, heinzm, jcastillo, msnitzer, prajnoha, qcai, ruyang | ||||
| Target Milestone: | rc | ||||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | device-mapper-multipath-0.4.9-46.el7 | Doc Type: | Bug Fix | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2014-06-13 11:50:21 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: | |||||||
| Bug Depends On: | |||||||
| Bug Blocks: | 874073 | ||||||
| Attachments: |
|
||||||
|
Description
Xiaowei Li
2013-02-04 08:17:26 UTC
Created attachment 692652 [details]
dracut.log
reassigning to device-mapper-multipath the server storageqe-17.rhts.eng.bos.redhat.com is configured to boot from lpfc-fcoe EMC cx400 array. reproduced the issue with the kernel-kernel-3.7.0-0.36.el7.x86_64. but didn't see the issue with kernel-3.8.0-0.40.el7.x86_64 loaned the server to you. So there is nothing in the code that forces the pthread condition structure to get initialized before the waiter waits on it, other than the fact that the thread that initializes it gets started a number of blocking calls before the thread that waits on it is started. Also, the thread that initializes it does so pretty much right away, while the other thread doesn't wait on it till a while in. However, since I changed the pthread condition structure and the pthread mutex structure to be statically initialized, I haven't been able to reproduce the issue after about an hour of repeated reboots. I have always previously reproduced it within a half an hour. If it doesn't reproduce by tomorrow morning, I'm pretty sure that I've found the issue. To test, I wrote a small program that waited on a pthread_cond_t before initializing it, and sending the signal, and it behaves identically to multipathd when it's experiencing this issue. the signaler calls pthread_cond_signal(), which returns without error, but the waiter is never awoken. I suppose I could dig into the pthread code and figure out how to check if a condition structure has been initialized or not, but multipath needs to force this structure to get initialized before it's used at any rate. something went wrong with my rebooter script in the middle of the night, but it wasn't that the node hung in dracut. The node booted fine. For some reason, I just wasn't able to ping it for half an hour, so my script quit. You can have the machine back. I'll be making a build with the patch today. *** Bug 895800 has been marked as a duplicate of this bug. *** (In reply to comment #18) > something went wrong with my rebooter script in the middle of the night, but > it wasn't that the node hung in dracut. The node booted fine. For some > reason, I just wasn't able to ping it for half an hour, so my script quit. > You can have the machine back. I'll be making a build with the patch today. thanks a lot. verified with device-mapper-multipath-0.4.9-46.el7 1. install RHEL-7.0-20130313.n.2 2. update to device-mapper-multipath-0.4.9-46.el7 3. reboot, need to manually scan the multipath after dropping to dracut shell. 4. dracut --force --add multipath --include /etc/multipath 5. reboot OS can reboot successfully without manual multipath scanning (In reply to comment #22) > I'm confused. Why did this get moved back to assigned? Comment #21 makes > it sound like it works once you updated the initramfs. I set the wrong status by mistake. sorry for this. I have changed it to verified. This request was resolved in Red Hat Enterprise Linux 7.0. Contact your manager or support representative in case you have further questions about the request. |