Bug 658076
| Summary: | [EMC 6.1 bug] open-fcoe with Intel mezz card, auto mount by _netdev is not working | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | ling_lan | ||||||||
| Component: | fcoe-utils | Assignee: | Petr Šabata <psabata> | ||||||||
| Status: | CLOSED ERRATA | QA Contact: | Red Hat Kernel QE team <kernel-qe> | ||||||||
| Severity: | high | Docs Contact: | |||||||||
| Priority: | high | ||||||||||
| Version: | 6.0 | CC: | berthiaume_wayne, coughlan, cward, ddumas, eric.w.multanen, hicks_verdell, jack.morgan, jane.lv, john.r.fastabend, john.ronciak, jolsa, jvillalo, luyu, mvadkert, nhorman, notting, ppisar, rdoty, revers, robert.w.love, rpacheco, rprice, tgraf | ||||||||
| Target Milestone: | rc | Keywords: | OtherQA | ||||||||
| Target Release: | 6.1 | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Linux | ||||||||||
| Whiteboard: | |||||||||||
| Fixed In Version: | fcoe-utils-1.0.14-17.el6 | Doc Type: | Bug Fix | ||||||||
| Doc Text: |
Cause
It might take longer for FCoE partitions to be discovered by the system.
Consequence
Some FCoE partitions may not be mounted after boot.
Fix
Wait for _netdev FCoE partitions to appear during boot (with default
timeout of 65 seconds)
Result
FCoE partitions get discovered and mounted during the boot in most cases.
|
Story Points: | --- | ||||||||
| Clone Of: | Environment: |
open-fcoe
|
|||||||||
| Last Closed: | 2011-05-19 14:20:16 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: | |||||||||||
| Bug Depends On: | |||||||||||
| Bug Blocks: | 635490 | ||||||||||
| Attachments: |
|
||||||||||
|
Description
ling_lan
2010-11-29 09:31:18 UTC
Ron/Russ - please include the right Intel folks ASAP, thanks! Also, EMC - which Intel driver/device are you seeing this on? ixgbe? This should be resolved with Bug 638291. I verified this isn't in RHEL6.0 but since this is just a documented fix, you can review the original patch at http://www.open-fcoe.org/openfc/gitweb, patch title is "fcoe-utils: adds an example script code with detail to mount fcoe disk/s at startup" with gitid 2229ec010706e081a4f4429f69a3b6a373e6844a Thanks Jack. This is all well and good, but a user should not have to edit the start script to add this simple functionality. It should already exist just like in iSCSI. Hello Red Hat. Will this functionality go into RHEL 6.1? Regards, Wayne. seems like this is a user space issue, fixing component to match that of bz 638291 as suggested in comment 3 I believe this should be handled by the netfs initscript, CC'ing Bill. No, the fcoe script should start, and ensure the devices are available; netfs should then mount without any additional changes needed. Created attachment 474293 [details]
FCoE configuration and initscript devices scan patch
This patch is based on the current recommendation for automatic FCoE LUN mounting. The initscript now waits for a configurable time during the boot for the devices to appear, giving netfs script a chance to mount FCoE LUNs.
This script works, but only when the entry in fstab is /dev/disk/by-path. The script should allow use of all persistent drive naming mechanisms: by-id, by-path, by-uuid. The default /etc/fcoe/config WAIT_TIMEOUT period of 20 seconds, which is a time period that the script waits while looking for the fstab _netdev device to become available on the fcoe interface, had to be increased to 65 seconds to get a reliable mount every boot. (In reply to comment #16) > This script works, but only when the entry in fstab is /dev/disk/by-path. The > script should allow use of all persistent drive naming mechanisms: by-id, > by-path, by-uuid. This is based on current FCoE automatic LUN mounting guidelines and only possible way to decide if this is an FCoE device or not in situations when the node is not yet available. > The default /etc/fcoe/config WAIT_TIMEOUT period of 20 seconds, which is a time > period that the script waits while looking for the fstab _netdev device to > become available on the fcoe interface, had to be increased to 65 seconds to > get a reliable mount every boot. Okay, I'll increase the default timeout. Created attachment 476433 [details]
fcoe-utils-1.0.14-15.el6 patch
The init script is interpreted by /bin/sh. I'm not sure POSIX shell offers `let' built-in. Created attachment 476449 [details]
fcoe-utils-1.0.14-17.el6 patch
Petr,
thanks for looking at this. I'm not sure either; changed the patch a little to fix that.
~~ Partners and Customers ~~ This bug was included in RHEL 6.1 Beta. Please confirm the status of this request as soon as possible. If you're having problems accessing 6.1 bits, are delayed in your test execution or find in testing that the request was not addressed adequately, please let us know. Thanks! Hi, tested with RHEL6.1 snapshot2, issue fixed. Thanks Intel Has also verified this fix. Thanks Doing SanityOnly testing: + fcoe-utils-1.0.18-1.el6 available in RHEL6.1-20110413 (Snap 4) + All available RHTS tests pass: /CoreOS/fcoe-utils/Regression/bz503165-running-fcoeadm-before-loading-fcoe-stack-tracebacks /CoreOS/fcoe-utils/Regression/bz645796-not-dependent-on-vconfig /CoreOS/fcoe-utils/Regression/bz619604-fcoe-utils-enabled-in-2345-by-default /CoreOS/fcoe-utils/Sanity/init-scripts-LSB /CoreOS/fcoe-utils/Sanity/long-form-options + Rebuild without issues Patched code found in init script: start() { echo -n $"Starting FCoE initiator service: " modprobe -q libfc modprobe -q -a $SUPPORTED_DRIVERS daemon --pidfile ${PID_FILE} ${FCOEMON} ${FCOEMON_OPTS} echo touch /var/lock/subsys/fcoe # Wait for the _netdev devices if [ "$WAIT_TIMEOUT" = "" ]; then WAIT_TIMEOUT=65 fi local donewait=1 local devs=($(egrep 'by-path\/fc-.*_netdev' /etc/fstab | cut -d ' ' -f1)) if [ "$devs" != "" ]; then echo -n "Waiting for FCoE devices . " while [ $WAIT_TIMEOUT -gt 0 ]; do for disk in ${devs[*]}; do if ! test -b $disk; then donewait=0 break fi done test $donewait -eq 1 && break; sleep 1 echo -n ". " donewait=1 WAIT_TIMEOUT=$(($WAIT_TIMEOUT-1)) done if [ "$WAIT_TIMEOUT" -eq 0 ]; then echo "timed out!" else echo "done!" fi fi echo }
Technical note added. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
New Contents:
Cause
It might take longer for FCoE partitions to be discovered by the system.
Consequence
Some FCoE partitions may not be mounted after boot.
Fix
Wait for _netdev FCoE partitions to appear during boot (with default
timeout of 65 seconds)
Result
FCoE partitions get discovered and mounted during the boot in most cases.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2011-0743.html |