1. 09 8月, 2016 1 次提交
  2. 13 7月, 2016 1 次提交
  3. 24 2月, 2016 2 次提交
  4. 10 4月, 2015 1 次提交
  5. 20 11月, 2013 1 次提交
  6. 04 7月, 2013 1 次提交
  7. 20 7月, 2012 1 次提交
  8. 09 1月, 2012 1 次提交
    • J
      drivers/scsi/aacraid/commctrl.c: fix mem leak in aac_send_raw_srb() · 7dd72f51
      Jesper Juhl 提交于
      We leak in drivers/scsi/aacraid/commctrl.c::aac_send_raw_srb() :
      
      We allocate memory:
      
      	...
      	struct user_sgmap* usg;
      	usg = kmalloc(actual_fibsize - sizeof(struct aac_srb)
      	  + sizeof(struct sgmap), GFP_KERNEL);
      
      and then neglect to free it:
      
      	...
      	for (i = 0; i < usg->count; i++) {
      		u64 addr;
      		void* p;
      		if (usg->sg[i].count >
      		    ((dev->adapter_info.options &
      		     AAC_OPT_NEW_COMM) ?
      		      (dev->scsi_host_ptr->max_sectors << 9) :
      		      65536)) {
      			rcode = -EINVAL;
      			goto cleanup;
      	... this 'goto' makes 'usg' go out of scope and leak the memory we
      	    allocated.
      
      Other exits properly kfree(usg), it's just here it is neglected.
      Signed-off-by: NJesper Juhl <jj@chaosbits.net>
      Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      7dd72f51
  9. 24 3月, 2011 1 次提交
    • M
      [SCSI] aacraid: Add new code for PMC-Sierra's SRC based controller family · e8b12f0f
      Mahesh Rajashekhara 提交于
      Added new hardware device 0x28b interface for PMC-Sierra's SRC based
      controller family.
      
      - new src.c file for 0x28b specific functions
      - new XPORT header required
      - sync. command interface: doorbell bits shifted (SRC_ODR_SHIFT, SRC_IDR_SHIFT)
      - async. Interface: different inbound queue handling, no outbound I2O
        queue available, using doorbell ("PmDoorBellResponseSent") and
        response buffer on the host ("host_rrq") for status
      - changed AIF (adapter initiated FIBs) interface: "DoorBellAifPending"
        bit to inform about pending AIF, "AifRequest" command to read AIF,
        "NoMoreAifDataAvailable" to mark the end of the AIFs
      Signed-off-by: NMahesh Rajashekhara <aacraid@pmc-sierra.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      e8b12f0f
  10. 17 9月, 2010 1 次提交
  11. 25 5月, 2010 1 次提交
  12. 18 1月, 2010 1 次提交
    • P
      [SCSI] aacraid: fix File System going into read-only mode · cacb6dc3
      These particular problems were reported by Cisco and SAP and customers
      as well. Cisco reported on RHEL4 U6 and SAP reported on SLES9 SP4 and
      SLES10 SP2. We added these fixes on RHEL4 U6 and gave a private build
      to IBM and Cisco. Cisco and IBM tested it for more than 15 days and
      they reported that they did not see the issue so far. Before the fix,
      Cisco used to see the issue within 5 days. We generated a patch for
      SLES9 SP4 and SLES10 SP2 and submitted to Novell. Novell applied the
      patch and gave a test build to SAP. SAP tested and reported that the
      build is working properly.
      
      We also tested in our lab using the tools "dishogsync", which is IO
      stress tool and the tool was provided by Cisco.
      
      Issue1:  File System going into read-only mode
      
      Root cause: The driver tends to not free the memory (FIB) when the
      management request exits prematurely. The accumulation of such
      un-freed memory causes the driver to fail to allocate anymore memory
      (FIB) and hence return 0x70000 value to the upper layer, which puts
      the file system into read only mode.
      
      Fix details: The fix makes sure to free the memory (FIB) even if the
      request exits prematurely hence ensuring the driver wouldn't run out
      of memory (FIBs).
      
      
      Issue2: False Raid Alert occurs
      
      When the Physical Drives and Logical drives are reported as deleted or
      added, even though there is no change done on the system
      
      Root cause: Driver IOCTLs is signaled with EINTR while waiting on
      response from the lower layers. Returning "EINTR" will never initiate
      internal retry.
      
      Fix details: The issue was fixed by replacing "EINTR" with
      "ERESTARTSYS" for mid-layer retries.
      Signed-off-by: NPenchala Narasimha Reddy <ServeRAIDDriver@hcl.in>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      cacb6dc3
  13. 30 12月, 2008 2 次提交
  14. 12 7月, 2008 1 次提交
    • M
      [SCSI] aacraid: prevent copy_from_user() BUG! · 09050715
      Mark Salyzyn 提交于
      Seen:
      
      	kernel BUG at arch/i386/lib/usercopy.c:872
      
      under a 2.6.18-8.el5 kernel. Traced it to a garbage-in/garbage-out
      ioctl condition in the aacraid driver.
      
      Adaptec's special ioctl scb passthrough needs to check the validity of
      the individual scatter gather count fields to the maximum the adapter
      supports. Doing so will have the side effect of preventing
      copy_from_user() from bugging out while populating the dma buffers.
      This is a hardening effort, issue was triggered by an errant version
      of the management tools and thus the BUG should not be seen in the
      field.
      
      [jejb: fixed up compile failure]
      Signed-off-by: NMark Salyzyn <aacraid@adaptec.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
      09050715
  15. 19 4月, 2008 1 次提交
  16. 08 2月, 2008 1 次提交
  17. 31 1月, 2008 1 次提交
  18. 25 1月, 2008 1 次提交
  19. 24 1月, 2008 2 次提交
  20. 29 10月, 2007 1 次提交
    • A
      fix abuses of ptrdiff_t · 142956af
      Al Viro 提交于
      Use of ptrdiff_t in places like
      
      -                       if (!access_ok(VERIFY_WRITE, u_tmp->rx_buf, u_tmp->len))
      +                       if (!access_ok(VERIFY_WRITE, (u8 __user *)
      +                                               (ptrdiff_t) u_tmp->rx_buf,
      +                                               u_tmp->len))
      
      is wrong; for one thing, it's a bad C (it's what uintptr_t is for; in general
      we are not even promised that ptrdiff_t is large enough to hold a pointer,
      just enough to hold a difference between two pointers within the same object).
      For another, it confuses the fsck out of sparse.
      
      Use unsigned long or uintptr_t instead.  There are several places misusing
      ptrdiff_t; fixed.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      142956af
  21. 01 4月, 2007 1 次提交
  22. 20 3月, 2007 3 次提交
    • M
      [SCSI] aacraid: fix srb ioctl for 64 bits · f2b1a06a
      Mark Haverkamp 提交于
      Received from Mark Salyzyn,
      
      The raw srb ioctl is supposed to be able to take packets with 32 and 64 bit
      virtual address SG elements, it did not handle the frames with 64 bit SG
      elements well when communicating with 64 bit DMA capable adapters, and it did
      not handle the 32 bit limited DMA adapters at all.  The enclosed patch now
      handles all four quadrants (32 bit / 64 bit SG elements in SRB requests + 32
      bit or 64 bit DMA capable adapters)
      
      This fix is required before Java based management applications in a 64 bit user
      space can submit raw srb requests to the array physical components via the
      ioctl mechanism, the allocated user memory pool on 64 bit machines under this
      environment forced the management software's hands to submit 64 bit user space
      virtual address SG elements in via the ioctl.
      Signed-off-by: NMark Haverkamp <markh@linux-foundation.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      f2b1a06a
    • M
      [SCSI] aacraid: Fix ioctl handling when adapter resets · 33bb3b29
      Mark Haverkamp 提交于
      Received from Mark Salyzyn,
      
      Outstanding ioctl calls still have some problems with aborting cleanly
      in the face of a reset iop recovery action should the adapter ever enter
      into a Firmware Assert (BlinkLED) condition. The enclosed patch resolves
      some uncovered flawed handling.
      Signed-off-by: NMark Haverkamp <markh@linux-foundation.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      33bb3b29
    • M
      [SCSI] aacraid: Fix struct element name issue · a8166a52
      Mark Haverkamp 提交于
      Received from Mark Salyzyn,
      
      This patch is to resolve a namespace issue that will result from a patch
      expected in the future that adds a new interface; rationalized as
      correcting a long term issue where hw_fib, instead of hw_fib_va, refers
      to the virtual address space and hw_fib_pa refers to the physical
      address space. A small fragment of this patch also cleans up an unused
      variable that was close to the patch fragments.
      Signed-off-by: NMark Haverkamp <markh@linux-foundation.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      a8166a52
  23. 15 2月, 2007 1 次提交
    • T
      [PATCH] remove many unneeded #includes of sched.h · cd354f1a
      Tim Schmielau 提交于
      After Al Viro (finally) succeeded in removing the sched.h #include in module.h
      recently, it makes sense again to remove other superfluous sched.h includes.
      There are quite a lot of files which include it but don't actually need
      anything defined in there.  Presumably these includes were once needed for
      macros that used to live in sched.h, but moved to other header files in the
      course of cleaning it up.
      
      To ease the pain, this time I did not fiddle with any header files and only
      removed #includes from .c-files, which tend to cause less trouble.
      
      Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
      arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
      allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
      configs in arch/arm/configs on arm.  I also checked that no new warnings were
      introduced by the patch (actually, some warnings are removed that were emitted
      by unnecessarily included header files).
      Signed-off-by: NTim Schmielau <tim@physik3.uni-rostock.de>
      Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      cd354f1a
  24. 20 8月, 2006 2 次提交
  25. 10 6月, 2006 1 次提交
  26. 13 4月, 2006 1 次提交
  27. 05 2月, 2006 1 次提交
  28. 13 1月, 2006 1 次提交
  29. 29 10月, 2005 2 次提交
  30. 06 8月, 2005 2 次提交
    • M
      [SCSI] aacraid: aif registration timeout fix · 12a26d08
      Mark Haverkamp 提交于
      Received from Mark Salyzyn from Adaptec:
      
      If the Adapter is quiet and does not produce an AIF event packets to be
      picked up by the management applications for longer than the timeout
      interval of two minutes, the cleanup code that deals with aging out
      registrants could erroneously drop the registration. The timeout is
      there to clean up should the management application die and fail to poll
      for updated AIF event packets.
      
      Moving the timer update from the ioctl code that delivers an AIF to the
      polling registrant to the bottom of the ioctl means the timeout is reset
      with any management application polling activity regardless if an AIF is
      delivered or not removing the erroneous timeout cleanups.
      Signed-off-by: NMark Haverkamp <markh@osdl.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      12a26d08
    • M
      [SCSI] aacraid: driver version update · c7f47602
      Mark Haverkamp 提交于
      Received from Mark Salyzyn from Adaptec.
      
      Fixes a bug in check_revision.  It should return the driver version not
      the firmware version.
      Update driver version number.
      Update driver version string.
      Signed-off-by: NMark Haverkamp <markh@osdl.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      c7f47602
  31. 14 7月, 2005 1 次提交
  32. 13 7月, 2005 1 次提交