1. 02 Jul, 2006 1 commit
  2. 30 Jun, 2006 7 commits
  3. 29 Jun, 2006 11 commits
  4. 28 Jun, 2006 7 commits
    • Randy Dunlap's avatar
      [SCSI] atp870u: reduce huge stack usage · dc6a78f1
      Randy Dunlap authored
      The atp870u driver is the largest stack eater reported by checkstack
      (on x86_864, allmodconfig).  This converts the offending function
      to kmalloc+kfree struct atp_unit instead of allocating it on the stack.
      0x0000164c atp870u_probe [atp870u]:			3176
      0x0000164c atp870u_probe [atp870u]:			408
      Signed-off-by: default avatarRandy Dunlap <rdunlap@xenotime.net>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    • Eric Moore's avatar
      [SCSI] mptsas: Adding 1078 ROC support · 87cf8986
      Eric Moore authored
      * Adding 1078 ROC (Raid On Chip) Support - New host adapter
      * Moving all PCI Vendor/Device ids to using internal defines; a request
      from Christoph/James B. some time ago for when the next chip was added.
      * Removing SAS 1066/1066E Vendor/Device IDs, as there are no plans to
      manufacture that controller.
      Signed-off-by: default avatarEric Moore <Eric.Moore@lsil.com>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    • Eric Moore's avatar
      [SCSI] mptsas: wide port support · 547f9a21
      Eric Moore authored
      * Wide port support added - using James Bottomley's new SAS wide port API.
      (There is a known problem in sas transport layer reported yesterday to
      James. The Kobject dev.bus_ids for end devices are not unique across
      expanders. I have added a work around in this patch, where I asigning
      an unique port identifier for every port within the host - this solves
      the problem, but I expect a fix from James in the sas transport).
      * Adding target_alloc and target_destroy entry points, and moving code over
      from the slave entry points.
      * The renaming of some mptscsih_xxx functions declared in mptsas.c,
      to mptsas_xxx.
      * Target Reset moved from slave_destroy to hotplug work thread
      handling (with regard to device removal). Also inhibit IO to end device
      while device is being broken down . Talked to James Smart about this
      at Linux Expo (with questions of how the fc transport handles this).
      * Cleaning up the kzalloc's, and kfree's
      Signed-off-by: default avatarEric Moore <Eric.Moore@lsil.com>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    • James Bottomley's avatar
      [SCSI] scsi_transport_sas: introduce a sas_port entity · 65c92b09
      James Bottomley authored
      this patch introduces a port object, separates out ports and phys,
      with ports becoming the primary objects of the tree.
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    • Eric Moore's avatar
      [SCSI] fusion : mpi header update · 2076eb6a
      Eric Moore authored
      MPI Header Update
      Signed-off-by: default avatarEric Moore <Eric.Moore@lsil.com>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    • Brian King's avatar
      [SCSI] scsi: Device scanning oops for offlined devices (resend) · 309bd271
      Brian King authored
      If a device gets offlined as a result of the Inquiry sent
      during scanning, the following oops can occur. After the
      disk gets put into the SDEV_OFFLINE state, the error handler
      sends back the failed inquiry, which wakes the thread doing
      the scan. This starts a race between the scanning thread
      freeing the scsi device and the error handler calling
      scsi_run_host_queues to restart the host. Since the disk
      is in the SDEV_OFFLINE state, scsi_device_get will still
      work, which results in __scsi_iterate_devices getting
      a reference to the scsi disk when it shouldn't.
      The following execution thread causes the oops:
      CPU 0 (scan)				CPU 1 (eh)
      The patch fixes this by changing the state of the sdev to SDEV_DEL
      before doing the final put_device, which should prevent the race
      from occurring.
      Original oops follows:
      Badness in kref_get at lib/kref.c:32
      Call Trace:
      [C00000002F4476D0] [C00000000000EE20] .show_stack+0x68/0x1b0 (unreliable)
      [C00000002F447770] [C00000000037515C] .program_check_exception+0x1cc/0x5a8
      [C00000002F447840] [C00000000000446C] program_check_common+0xec/0x100
       Exception: 700 at .kref_get+0x10/0x28
          LR = .kobject_get+0x20/0x3c
      [C00000002F447B30] [C00000002F447BC0] 0xc00000002f447bc0 (unreliable)
      [C00000002F447BB0] [C000000000254BDC] .get_device+0x20/0x3c
      [C00000002F447C30] [D000000000063188] .scsi_device_get+0x34/0xdc [scsi_mod]
      [C00000002F447CC0] [D0000000000633EC] .__scsi_iterate_devices+0x50/0xbc [scsi_mod]
      [C00000002F447D60] [D00000000006A910] .scsi_run_host_queues+0x34/0x5c [scsi_mod]
      [C00000002F447DF0] [D000000000069054] .scsi_error_handler+0xdb4/0xe44 [scsi_mod]
      [C00000002F447EE0] [C00000000007B4E0] .kthread+0x128/0x178
      [C00000002F447F90] [C000000000025E84] .kernel_thread+0x4c/0x68
      Unable to handle kernel paging request for <7>PCI: Enabling device: (0002:41:01.1), cmd 143
      data at address 0x000001b8
      Faulting instruction address: 0xd0000000000698e4
      sym1: <1010-66> rev 0x1 at pci 0002:41:01.1 irq 216
      sym1: No NVRAM, ID 7, Fast-80, LVD, parity checking
      sym1: SCSI BUS has been reset.
      scsi2 : sym-2.2.2
      cpu 0x0: Vector: 300 (Data Access) at [c00000002f447a30]
          pc: d0000000000698e4: .scsi_run_queue+0x2c/0x218 [scsi_mod]
          lr: d00000000006a904: .scsi_run_host_queues+0x28/0x5c [scsi_mod]
          sp: c00000002f447cb0
         msr: 9000000000009032
         dar: 1b8
       dsisr: 40000000
        current = 0xc0000000045fecd0
        paca    = 0xc00000000048ee80
          pid   = 1123, comm = scsi_eh_1
      enter ? for help
      [c00000002f447d60] d00000000006a904 .scsi_run_host_queues+0x28/0x5c [scsi_mod]
      [c00000002f447df0] d000000000069054 .scsi_error_handler+0xdb4/0xe44 [scsi_mod]
      [c00000002f447ee0] c00000000007b4e0 .kthread+0x128/0x178
      [c00000002f447f90] c000000000025e84 .kernel_thread+0x4c/0x68
      Signed-off-by: default avatarBrian King <brking@us.ibm.com>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    • Brian King's avatar
      [SCSI] scsi: Add allow_restart sysfs class attribute · a144c5ae
      Brian King authored
      This is a resend of a patch I generated in response to an email sent
      by Ruben Faelens <parasietje@gmail.com>. His original email to
      linux-scsi requested a method in which he could spin down a scsi disk
      when not in use and have the kernel automatically spin it back up when
      an I/O was generated to the disk. The infrastructure to automatically
      spin a disk up has been in the scsi error handler for some time now,
      but it is not enabled by default. This patch adds an sd sysfs attribute
      which allows userspace to enable this behavior.
      Signed-off-by: default avatarBrian King <brking@us.ibm.com>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
  5. 27 Jun, 2006 14 commits