Bug 859908

Summary: be2iscsi: kernel panic when trying to login with 100 interfaces
Product: Red Hat Enterprise Linux 6 Reporter: Bruno Goncalves <bgoncalv>
Component: iscsi-initiator-utilsAssignee: Chris Leech <cleech>
Status: CLOSED WONTFIX QA Contact: Bruno Goncalves <bgoncalv>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.5CC: abeausol, agrover, coughlan
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-12-06 10:42:44 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:

Description Bruno Goncalves 2012-09-24 11:42:19 UTC
Description of problem:
System crashes when performin iscsi login using 100 interfaces.

Version-Release number of selected component (if applicable):
2.6.32-279.el6.x86_64
iscsi-initiator-utils-6.2.0.872-41.el6.x86_64


How reproducible:
100%

Steps to Reproduce:
1. Define 100 interfaces, using a be2iscsi interface from the server as the base one.

iscsiadm -m iface -I be2iscsi.00:00:c9:a0:e9:0b.ipv4.0
# BEGIN RECORD 2.0-872.41.el6
iface.iscsi_ifacename = be2iscsi.00:00:c9:a0:e9:0b.ipv4.0
iface.net_ifacename = <empty>
iface.ipaddress = <empty>
iface.hwaddress = 00:00:c9:a0:e9:0b
iface.transport_name = be2iscsi
iface.initiatorname = <empty>
iface.bootproto = <empty>
iface.subnet_mask = <empty>
iface.gateway = <empty>
iface.ipv6_autocfg = <empty>
iface.linklocal_autocfg = <empty>
iface.router_autocfg = <empty>
iface.ipv6_linklocal = <empty>
iface.ipv6_router = <empty>
iface.state = <empty>
iface.vlan_id = 0
iface.vlan_priority = 0
iface.vlan_state = <empty>
iface.iface_num = 0
iface.mtu = 0
iface.port = 0
# END RECORD
iscsiadm -m iface -o new -I multi_iqn_0
iscsiadm -m iface -I multi_iqn_0 -o update -n iface.hwaddress -v 00:00:c9:a0:e9:0b
iscsiadm -m iface -I multi_iqn_0 -o update -n iface.transport_name -v be2iscsi
iscsiadm -m iface -I multi_iqn_0 -o update -n iface.initiatorname -v iqn.1994-05.com.redhat:multi-iqn-1
#discovery target for this interface
iscsiadm -m discovery -t st -p "na3170b.lab.bos.redhat.com" -I multi_iqn_0 -o new

...

iscsiadm -m iface -o new -I multi_iqn_99
iscsiadm -m iface -I multi_iqn_0 -o update -n iface.hwaddress -v 00:00:c9:a0:e9:0b
iscsiadm -m iface -I multi_iqn_99 -o update -n iface.transport_name -v be2iscsi
iscsiadm -m iface -I multi_iqn_99 -o update -n iface.initiatorname -v iqn.1994-05.com.redhat:multi-iqn-1
#discovery target for this interface
iscsiadm -m discovery -t st -p "na3170b.lab.bos.redhat.com" -I multi_iqn_99 -o new


3.Login to all sessions
  iscsiadm -m node -l

Actual results:

