<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/scsi, branch v3.18-rc6</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2014-11-22T01:20:36+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2014-11-22T01:20:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=8a84e01e147f44111988f9d8ccd2eaa30215a0f2'/>
<id>8a84e01e147f44111988f9d8ccd2eaa30215a0f2</id>
<content type='text'>
Pull networking fixes from David Miller:

 1) Fix BUG when decrypting empty packets in mac80211, from Ronald Wahl.

 2) nf_nat_range is not fully initialized and this is copied back to
    userspace, from Daniel Borkmann.

 3) Fix read past end of b uffer in netfilter ipset, also from Dan
    Carpenter.

 4) Signed integer overflow in ipv4 address mask creation helper
    inet_make_mask(), from Vincent BENAYOUN.

 5) VXLAN, be2net, mlx4_en, and qlcnic need -&gt;ndo_gso_check() methods to
    properly describe the device's capabilities, from Joe Stringer.

 6) Fix memory leaks and checksum miscalculations in openvswitch, from
    Pravin B SHelar and Jesse Gross.

 7) FIB rules passes back ambiguous error code for unreachable routes,
    making behavior confusing for userspace.  Fix from Panu Matilainen.

 8) ieee802154fake_probe() doesn't release resources properly on error,
    from Alexey Khoroshilov.

 9) Fix skb_over_panic in add_grhead(), from Daniel Borkmann.

10) Fix access of stale slave pointers in bonding code, from Nikolay
    Aleksandrov.

11) Fix stack info leak in PPP pptp code, from Mathias Krause.

12) Cure locking bug in IPX stack, from Jiri Bohac.

13) Revert SKB fclone memory freeing optimization that is racey and can
    allow accesses to freed up memory, from Eric Dumazet.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (71 commits)
  tcp: Restore RFC5961-compliant behavior for SYN packets
  net: Revert "net: avoid one atomic operation in skb_clone()"
  virtio-net: validate features during probe
  cxgb4 : Fix DCB priority groups being returned in wrong order
  ipx: fix locking regression in ipx_sendmsg and ipx_recvmsg
  openvswitch: Don't validate IPv6 label masks.
  pptp: fix stack info leak in pptp_getname()
  brcmfmac: don't include linux/unaligned/access_ok.h
  cxgb4i : Don't block unload/cxgb4 unload when remote closes TCP connection
  ipv6: delete protocol and unregister rtnetlink when cleanup
  net/mlx4_en: Add VXLAN ndo calls to the PF net device ops too
  bonding: fix curr_active_slave/carrier with loadbalance arp monitoring
  mac80211: minstrel_ht: fix a crash in rate sorting
  vxlan: Inline vxlan_gso_check().
  can: m_can: update to support CAN FD features
  can: m_can: fix incorrect error messages
  can: m_can: add missing delay after setting CCCR_INIT bit
  can: m_can: fix not set can_dlc for remote frame
  can: m_can: fix possible sleep in napi poll
  can: m_can: add missing message RAM initialization
  ...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pull networking fixes from David Miller:

 1) Fix BUG when decrypting empty packets in mac80211, from Ronald Wahl.

 2) nf_nat_range is not fully initialized and this is copied back to
    userspace, from Daniel Borkmann.

 3) Fix read past end of b uffer in netfilter ipset, also from Dan
    Carpenter.

 4) Signed integer overflow in ipv4 address mask creation helper
    inet_make_mask(), from Vincent BENAYOUN.

 5) VXLAN, be2net, mlx4_en, and qlcnic need -&gt;ndo_gso_check() methods to
    properly describe the device's capabilities, from Joe Stringer.

 6) Fix memory leaks and checksum miscalculations in openvswitch, from
    Pravin B SHelar and Jesse Gross.

 7) FIB rules passes back ambiguous error code for unreachable routes,
    making behavior confusing for userspace.  Fix from Panu Matilainen.

 8) ieee802154fake_probe() doesn't release resources properly on error,
    from Alexey Khoroshilov.

 9) Fix skb_over_panic in add_grhead(), from Daniel Borkmann.

10) Fix access of stale slave pointers in bonding code, from Nikolay
    Aleksandrov.

11) Fix stack info leak in PPP pptp code, from Mathias Krause.

12) Cure locking bug in IPX stack, from Jiri Bohac.

