Bug 1324340

Summary: be2iscsi iSCSI boot server does not boot after installation
Product: Red Hat Enterprise Linux 6 Reporter: Martin Hoyer <mhoyer>
Component: dracutAssignee: Harald Hoyer <harald>
Status: CLOSED ERRATA QA Contact: Martin Hoyer <mhoyer>
Severity: high Docs Contact:
Priority: high    
Version: 6.8CC: agrover, bgoncalv, cleech, coughlan, dracut-maint-list, harald, jkachuck, laurie.barry, mlombard, paul.rivera, revers, shubhrata_priyadarsh, tlavigne, trinh.dao
Target Milestone: rcKeywords: Regression
Target Release: ---Flags: harald: needinfo-
harald: needinfo-
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-05-11 01:10:14 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: 1202403, 1309862, 1319034    
Attachments:
Description Flags
console
none
dracut-004-409.el6 boot none

Description Martin Hoyer 2016-04-06 06:33:36 UTC
Description of problem:
Our server is using OCe10102-IM card for iSCSI SAN boot. With the RHEL-6.8-20160315.0 it cannot boot after installation.

Version-Release number of selected component (if applicable):
RHEL-6.8-20160315.0
  kernel-2.6.32-627.el6
  iscsi-initiator-utils-6.2.0.873-20.el6
  dracut-004-400.el6

Working well with:
RHEL-6.8-20160308.0
  kernel-2.6.32-621.el6
  iscsi-initiator-utils-6.2.0.873-19.el6
  dracut-004-406.el6

How reproducible:
100%

Steps to Reproduce:
1.install RHEL-6.8-20160315.0 or newer
2.check console log while booting

Actual results:

Expected results:


Additional info:

Comment 1 Martin Hoyer 2016-04-06 06:39:06 UTC
Created attachment 1144114 [details]
console

Attachment with console log from both booting and not booting distros.

Comment 2 Martin Hoyer 2016-04-06 06:40:21 UTC
Hello Harald,
could this be related to dracut?

Comment 5 Maurizio Lombardi 2016-04-06 11:12:25 UTC
No changes in the be2iscsi driver between kernel-2.6.32-621 and kernel-2.6.32-627

Comment 6 Harald Hoyer 2016-04-06 11:29:37 UTC
What was the kernel cmdline? Does it help, if you add "ip=ibft" ?

Comment 7 Harald Hoyer 2016-04-06 11:32:48 UTC
dracut changed the behaviour:
If "iscsistart -N" fails, no "iscsistart -b" is tried.

Seems like this assumption is wrong?

Comment 8 Laurie Barry 2016-04-06 12:29:19 UTC
This will impact all of our OEMs/customers (HP, Dell, Lenovo, FTS/FJJ, Hitachi, Huawei, EMC, NetApp, NEC, etc...).  

Can this be resolved for RHEL6.8?

thank you
Laurie

Comment 9 Martin Hoyer 2016-04-06 12:52:46 UTC
(In reply to Harald Hoyer from comment #6)
> What was the kernel cmdline? Does it help, if you add "ip=ibft" ?
I've put ip=ibft to post installation cmd - same result.
Updating last working distro from dracut-004-400 to -406 and rebooting does not reproduce this problem.

Comment 10 Maurizio Lombardi 2016-04-06 13:14:19 UTC
Martin can you try to update the last working distro to kernel-2.6.32-627.el6 too?

Comment 11 Martin Hoyer 2016-04-06 13:31:33 UTC
(In reply to Martin Hoyer from comment #9)
> Updating last working distro from dracut-004-400 to -406 and rebooting does
> not reproduce this problem.
I forgot to rebuild initrd before. Rebuilding initrd after updating dracut to -406 indeed is causing this problem. Sorry for the confusion.

Comment 12 Maurizio Lombardi 2016-04-06 13:48:27 UTC
(In reply to Harald Hoyer from comment #7)
> dracut changed the behaviour:
> If "iscsistart -N" fails, no "iscsistart -b" is tried.
> 
> Seems like this assumption is wrong?

I suspect (but I am not 100% sure yet) that this assumption is wrong.

I'll quote part of this bug report:
https://bugs.launchpad.net/ubuntu/+source/open-iscsi/+bug/1513254

------------
Right now, the following logic is used if you pass iscsi_auto as a kernel option:

modprobe iscsi_ibft
iscsistart -b

However, in a PXE boot environment, the interface initialized will be something like the "primary" interface of the system, probably not where your iscsi traffic is running.

The '-N' flag of iscsistart should also be used to configure the networking before attempting to create a session to the target.

so:

modprobe iscsi_ibft
iscsistart -N
iscsistart -b
------------

So, in certain cases, it's not necessary to run "iscsistart -N" to guarantee that "iscsistart -b" will succeed.

Comment 13 Harald Hoyer 2016-04-07 09:24:43 UTC
Please test:
http://people.redhat.com/harald/downloads/dracut/dracut-004-409.el6/

Comment 14 Martin Hoyer 2016-04-07 13:53:50 UTC
Created attachment 1144752 [details]
dracut-004-409.el6 boot

After Harald's update to dracut test version from comment 13, the machine boots successfully. Please see attached console log.

Comment 16 Martin Hoyer 2016-04-08 07:41:27 UTC
Works well dracut-004-409.el6
Regression tests are passed on iSCSI boot machines.

Comment 18 errata-xmlrpc 2016-05-11 01:10:14 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-0954.html

Comment 19 Charles Rose (Dell) 2016-11-10 12:59:26 UTC
*** Bug 1392411 has been marked as a duplicate of this bug. ***