19 Apr, 2005

23 commits

  • On Tue, 2005-03-15 at 09:25 +0100, Hannes Reinecke wrote:
    > The current implementation of the firmware class breaks a fundamental
    > assumption in udevd: that the physical device can be initialised fully
    > prior to executing the next event for that device.

    Here we add a TIMEOUT value to the hotplug environment of the firmware
    requesting event. I will adapt udevd not to wait for anything else, if
    it finds a TIMEOUT key.

    Signed-off-by: Kay Sievers
    Signed-off-by: Greg Kroah-Hartman

    kay.sievers@vrfy.org
     
  • Now that we export all the parameters, this is easy to do.
    It also means that we can dump about 2000 lines of code that
    were dedicated to doing this internally.

    Additionally, this removes all the aic7xxx driver abuse
    of SCSI timers which were embedded in the DV routines.

    Signed-off-by: James Bottomley

     
  • This is just a simplistic patch to export all of the
    aic7xxx internal transport parameters via the SPI
    transport class. It doesn't actually alter the way the
    driver works at all.

    Signed-off-by: James Bottomley

     
  • CC [M] drivers/scsi/qla2xxx/qla_attr.o
    drivers/scsi/qla2xxx/qla_attr.c: In function `qla2x00_sysfs_write_fw_dump':
    drivers/scsi/qla2xxx/qla_attr.c:65: warning: implicit declaration of function `vfree'
    drivers/scsi/qla2xxx/qla_attr.c:83: warning: implicit declaration of function `vmalloc'
    drivers/scsi/qla2xxx/qla_attr.c:83: warning: cast to pointer from integer of different size

    Also remove spurious inclusion of linux/version.h

    Signed-off-by: James Bottomley

     
  • From: James.Smart@Emulex.Com

    Modified for kernel import and
    Signed-off-by: James Bottomley

     
  • This patch contains the following cleanups:
    - make some needlessly global functions static
    - remove one more kernel 2.2 #ifdef

    Signed-off-by: Adrian Bunk
    Signed-off-by: James Bottomley

     
  • these have been wrappers for the generic dma direction bits since 2.5.x.
    This patch converts the few remaining drivers and removes the macros.

    Arjan noticed there's some hunk in here that shouldn't. Updated patch
    below:

    Signed-off-by: James Bottomley

     
  • Signed-off-by: Andrew Vasquez
    Signed-off-by: James Bottomley

     
  • Remove /proc support.

    Signed-off-by: Andrew Vasquez
    Signed-off-by: James Bottomley

     
  • Don't use cmd->request->nr_hw_segments as it may not be initialized
    (SG_IO in particular bypasses anything that initializes this and just
    uses scsi_do_req to insert a scsi_request directly on the head of the
    queue) and a bogus value here can trip up the checks to make sure that
    the number of segments will fit in the queue ring buffer, resulting in
    commands that are never completed.

    Fix up several issues with PCI DMA mapping and failure to check return
    values on the mappings.

    Make the check for space in the ring buffer happen after the DMA mapping
    is done since any checks done before the mapping has taken place are
    bogus.

    Doug Ledford .

    Signed-off-by: Andrew Vasquez
    Signed-off-by: James Bottomley

     
  • Remove internal lun discovery routines and support
    structures.

    Signed-off-by: Andrew Vasquez
    Signed-off-by: James Bottomley

     
  • Add initial support for FC remote port infrastructure.

    o Use fc_remote_port...() registration and block/unlock
    functions.
    o Consolidate 'attribute' (fc-remote/sysfs) helpers into
    new qla_attr.c file.

    Signed-off-by: Andrew Vasquez
    Signed-off-by: James Bottomley

     
  • Remove internal command queuing from the driver. As is, this
    driver cannot tolerate cable-pulls as I/Os will begin to fail
    by the upper layers.

    o Should be used in conjuction with the
    11-fc_rport_adds_2.diff patch.
    o Removes qla_listops.h file -- no longer needed.

    Signed-off-by: Andrew Vasquez
    Signed-off-by: James Bottomley

     
  • James Bottomley
     
  • This patch makes scsi_send_eh_cmnd() use sdev and shost instead of
    referencing them through scmd-> everytime.

    Signed-off-by: Tejun Heo
    Signed-off-by: James Bottomley

     
  • We have a DID_IMM_RETRY to require a retry at once, but we could do with
    a DID_REQUEUE to instruct the mid-layer to treat this command in the
    same manner as QUEUE_FULL or BUSY (i.e. halt the submission until
    another command returns ... or the queue pressure builds if there are no
    outstanding commands).

    Signed-off-by: James Bottomley

     
  • From: Andreas Herrmann

    This patch mainly introduces support for point-2-point
    topology.

    From: Heiko Carstens
    From: Maxim Shchetynin
    From: Andreas Herrmann
    Signed-off-by: James Bottomley

     
  • Also broken design in its compat handlers - CONFIG_COMPAT doesn't
    mean that there should be no native ioctls.

    Signed-off-by: Andi Kleen

    Reworked with comments from Markus Lidel by:
    Christoph Hellwig

    Rejections fixed and
    Signed-off-by: James Bottomley

     
  • Fix up two drivers that incorrectly were using the old return values for
    their new-style EH methods and kill off scsi_obsolete.h that defined the
    constants. The initio driver has all these constansts defined locally
    and uses them internally, I'll fix that up some time later.

    Signed-off-by: James Bottomley

     
  • scsi_cmnd->serial_number_at_timeout doesn't serve any purpose
    anymore. All serial_number == serial_number_at_timeout tests
    are always true in abort callbacks. Kill the field. Also, as
    ->pid always equals ->serial_number and ->serial_number
    doesn't have any special meaning anymore, update comments
    above ->serial_number accordingly. Once we remove all uses of
    this field from all lldd's, this field should go.

    Signed-off-by: Tejun Heo
    Signed-off-by: James Bottomley

     
  • scsi_cmnd->internal_timeout field doesn't have any meaning
    anymore. Kill the field.

    Signed-off-by: Tejun Heo
    Signed-off-by: James Bottomley

     
  • We have the scsi_print_* functions in the proper namespace for a long
    time now and there weren't a lot users left.

    Signed-off-by: James Bottomley

     
  • Adapted from a patch in SuSE's kernel SRPM.

    Signed-off-by: James Bottomley

     

17 Apr, 2005

17 commits

  • - add a comment to the device structure that the device_busy field
    is now protected by the request_queue->queue_lock
    - null out sdev->request_queue after the queue is released to trap
    any (and there shouldn't be any) use after the queue is freed.

    Signed-off-by: James Bottomley

     
  • The current problem seen is that the queue lock is actually in the
    SCSI device structure, so when that structure is freed on device
    release, we go boom if the queue tries to access the lock again.

    The fix here is to move the lock from the scsi_device to the queue.

    Signed-off-by: James Bottomley

     
  • This driver has had it's own different infrastructure for doing this for
    ages, but it's time it used the common one.

    Signed-off-by: James Bottomley

     
  • Signed-off-by: Andreas Herrmann
    Signed-off-by: James Bottomley

     
  • The attachment combines the most recent patch from
    Yum Rayan (to reduce sg stack
    usage), Adrian Bunk (to fix check
    after use) and me (fix elapsed time calculation
    (duration) on ia64 machines).

    I have modified the patch from Yum Rayan so kmalloc()
    in sg_read() is only called for the (rare) code paths
    that need them.

    Changelog:
    - reduce stack usage in sg_ioctl() and sg_read()
    - fix check after use in sg_mmap()
    - hold duration internally in milliseconds and
    check current time later than held time

    Signed-off-by: Douglas Gilbert
    Signed-off-by: James Bottomley

     
  • The conditions that cause these calls to MD_BUG are not kernel bugs, just
    oddities in what userspace is asking for.

    Also convert analyze_sbs to return void, and the value it returned was
    always 0.

    Signed-off-by: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    NeilBrown
     
  • There is a tiny race when de-registering an MD thread, in that the thread
    could disappear before it is set a SIGKILL, causing send_sig to have
    problems.

    This is most easily closed by holding tasklist_lock between enabling the
    thread to exit (setting ->run to NULL) and telling it to exit.

    (akpm: ick. Needs to use kthread API and stop using signals)

    Signed-off-by: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    NeilBrown
     
  • Fix the formatting of some comments in 8250.c, and add a note that the
    register_serial / unregister_serial shouldn't be used in new code.

    We do this here in preference to adding to linux/serial.h, since that is used
    by a number of non-8250 drivers which pretend to be 8250. It is not known
    whether it would be appropriate to do so.

    Signed-off-by: Russell King

    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Russell King
     
  • Correct unwinding in error path of mthca_init_icm().

    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roland Dreier
     
  • Decouple table of HCA features from exact HCA device type. Add a current FW
    version field so we can warn when someone is using old FW. Add support for
    new MT25204 HCA.

    Remove the warning about mem-free support, since it should be pretty solid at
    this point.

    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roland Dreier
     
  • Fix RDMA in mem-free mode: we need to make sure that the RDMA context memory
    is mapped for the HCA.

    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roland Dreier
     
  • Update initialization of receive queue to match new documentation. This
    change is required to support new MT25204 HCA.

    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roland Dreier
     
  • Clean up mem-free mode support by introducing mthca_is_memfree() function,
    which encapsulates the logic of deciding if a device is mem-free.

    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roland Dreier
     
  • Minor tweaks to firmware command handling: kill off an unused get of a value,
    and add a little more info to debug output.

    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roland Dreier
     
  • Implement fast memory regions (FMRs), where the driver writes directly into
    the HCA's translation tables rather than requiring a firmware command. For
    Tavor, MTTs for FMR are separate from regular MTTs, and are reserved at driver
    initialization. This is done to limit the amount of virtual memory needed to
    map the MTTs. For Arbel, there's no such limitation, and all MTTs and MPTs
    may be used for FMR or for regular MR.

    Signed-off-by: Michael S. Tsirkin
    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael S. Tsirkin
     
  • Split Tavor and Arbel/mem-free indexhw key munging routines, so that FMR
    implementation can call correct implementation without testing HCA type (which
    it already knows).

    Signed-off-by: Michael S. Tsirkin
    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael S. Tsirkin
     
  • Add mthca_table_find() function, which returns the lowmem address of an entry
    in a mem-free HCA's context tables. This will be used by the FMR
    implementation.

    Signed-off-by: Michael S. Tsirkin
    Signed-off-by: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael S. Tsirkin