13) Revert SKB fclone memory freeing optimization that is racey and can
    allow accesses to freed up memory, from Eric Dumazet.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (71 commits)
  tcp: Restore RFC5961-compliant behavior for SYN packets
  net: Revert "net: avoid one atomic operation in skb_clone()"
  virtio-net: validate features during probe
  cxgb4 : Fix DCB priority groups being returned in wrong order
  ipx: fix locking regression in ipx_sendmsg and ipx_recvmsg
  openvswitch: Don't validate IPv6 label masks.
  pptp: fix stack info leak in pptp_getname()
  brcmfmac: don't include linux/unaligned/access_ok.h
  cxgb4i : Don't block unload/cxgb4 unload when remote closes TCP connection
  ipv6: delete protocol and unregister rtnetlink when cleanup
  net/mlx4_en: Add VXLAN ndo calls to the PF net device ops too
  bonding: fix curr_active_slave/carrier with loadbalance arp monitoring
  mac80211: minstrel_ht: fix a crash in rate sorting
  vxlan: Inline vxlan_gso_check().
  can: m_can: update to support CAN FD features
  can: m_can: fix incorrect error messages
  can: m_can: add missing delay after setting CCCR_INIT bit
  can: m_can: fix not set can_dlc for remote frame
  can: m_can: fix possible sleep in napi poll
  can: m_can: add missing message RAM initialization
  ...
</pre>
</div>
</content>
</entry>
<entry>
<title>cxgb4i : Don't block unload/cxgb4 unload when remote closes TCP connection</title>
<updated>2014-11-19T21:59:26+00:00</updated>
<author>
<name>Anish Bhatt</name>
<email>anish@chelsio.com</email>
</author>
<published>2014-11-19T03:09:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=ee7255ada313a6db99be47ce174b0bfb8295a041'/>
<id>ee7255ada313a6db99be47ce174b0bfb8295a041</id>
<content type='text'>
cxgb4i was returning wrong error and not releasing module reference if remote
end abruptly closed TCP connection. This prevents the cxgb4 network module from
being unloaded, further affecting other network drivers dependent on cxgb4

Sending to net as this affects all cxgb4 based network drivers.

Signed-off-by: Anish Bhatt &lt;anish@chelsio.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
cxgb4i was returning wrong error and not releasing module reference if remote
end abruptly closed TCP connection. This prevents the cxgb4 network module from
being unloaded, further affecting other network drivers dependent on cxgb4

Sending to net as this affects all cxgb4 based network drivers.

Signed-off-by: Anish Bhatt &lt;anish@chelsio.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>bnx2fc: fix tgt spinlock locking</title>
<updated>2014-11-10T14:25:41+00:00</updated>
<author>
<name>Maurizio Lombardi</name>
<email>mlombard@redhat.com</email>
</author>
<published>2014-11-07T11:55:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=dc6311dd2a8fb9a65c1b5b94abec97bdd94cfae6'/>
<id>dc6311dd2a8fb9a65c1b5b94abec97bdd94cfae6</id>
<content type='text'>
bnx2fc_queuecommand(): when allocating a new io_req, the tgt_lock
spinlock must be locked before calling bnx2fc_cmd_alloc().

The spinlock should also be kept locked until bnx2fc_post_io_req() has
been completed.
If not, a kernel thread may call bnx2fc_process_cq_compl() that extracts
the newly allocated io_req from hba-&gt;cmd_mgr-&gt;cmds and destroys it while
it is still being used by bnx2fc_post_io_req().

