1. 04 1月, 2012 1 次提交
  2. 14 12月, 2011 1 次提交
    • E
      [SCSI] bnx2i: Fixed kernel panic caused by unprotected task->sc->request deref · a878185c
      Eddie Wai 提交于
      During session recovery, the conn_stop call will trigger a flush
      to all outstanding SCSI cmds in the xmit queue.  This will set
      all outstanding task->sc to NULL prior to the session_teardown
      call which frees the task memory.
      
      In the bnx2i SCSI response processing path, only the task was being checked
      for NULL under the session lock before the task->sc->request dereferencing.
      If there are outstanding SCSI cmd responses pending for process, the
      following kernel panic can be exposed where task->sc was found to be NULL.
      
       Call Trace:
      [   69.720205]  [<ffffffffa040d0d0>] bnx2i_process_new_cqes+0x290/0x3c0 [bnx2i]
      [   69.804289]  [<ffffffffa040d233>] bnx2i_fastpath_notification+0x33/0xa0 [bnx2
      i]
      [   69.891490]  [<ffffffffa040d37b>] bnx2i_indicate_kcqe+0xdb/0x330 [bnx2i]
      [   69.971427]  [<ffffffffa03eac5e>] service_kcqes+0x16e/0x1d0 [cnic]
      [   70.045132]  [<ffffffffa03eacea>] cnic_service_bnx2x_kcq+0x2a/0x50 [cnic]
      [   70.126105]  [<ffffffffa03ead53>] cnic_service_bnx2x_bh+0x43/0x140 [cnic]
      [   70.207081]  [<ffffffff81060676>] tasklet_action+0x66/0x110
      [   70.273521]  [<ffffffff8106025f>] __do_softirq+0xef/0x220
      [   70.337887]  [<ffffffff81447ebc>] call_softirq+0x1c/0x30
      
      This patch adds the !task->sc check and also protects the sc dereferencing
      under the session lock.
      Signed-off-by: NEddie Wai <eddie.wai@broadcom.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      a878185c
  3. 29 8月, 2011 1 次提交
  4. 27 8月, 2011 3 次提交
  5. 12 8月, 2011 1 次提交
  6. 11 8月, 2011 1 次提交
    • J
      broadcom: Move the Broadcom drivers · adfc5217
      Jeff Kirsher 提交于
      Moves the drivers for Broadcom devices into
      drivers/net/ethernet/broadcom/ and the necessary Kconfig and Makefile
      changes.
      
      CC: Eilon Greenstein <eilong@broadcom.com>
      CC: Michael Chan <mchan@broadcom.com>
      CC: Matt Carlson <mcarlson@broadcom.com>
      CC: Gary Zambrano <zambrano@broadcom.com>
      CC: "Maciej W. Rozycki" <macro@linux-mips.org>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      adfc5217
  7. 25 7月, 2011 2 次提交
  8. 22 7月, 2011 2 次提交
    • E
      [SCSI] bnx2i: Fixed kernel panic due to illegal usage of sc->request->cpu · 0d83ab65
      Eddie Wai 提交于
      A kernel panic was observed when passing the sc->request->cpu = -1 to
      retrieve the per_cpu variable pointer:
       #0 [ffff880011203960] machine_kexec at ffffffff81022bc3
       #1 [ffff8800112039b0] crash_kexec at ffffffff81088630
       #2 [ffff880011203a80] __die at ffffffff8139ea20
       #3 [ffff880011203aa0] no_context at ffffffff8102f3a7
       #4 [ffff880011203ae0] __bad_area_nosemaphore at ffffffff8102f665
       #5 [ffff880011203ba0] retint_signal at ffffffff8139dd1f
       #6 [ffff880011203cc8] bnx2i_indicate_kcqe at ffffffffa03dc4f2
       #7 [ffff880011203da8] service_kcqes at ffffffffa03cb04f
       #8 [ffff880011203e68] cnic_service_bnx2x_kcq at ffffffffa03cb14a
       #9 [ffff880011203e88] cnic_service_bnx2x_bh at ffffffffa03cb1b3
      
      The problem lies in the slow path sg_io (and perhaps sg_scsi_ioctl) call to
      blk_get_request->get_request/wait->blk_alloc_request->blk_rq_init which
      re-initializes the request->cpu to -1.  There is no assignment for cpu from
      that to the request_fn call to low level drivers.
      
      When this happens, the sc->request->cpu will be using the init value of
      -1.  This will create a kernel panic when it hits bnx2i because the code
      refers it to get the per_cpu variables ptr.
      
      This change is to put in a guard against that and also for cases when
      bio affinity/queue completion to the same cpu is not enabled.  In those
      cases, the request->cpu will remain a -1 also.
      
      This bug was created from commit:  b5cf6b63
      
      For the case when the blk layer did not setup the request->cpu, bnx2i
      will complete the sc with the current CPU of the thread.
      Signed-off-by: NEddie Wai <eddie.wai@broadcom.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      0d83ab65
    • M
      cnic: Add VLAN ID as a parameter during netevent upcall · 415199f2
      Michael Chan 提交于
      The bnx2fc driver needs to handle netdev events on VLAN devices.
      Signed-off-by: NMichael Chan <mchan@broadcom.com>
      Reviewed-by: NBhanu Prakash Gollapudi <bprakash@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      415199f2
  9. 30 6月, 2011 4 次提交
  10. 22 6月, 2011 1 次提交
  11. 15 6月, 2011 1 次提交
    • V
      New 7.0 FW: bnx2x, cnic, bnx2i, bnx2fc · 619c5cb6
      Vlad Zolotarov 提交于
      New FW/HSI (7.0):
       - Added support to 578xx chips
       - Improved HSI - much less driver's direct access to the FW internal
         memory needed.
      
      New implementation of the HSI handling layer in the bnx2x (bnx2x_sp.c):
       - Introduced chip dependent objects that have chip independent interfaces
         for configuration of MACs, multicast addresses, Rx mode, indirection table,
         fast path queues and function initialization/cleanup.
       - Objects functionality is based on the private function pointers, which
         allows not only a per-chip but also PF/VF differentiation while still
         preserving the same interface towards the driver.
       - Objects interface is not influenced by the HSI changes which do not require
         providing new parameters keeping the code outside the bnx2x_sp.c invariant
         with regard to such HSI chnages.
      
      Changes in a CNIC, bnx2fc and bnx2i modules due to the new HSI.
      Signed-off-by: NVladislav Zolotarov <vladz@broadcom.com>
      Signed-off-by: NMichael Chan <mchan@broadcom.com>
      Signed-off-by: NBhanu Prakash Gollapudi <bprakash@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@conan.davemloft.net>
      619c5cb6
  12. 25 5月, 2011 3 次提交
  13. 31 3月, 2011 1 次提交
  14. 25 2月, 2011 8 次提交
  15. 25 1月, 2011 1 次提交
  16. 24 12月, 2010 1 次提交
  17. 22 12月, 2010 8 次提交