(beiscsi_ep_connect():1025):Failed in beiscsi_open_conn
(beiscsi_open_conn():958):mgmt_open_connection Failed status = 1 extd_status = 26
(beiscsi_ep_connect():1025):Failed in beiscsi_open_conn
(beiscsi_open_conn():958):mgmt_open_connection Failed status = 1 extd_status = 26
(beiscsi_ep_connect():1025):Failed in beiscsi_open_conn
(beiscsi_open_conn():958):mgmt_open_connection Failed status = 1 extd_status = 26
(beiscsi_ep_connect():1025):Failed in beiscsi_open_conn
(beiscsi_open_conn():958):mgmt_open_connection Failed status = 1 extd_status = 26
(beiscsi_ep_connect():1025):Failed in beiscsi_open_conn
(beiscsi_process_cq():1896):
(beiscsi_process_cq():1896):CQ Error 13, reset CID 0x3300...
(beiscsi_process_cq():1896):CQ Error 13, reset CID 0x3280...
(beiscsi_process_cq():1896):CQ Error 13, reset CID 0x3200...
BUG: unable to handle kernel NULL pointer dereference at (null)
IP: [<ffffffffa01a3a26>] beiscsi_process_cq+0x2a6/0x7f0 [be2iscsi]
PGD 199a02067 PUD 199ad6067 PMD 0 
Oops: 0000 [#1] SMP 
last sysfs file: /sys/devices/pci0000:00/0000:00:02.0/0000:09:00.0/0000:0a:01.0/0000:0e:00.3/host1/iscsi_host/host1/initiatorname
CPU 3 
Modules linked in: autofs4 sunrpc cpufreq_ondemand acpi_cpufreq freq_table mperf ib_iser rdma_cm ib_cm iw_cm ib_sa ib_mad ib_core ib_addr osst st ipmi_si ipmi_msghandler hpilo hpwdt microcode serio_raw sg iTCO_wdt iTCO_vendor_support i5000_edac edac_core i5k_amb shpchp ext4 mbcache jbd2 dm_round_robin sd_mod crc_t10dif be2net mvsas libsas scsi_transport_sas sr_mod cdrom bnx2 pata_acpi ata_generic ata_piix hpsa cciss radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core dm_multipath dm_mirror dm_region_hash dm_log dm_mod iscsi_tcp iscsi_ibft be2iscsi bnx2i cnic uio ipv6 cxgb4i cxgb4 cxgb3i libcxgbi cxgb3 mdio libiscsi_tcp qla4xxx iscsi_boot_sysfs libiscsi scsi_transport_iscsi [last unloaded: scsi_wait_scan]

Pid: 0, comm: swapper Not tainted 2.6.32-279.el6.x86_64 #1 HP ProLiant DL380 G5
RIP: 0010:[<ffffffffa01a3a26>]  [<ffffffffa01a3a26>] beiscsi_process_cq+0x2a6/0x7f0 [be2iscsi]
RSP: 0018:ffff8800282c3dd0  EFLAGS: 00010282
RAX: 0000000000000021 RBX: ffff8801a4b62fe0 RCX: 0000000000002caf
RDX: 0000000000000000 RSI: 0000000000000086 RDI: 0000000000000246
RBP: ffff8800282c3e50 R08: 00000000fffffff8 R09: 00000000fffffffb
R10: 0000000000000003 R11: 0000000000000003 R12: ffff8801a4d24ca0
R13: ffff8801a4d18640 R14: 0000000000000000 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff8800282c0000(0000) knlGS:0000000000000000
CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
CR2: 0000000000000000 CR3: 000000019c9ca000 CR4: 00000000000406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Process swapper (pid: 0, threadinfo ffff8801abac4000, task ffff8801abac0aa0)
Stack:
 ffff8800282c3df0 ffffffff81438bf3 ffff88019d7f4720 ffff88019d7f4720
<d> ffff8800282c3e10 ffff8801a4d1897c ffff8800282d16a0 0000000000000000
<d> ffff8800282d15e8 00000000000115a0 0000000000000000 000000000000000a
Call Trace:
 <IRQ> 
 [<ffffffff81438bf3>] ? __napi_complete+0x23/0x40
 [<ffffffffa01a3fe4>] be_iopoll+0x24/0x70 [be2iscsi]
 [<ffffffff8125dee6>] blk_iopoll_softirq+0x96/0x110
 [<ffffffffa01a49a1>] ? be_isr_msix+0x1a1/0x260 [be2iscsi]
 [<ffffffff81073ec1>] __do_softirq+0xc1/0x1e0
 [<ffffffff810db800>] ? handle_IRQ_event+0x60/0x170
 [<ffffffff8100c24c>] call_softirq+0x1c/0x30
 [<ffffffff8100de85>] do_softirq+0x65/0xa0
 [<ffffffff81073ca5>] irq_exit+0x85/0x90
 [<ffffffff81505af5>] do_IRQ+0x75/0xf0
 [<ffffffff8100ba53>] ret_from_intr+0x0/0x11
 <EOI> 
 [<ffffffff81014877>] ? mwait_idle+0x77/0xd0
 [<ffffffff8150338a>] ? atomic_notifier_call_chain+0x1a/0x20
 [<ffffffff81009e06>] cpu_idle+0xb6/0x110
 [<ffffffff814f6cdf>] start_secondary+0x22a/0x26d
Code: a0 48 c7 c7 0b f4 1a a0 31 c0 e8 d8 97 35 e1 8b 73 08 48 c7 c7 90 e0 1a a0 89 f2 83 e6 3f 81 e2 c0 ff 00 00 31 c0 e8 bc 97 35 e1 <49> 8b 3f be f3 03 00 00 e8 7d 77 e7 ff e9 e8 fd ff ff 0f 1f 84 
RIP  [<ffffffffa01a3a26>] beiscsi_process_cq+0x2a6/0x7f0 [be2iscsi]
 RSP <ffff8800282c3dd0>
CR2: 0000000000000000
---[ end trace 898f9d6f2cfbb6cf ]---


Expected results:
It should login to all sessions, or report an error informing it has reached the limit of sessions.

Additional info:

Comment 2 RHEL Program Management 2013-10-14 04:45:56 UTC
This request was not resolved in time for the current release.
Red Hat invites you to ask your support representative to
propose this request, if still desired, for consideration in
the next release of Red Hat Enterprise Linux.

Comment 4 Jan Kurik 2017-12-06 10:42:44 UTC
Red Hat Enterprise Linux 6 is in the Production 3 Phase. During the Production 3 Phase, Critical impact Security Advisories (RHSAs) and selected Urgent Priority Bug Fix Advisories (RHBAs) may be released as they become available.

The official life cycle policy can be reviewed here:

http://redhat.com/rhel/lifecycle

This issue does not meet the inclusion criteria for the Production 3 Phase and will be marked as CLOSED/WONTFIX. If this remains a critical requirement, please contact Red Hat Customer Support to request a re-evaluation of the issue, citing a clear business justification. Note that a strong business justification will be required for re-evaluation. Red Hat Customer Support can be contacted via the Red Hat Customer Portal at the following URL:

https://access.redhat.com/