BUG: unable to handle kernel NULL pointer dereference at 000000000000004c
IP: [&lt;ffffffffa03130da&gt;] bnx2fc_init_task+0x6a/0x230 [bnx2fc]
PGD 0
Oops: 0000 [#1] SMP
last sysfs file: /sys/devices/pci0000:00/0000:00:02.0/0000:04:00.3/net/eth3/type
CPU 33
Modules linked in: autofs4 target_core_iblock target_core_file target_core_pscsi target_core_mod configfs bnx2fc cnic uio fcoe libfcoe libfc scsi_transport_fc 8021q garp scsi_tgt stp llc cpufreq_ondemand freq_table pcc_cpufreq ipt_REJECT nf_conntrack_ipv4 nf_defrag_ipv4 iptable_filter ip_tables ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables ipv6 power_meter microcode iTCO_wdt iTCO_vendor_support hpilo hpwdt sg bnx2x libcrc32c mdio serio_raw lpc_ich mfd_core shpchp ext4 jbd2 mbcache sd_mod crc_t10dif hpsa video output dm_mirror dm_region_hash dm_log dm_mod [last unloaded: scsi_wait_scan]

Pid: 7355, comm: bnx2fc_thread/3 Not tainted 2.6.32-431.el6.x86_64 #1 HP ProLiant BL460c Gen8
RIP: 0010:[&lt;ffffffffa03130da&gt;]  [&lt;ffffffffa03130da&gt;] bnx2fc_init_task+0x6a/0x230 [bnx2fc]
RSP: 0018:ffff8820b0da3b68  EFLAGS: 00010246
RAX: 0000000000000000 RBX: ffff882003801080 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff882003801100
RBP: ffff8820b0da3bc8 R08: ffffffff8160d4e8 R09: 0000000000000040
R10: 0000000000000000 R11: 0000000000000000 R12: ffff88400e600e00
R13: ffff8840108fbe40 R14: ffff88200ffe5400 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff8820b0da0000(0000) knlGS:0000000000000000
CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
CR2: 000000000000004c CR3: 0000002010b67000 CR4: 00000000001407e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Process bnx2fc_thread/3 (pid: 7355, threadinfo ffff88401f940000, task ffff884012f5f540)
Stack:
 ffff8820b0da3bc8 ffffffff81527303 ffff884000000020 ffff8820b0da3bd8
&lt;d&gt; ffff8820b0da3b98 000000028138931a ffff88400f506078 ffff88400e600e00
&lt;d&gt; ffff88200ffe5400 ffff88200ffe5590 0000000000000021 0000000000000002
Call Trace:
 &lt;IRQ&gt;
 [&lt;ffffffff81527303&gt;] ? printk+0x41/0x46
 [&lt;ffffffffa03169bc&gt;] bnx2fc_post_io_req+0x11c/0x440 [bnx2fc]
 [&lt;ffffffff812825b9&gt;] ? cpumask_next_and+0x29/0x50
 [&lt;ffffffff8137ffd0&gt;] ? scsi_done+0x0/0x60
 [&lt;ffffffffa0316df7&gt;] bnx2fc_queuecommand+0x117/0x140 [bnx2fc]
 [&lt;ffffffff81380245&gt;] scsi_dispatch_cmd+0xe5/0x310
 [&lt;ffffffff81388b9e&gt;] scsi_request_fn+0x5ee/0x7a0
 [&lt;ffffffff812658f1&gt;] __blk_run_queue+0x31/0x40
 [&lt;ffffffff81265a40&gt;] blk_run_queue+0x30/0x50
 [&lt;ffffffff81387da6&gt;] scsi_run_queue+0xc6/0x270
 [&lt;ffffffff81260f92&gt;] ? elv_requeue_request+0x52/0xa0
 [&lt;ffffffff813897a0&gt;] scsi_requeue_command+0x90/0xb0
 [&lt;ffffffff81389b84&gt;] scsi_io_completion+0x154/0x6c0
 [&lt;ffffffff8137ff62&gt;] scsi_finish_command+0xc2/0x130
 [&lt;ffffffff8138a255&gt;] scsi_softirq_done+0x145/0x170
 [&lt;ffffffff8126e865&gt;] blk_done_softirq+0x85/0xa0
 [&lt;ffffffff8107a8e1&gt;] __do_softirq+0xc1/0x1e0
 [&lt;ffffffff8100c30c&gt;] ? call_softirq+0x1c/0x30
 [&lt;ffffffff8100c30c&gt;] call_softirq+0x1c/0x30
 &lt;EOI&gt;
 [&lt;ffffffff8100fa75&gt;] ? do_softirq+0x65/0xa0
 [&lt;ffffffff8107a40a&gt;] local_bh_enable_ip+0x9a/0xb0
 [&lt;ffffffff8152a4eb&gt;] _spin_unlock_bh+0x1b/0x20
 [&lt;ffffffffa0313937&gt;] bnx2fc_process_cq_compl+0x257/0x2b0 [bnx2fc]
 [&lt;ffffffffa03114ea&gt;] bnx2fc_percpu_io_thread+0xea/0x160 [bnx2fc]
 [&lt;ffffffffa0311400&gt;] ? bnx2fc_percpu_io_thread+0x0/0x160 [bnx2fc]
 [&lt;ffffffff8109aef6&gt;] kthread+0x96/0xa0
 [&lt;ffffffff8100c20a&gt;] child_rip+0xa/0x20
 [&lt;ffffffff8109ae60&gt;] ? kthread+0x0/0xa0
 [&lt;ffffffff8100c200&gt;] ? child_rip+0x0/0x20
Code: 89 df 45 8b 7e 30 0f 85 75 01 00 00 89 d1 31 c0 c1 e9 03 83 e2 04 89 c9 f3 48 ab 74 06 c7 07 00 00 00 00 49 89 9c 24 88 01 00 00 &lt;83&gt; 7e 4c 01 b8 01 00 00 00 0f 84 e7 00 00 00 89 c2 0a 53 38 41
RIP  [&lt;ffffffffa03130da&gt;] bnx2fc_init_task+0x6a/0x230 [bnx2fc]
 RSP &lt;ffff8820b0da3b68&gt;
CR2: 000000000000004c

Signed-off-by: Maurizio Lombardi &lt;mlombard@redhat.com&gt;
Acked-by: Chad Dupuis &lt;chad.dupuis@qlogic.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
bnx2fc_queuecommand(): when allocating a new io_req, the tgt_lock
spinlock must be locked before calling bnx2fc_cmd_alloc().

The spinlock should also be kept locked until bnx2fc_post_io_req() has
been completed.
If not, a kernel thread may call bnx2fc_process_cq_compl() that extracts
the newly allocated io_req from hba-&gt;cmd_mgr-&gt;cmds and destroys it while
it is still being used by bnx2fc_post_io_req().

BUG: unable to handle kernel NULL pointer dereference at 000000000000004c
IP: [&lt;ffffffffa03130da&gt;] bnx2fc_init_task+0x6a/0x230 [bnx2fc]
PGD 0
Oops: 0000 [#1] SMP
last sysfs file: /sys/devices/pci0000:00/0000:00:02.0/0000:04:00.3/net/eth3/type
CPU 33
Modules linked in: autofs4 target_core_iblock target_core_file target_core_pscsi target_core_mod configfs bnx2fc cnic uio fcoe libfcoe libfc scsi_transport_fc 8021q garp scsi_tgt stp llc cpufreq_ondemand freq_table pcc_cpufreq ipt_REJECT nf_conntrack_ipv4 nf_defrag_ipv4 iptable_filter ip_tables ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables ipv6 power_meter microcode iTCO_wdt iTCO_vendor_support hpilo hpwdt sg bnx2x libcrc32c mdio serio_raw lpc_ich mfd_core shpchp ext4 jbd2 mbcache sd_mod crc_t10dif hpsa video output dm_mirror dm_region_hash dm_log dm_mod [last unloaded: scsi_wait_scan]

Pid: 7355, comm: bnx2fc_thread/3 Not tainted 2.6.32-431.el6.x86_64 #1 HP ProLiant BL460c Gen8
RIP: 0010:[&lt;ffffffffa03130da&gt;]  [&lt;ffffffffa03130da&gt;] bnx2fc_init_task+0x6a/0x230 [bnx2fc]
RSP: 0018:ffff8820b0da3b68  EFLAGS: 00010246
RAX: 0000000000000000 RBX: ffff882003801080 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff882003801100
RBP: ffff8820b0da3bc8 R08: ffffffff8160d4e8 R09: 0000000000000040
R10: 0000000000000000 R11: 0000000000000000 R12: ffff88400e600e00
R13: ffff8840108fbe40 R14: ffff88200ffe5400 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff8820b0da0000(0000) knlGS:0000000000000000
CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
CR2: 000000000000004c CR3: 0000002010b67000 CR4: 00000000001407e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Process bnx2fc_thread/3 (pid: 7355, threadinfo ffff88401f940000, task ffff884012f5f540)
Stack:
 ffff8820b0da3bc8 ffffffff81527303 ffff884000000020 ffff8820b0da3bd8
&lt;d&gt; ffff8820b0da3b98 000000028138931a ffff88400f506078 ffff88400e600e00
&lt;d&gt; ffff88200ffe5400 ffff88200ffe5590 0000000000000021 0000000000000002
Call Trace:
 &lt;IRQ&gt;
 [&lt;ffffffff81527303&gt;] ? printk+0x41/0x46
 [&lt;ffffffffa03169bc&gt;] bnx2fc_post_io_req+0x11c/0x440 [bnx2fc]
 [&lt;ffffffff812825b9&gt;] ? cpumask_next_and+0x29/0x50
 [&lt;ffffffff8137ffd0&gt;] ? scsi_done+0x0/0x60
 [&lt;ffffffffa0316df7&gt;] bnx2fc_queuecommand+0x117/0x140 [bnx2fc]
 [&lt;ffffffff81380245&gt;] scsi_dispatch_cmd+0xe5/0x310
 [&lt;ffffffff81388b9e&gt;] scsi_request_fn+0x5ee/0x7a0
 [&lt;ffffffff812658f1&gt;] __blk_run_queue+0x31/0x40
 [&lt;ffffffff81265a40&gt;] blk_run_queue+0x30/0x50
 [&lt;ffffffff81387da6&gt;] scsi_run_queue+0xc6/0x270
 [&lt;ffffffff81260f92&gt;] ? elv_requeue_request+0x52/0xa0
 [&lt;ffffffff813897a0&gt;] scsi_requeue_command+0x90/0xb0
 [&lt;ffffffff81389b84&gt;] scsi_io_completion+0x154/0x6c0
 [&lt;ffffffff8137ff62&gt;] scsi_finish_command+0xc2/0x130
 [&lt;ffffffff8138a255&gt;] scsi_softirq_done+0x145/0x170
 [&lt;ffffffff8126e865&gt;] blk_done_softirq+0x85/0xa0
 [&lt;ffffffff8107a8e1&gt;] __do_softirq+0xc1/0x1e0
 [&lt;ffffffff8100c30c&gt;] ? call_softirq+0x1c/0x30
 [&lt;ffffffff8100c30c&gt;] call_softirq+0x1c/0x30
 &lt;EOI&gt;
 [&lt;ffffffff8100fa75&gt;] ? do_softirq+0x65/0xa0
 [&lt;ffffffff8107a40a&gt;] local_bh_enable_ip+0x9a/0xb0
 [&lt;ffffffff8152a4eb&gt;] _spin_unlock_bh+0x1b/0x20
 [&lt;ffffffffa0313937&gt;] bnx2fc_process_cq_compl+0x257/0x2b0 [bnx2fc]
 [&lt;ffffffffa03114ea&gt;] bnx2fc_percpu_io_thread+0xea/0x160 [bnx2fc]
 [&lt;ffffffffa0311400&gt;] ? bnx2fc_percpu_io_thread+0x0/0x160 [bnx2fc]
 [&lt;ffffffff8109aef6&gt;] kthread+0x96/0xa0
 [&lt;ffffffff8100c20a&gt;] child_rip+0xa/0x20
 [&lt;ffffffff8109ae60&gt;] ? kthread+0x0/0xa0
 [&lt;ffffffff8100c200&gt;] ? child_rip+0x0/0x20
Code: 89 df 45 8b 7e 30 0f 85 75 01 00 00 89 d1 31 c0 c1 e9 03 83 e2 04 89 c9 f3 48 ab 74 06 c7 07 00 00 00 00 49 89 9c 24 88 01 00 00 &lt;83&gt; 7e 4c 01 b8 01 00 00 00 0f 84 e7 00 00 00 89 c2 0a 53 38 41
RIP  [&lt;ffffffffa03130da&gt;] bnx2fc_init_task+0x6a/0x230 [bnx2fc]
 RSP &lt;ffff8820b0da3b68&gt;
CR2: 000000000000004c

Signed-off-by: Maurizio Lombardi &lt;mlombard@redhat.com&gt;
Acked-by: Chad Dupuis &lt;chad.dupuis@qlogic.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>megaraid_sas: fix bug in handling return value of pci_enable_msix_range()</title>
<updated>2014-11-10T14:25:41+00:00</updated>
<author>
<name>Jiang Liu</name>
<email>jiang.liu@linux.intel.com</email>
</author>
<published>2014-11-03T12:44:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=c12de882e7765585ae3a2ae22aa569285951613a'/>
<id>c12de882e7765585ae3a2ae22aa569285951613a</id>
<content type='text'>
Function pci_enable_msix_range() may return negative values for error
conditions. So it's a bug by checking (pci_enable_msix_range() != 0)
for success and causes failure to megaraid driver when MSI is disabled.
[   16.487267] megaraid_sas 0000:02:00.0: Controller type: iMR
[   16.487275] genirq: Flags mismatch irq 0. 00000000 (megasas) vs. 00015a00 (tii
mer)
[   16.487347] megasas: Failed to register IRQ for vector 0.

Fixes: 8ae80ed1734b "megaraid: Use pci_enable_msix_range() instead of pci_enable_msix()"

Signed-off-by: Jiang Liu &lt;jiang.liu@linux.intel.com&gt;
Acked-by: Sumit Saxena &lt;sumit.saxena@avagotech.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: &lt;stable@vger.kernel.org&gt; # 3.17
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Function pci_enable_msix_range() may return negative values for error
conditions. So it's a bug by checking (pci_enable_msix_range() != 0)
for success and causes failure to megaraid driver when MSI is disabled.
[   16.487267] megaraid_sas 0000:02:00.0: Controller type: iMR
[   16.487275] genirq: Flags mismatch irq 0. 00000000 (megasas) vs. 00015a00 (tii
mer)
[   16.487347] megasas: Failed to register IRQ for vector 0.

Fixes: 8ae80ed1734b "megaraid: Use pci_enable_msix_range() instead of pci_enable_msix()"

Signed-off-by: Jiang Liu &lt;jiang.liu@linux.intel.com&gt;
Acked-by: Sumit Saxena &lt;sumit.saxena@avagotech.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: &lt;stable@vger.kernel.org&gt; # 3.17
</pre>
</div>
</content>
</entry>
<entry>
<title>cxgb4i: send abort_rpl correctly</title>
<updated>2014-11-10T14:25:29+00:00</updated>
<author>
<name>Anish Bhatt</name>
<email>anish@chelsio.com</email>
</author>
<published>2014-11-06T20:53:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=7b07bf244ae33e4ce8d51c23f1359121942a6f3e'/>
<id>7b07bf244ae33e4ce8d51c23f1359121942a6f3e</id>
<content type='text'>
Connection retries were not being cleaned up correctly if they failed as a
result of link down. Applies on top of drivers-for-3.18.

Signed-off-by: Anish Bhatt &lt;anish@chelsio.com&gt;
Signed-off-by: Karen Xie &lt;kxie@chelsio.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Connection retries were not being cleaned up correctly if they failed as a
result of link down. Applies on top of drivers-for-3.18.

Signed-off-by: Anish Bhatt &lt;anish@chelsio.com&gt;
Signed-off-by: Karen Xie &lt;kxie@chelsio.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: TUR path is down after adapter gets reset with multipath</title>
<updated>2014-11-10T14:23:27+00:00</updated>
<author>
<name>wenxiong@linux.vnet.ibm.com</name>
<email>wenxiong@linux.vnet.ibm.com</email>
</author>
<published>2014-11-06T21:11:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=333b2448cf5bd5a94c91a77136cac837d38fb984'/>
<id>333b2448cf5bd5a94c91a77136cac837d38fb984</id>
<content type='text'>
This patch fixes an issue with multipath ipr SAS devices which require a
start unit command to be issued following an adapter reset. Without this
patch, paths get marked failed following an adapter reset and since the
error handler never gets invoked to issue the start unit, the paths are
never recovered. Returning FAILED for this case ensures the error
handler wakes up to issue the start unit.

Signed-off-by: Brian King &lt;brking@linux.vnet.ibm.com&gt;
Tested-by: Wen Xiong &lt;wenxiong@linux.vnet.ibm.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes an issue with multipath ipr SAS devices which require a
start unit command to be issued following an adapter reset. Without this
patch, paths get marked failed following an adapter reset and since the
error handler never gets invoked to issue the start unit, the paths are
never recovered. Returning FAILED for this case ensures the error
handler wakes up to issue the start unit.

Signed-off-by: Brian King &lt;brking@linux.vnet.ibm.com&gt;
Tested-by: Wen Xiong &lt;wenxiong@linux.vnet.ibm.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: call device handler for failed TUR command</title>
<updated>2014-11-10T14:23:19+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@infradead.org</email>
</author>
<published>2014-11-06T21:11:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=e925cc431ac8285ad6e8b3fe09f6e3d8b3c30d56'/>
<id>e925cc431ac8285ad6e8b3fe09f6e3d8b3c30d56</id>
<content type='text'>
Multipath devices using the TUR path checker need to see the sense
code for a failed TUR command in their device handler.  Since commit
14216561e164671ce147458653b1fea06a we always return success for mid
layer issued TUR commands before calling the device handler, which
stopped the TUR path checker from working.

Move the call to the device handler check sense method before the early
return for TUR commands to give the device handler a chance to intercept
them.

Signed-off-by: Christoph Hellwig &lt;hch@infradead.org&gt;
Tested-by: Wen Xiong &lt;wenxiong@linux.vnet.ibm.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Multipath devices using the TUR path checker need to see the sense
code for a failed TUR command in their device handler.  Since commit
14216561e164671ce147458653b1fea06a we always return success for mid
layer issued TUR commands before calling the device handler, which
stopped the TUR path checker from working.

Move the call to the device handler check sense method before the early
return for TUR commands to give the device handler a chance to intercept
them.

Signed-off-by: Christoph Hellwig &lt;hch@infradead.org&gt;
Tested-by: Wen Xiong &lt;wenxiong@linux.vnet.ibm.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: only re-lock door after EH on devices that were reset</title>
<updated>2014-11-10T14:23:18+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2014-11-03T18:36:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=48379270fe6808cf4612ee094adc8da2b7a83baa'/>
<id>48379270fe6808cf4612ee094adc8da2b7a83baa</id>
<content type='text'>
Setups that use the blk-mq I/O path can lock up if a host with a single
device that has its door locked enters EH.  Make sure to only send the
command to re-lock the door to devices that actually were reset and thus
might have lost their state.  Otherwise the EH code might be get blocked
on blk_get_request as all requests for non-reset devices might be in use.

Cc: stable@vger.kernel.org
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reported-by: Meelis Roos &lt;meelis.roos@ut.ee&gt;
Tested-by: Meelis Roos &lt;meelis.roos@ut.ee&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Setups that use the blk-mq I/O path can lock up if a host with a single
device that has its door locked enters EH.  Make sure to only send the
command to re-lock the door to devices that actually were reset and thus
might have lost their state.  Otherwise the EH code might be get blocked
on blk_get_request as all requests for non-reset devices might be in use.

Cc: stable@vger.kernel.org
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reported-by: Meelis Roos &lt;meelis.roos@ut.ee&gt;
Tested-by: Meelis Roos &lt;meelis.roos@ut.ee&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libcxgbi : support ipv6 address host_param</title>
<updated>2014-10-28T08:57:00+00:00</updated>
<author>
<name>Anish Bhatt</name>
<email>anish@chelsio.com</email>
</author>
<published>2014-10-16T22:59:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=dd9ad67e9bcb71e2efeb5b2f38c9202c013aa74c'/>
<id>dd9ad67e9bcb71e2efeb5b2f38c9202c013aa74c</id>
<content type='text'>
libcxgbi was always returning an ipv4 address for ISCSI_HOST_PARAM_IPADDRESS,
return appropriate address based on address family

Signed-off-by: Anish Bhatt &lt;anish@chelsio.com&gt;
Signed-off-by: Karen Xie &lt;kxie@chelsio.com&gt;
Reviewed-by: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
libcxgbi was always returning an ipv4 address for ISCSI_HOST_PARAM_IPADDRESS,
return appropriate address based on address family

Signed-off-by: Anish Bhatt &lt;anish@chelsio.com&gt;
Signed-off-by: Karen Xie &lt;kxie@chelsio.com&gt;
Reviewed-by: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: set REQ_QUEUE for the blk-mq case</title>
<updated>2014-10-28T08:53:43+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2014-10-19T15:13:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=b1dd2aac4cc0892b82ec60232ed37e3b0af776cc'/>
<id>b1dd2aac4cc0892b82ec60232ed37e3b0af776cc</id>
<content type='text'>
To generate the right SPI tag messages we need to properly set
QUEUE_FLAG_QUEUED in the request_queue and mirror it to the
request.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Acked-by: Jens Axboe &lt;axboe@kernel.dk&gt;
Reported-by: Meelis Roos &lt;mroos@linux.ee&gt;
Tested-by: Meelis Roos &lt;mroos@linux.ee&gt;
Cc: stable@vger.kernel.org
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To generate the right SPI tag messages we need to properly set
QUEUE_FLAG_QUEUED in the request_queue and mirror it to the
request.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Acked-by: Jens Axboe &lt;axboe@kernel.dk&gt;
Reported-by: Meelis Roos &lt;mroos@linux.ee&gt;
Tested-by: Meelis Roos &lt;mroos@linux.ee&gt;
Cc: stable@vger.kernel.org
</pre>
</div>
</content>
</entry>
</feed>
