04 Aug, 2007

6 commits

  • What Reset code was doing: Save command's important/dangerous
    Info on stack. NULL those members from scsi_cmnd.
    Issue a Reset. wait for it to finish than restore members
    and return.

    What I do is save or NULL nothing. But use the "resetting"
    hint in aha152x_internal_queue() to NULL out working members
    and leave struct scsi_cmnd alone.

    The indent here looks funny but it will change/drop in last
    patch and it is clear this way what changed.

    Signed-off-by: James Bottomley

    Boaz Harrosh
     
  • hunk by hunk:
    - CHECK_CONDITION is what happens to cmnd->status >> 1
    or after status_byte() macro. But here it is used
    directly on status which means 0x1 which is an undefined
    bit in the standard. And is a status that will never
    return from a target.

    - in busfree_run at the DONE_SC phase we have 3 distinct
    operation:
    1-if(DONE_SC->SCp.phase & check_condition)
    The REQUEST_SENSE command return.
    - Restore original command
    - Than continue to operation 3.
    2-if(DONE_SC->SCp.Status==SAM_STAT_CHECK_CONDITION)
    A regular command returned with a status.
    - Internally re-Q a REQUEST_SENSE.
    - Do not do operation 3.
    3-
    - Complete the command and return it to scsi-ml
    So the 0x2 in both these operations (1,2) means the scsi
    check-condition status, hence SAM_STAT_CHECK_CONDITION

    - Here the code asks about !(DONE_SC->SCp.Status & not_issued)
    but "not_issued" is an enum belonging to the "phase" member
    and not to the Status returned from target. The reason this
    works is because not_issued==1 and Also CHECK_CONDITION==1
    (remember from hunk 1). So actually the code was asking
    !(DONE_SC->SCp.Status & CHECK_CONDITION). Which means
    "Has the status been read from target yet?"
    Staus is read at status_run(). "not_issued" is
    cleared in seldo_run() which is usually earlier than
    status_run().

    So this patch does nothing as far as assembly is concerned
    but it does let the reader understand what is going on.

    Signed-off-by: Boaz Harrosh
    Signed-off-by: James Bottomley

    Boaz Harrosh
     
  • Cause highmem buffers to be bounced to low memory until this
    driver supports highmem addresses. Otherwise it just oopses
    on NULL buffer addresses.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Boaz Harrosh
    Signed-off-by: James Bottomley

    Boaz Harrosh
     
  • The symbol conflicts with the rather global one in
    include/linux/locks.h.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Boaz Harrosh
    Signed-off-by: James Bottomley

    Boaz Harrosh
     
  • Our current implementation has a generic set of barrier functions that
    go through the SCSI driver model. Realistically, this is unnecessary,
    because the only device that can use barriers (sd) can set the flush
    functions up at probe or revalidate time. This patch pulls the barrier
    functions out of the mid layer and scsi driver model and relocates them
    directly in sd.

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

    James Bottomley
     
  • It was pointed out by Boaz Harrosh that our
    8.2.2 lpfc patches revert a change to using SCSI command accessor
    functions.

    This patch, to be applied on top of the 8.2.2. patches, updates the
    driver for the accessor functions.

    Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     

02 Aug, 2007

9 commits

  • Change a printk sequencing issue where ... was coming up in the middle
    of a line when scsi_add_host was being called.
    Reduce the length of some printk messages and make the messages
    more consistant. All cosmetic but it makes it easier to read as it
    scrolles off the screen during boot.

    Signed-off-by: Mark Fortescue
    Acked-by: David S. Miller
    Signed-off-by: James Bottomley

    Mark
     
  • Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     
  • - Clean up all instances of mixed tab-space indentation
    - Clean up sparse build errors
    - Add appropriate static's

    Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     
  • - Fix vport ndlp ref counting errors
    - Fix use after free of ndlp structure
    - Use the correct flag to check for LOADING setting.
    - Fix driver unload bugs (related to shost references) after link down or rscn
    - Fix up HBQ initialization
    - Fix port_list locking around driver unload.
    - Fix references to hostdata as a phba
    - Fix GFFID type offset to work correctly with big endian structure.
    - Only call pci_disable_msi if the pci_enable_msi succeeded
    - Fix vport_delete wait/fail if in discovery
    - Put a reference on the nameservers ndlp when performing CT traffic.
    - Remove unbalanced hba unlock.
    - Fix up HBQ processing
    - Fix lpfc debugfs discovery trace output for ELS rsp cmpl
    - Send ADISC when rpi is 0
    - Stop FDISC retrying forever
    - Unable to retrieve correct config parameter for vport
    - Fix sli_validate_fcp_iocb, sli_sum_iocb, sli_abort_iocb to be vport-aware.
    - Fix index-out-of-range error in iocb. Spotted by Coverity.

    Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     
  • - Remove the "management_version" sysfs parameter (was unused)
    - Add HBQ information to lpfc debugfs
    - Change lpfc_npiv_enable name back to lpfc_enable_npiv (internal stds)
    - Remove "issue_lip" attribute from the vports transport template

    Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     
  • Rework the lpfc_printf_log() macro so that logging is enabled on a
    per-vport basis. Used to be on a physical-port basis, thus logging
    with large numbers of vports became a mess. Required redefinition of
    the macro, and an update of every use.

    Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     
  • - Split attributes up into vport and non-vport attributes.
    - Move vport specific cfg params to vport

    Many of the vport-specific behaviors were still global attributes
    on the physical port. Move them to the vport itself.

    Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     
  • Cleans up a lot of bad behaviors that have been in this area a while

    Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     
  • Error messages and debugfs updates:
    - Fix up GID_FT error messages
    - Enhance debugfs with slow_ring_trace, dumpslim and nodelist information
    - Add log type (and messages) for vport state changes
    - Enhance log messages when retries ELS fail

    Signed-off-by: James Smart
    Signed-off-by: James Bottomley

    James Smart
     

01 Aug, 2007

2 commits


31 Jul, 2007

23 commits

  • This reverts d73f5222a618a91452d41c29f5996ce3d9c63673

    The bug that made us increase ESP_BUS_TIMEOUT to 275 turned out to be
    a memset bug on 32-bit sparc.

    It is better to put this back at the correct timeout value than to
    leave it increased when there is no reason for doing so.

    Signed-off-by: David S. Miller
    Signed-off-by: James Bottomley

    David Miller
     
  • - Delete refereces to HOSTS_C
    - Switch to module_init/module_exit instead of detect/release
    - Don't pass around the host template and rename it to adpt_template
    - Switch from scsi_register/scsi_unregister to scsi_host_alloc,
    scsi_add_host, scsi_scan_host and scsi_host_put.

    Signed-off-by: Matthew Wilcox
    Acked-by: "Salyzyn, Mark"
    Signed-off-by: James Bottomley

    Matthew Wilcox
     
  • - this patch will fix a panic caused by omitted memory allocation for the nvram.

    Signed-off-by: Seokmann Ju
    Signed-off-by: James Bottomley

    Seokmann Ju
     
  • Not doing this can cause cards less than u160 capable to send out PPR
    offers to devices they can't then deliver on ... causing some devices to
    get a bit confused. Fix by capping the start syncrate at the
    appropriate level according to the card capabilities.

    Signed-off-by: James Bottomley

    James Bottomley
     
  • The SCSI Tape driver uses a semaphore as mutex. Use the mutex API
    instead of the (binary) semaphore.

    Signed-off-by: Matthias Kaehlcke
    Acked-by: Kai Makisara
    Signed-off-by: James Bottomley

    Matthias Kaehlcke
     
  • This updates sg_io_v4 structure (based on Doug's RFC, release 1.3).

    The major changes are:

    - add dout_resid field
    - increase tag size to 64 bits to comply with SAM-4 and SRP
    - add dout_iovec_count and din_iovec_count

    dout_iovec_count and din_iovec_count aren't supported now. I'm not
    sure whether they will be supported or not but they were added for the
    possible future changes.

    Signed-off-by: FUJITA Tomonori
    Signed-off-by: James Bottomley

    FUJITA Tomonori
     
  • Wire up the mpt_debug_level module parameter so you can write to the
    /sys/module/mptbase/parameters/mpt_debug_level and have it take effect
    in every ioc.

    Acked-by: "Moore, Eric"
    Signed-off-by: James Bottomley

    James Bottomley
     
  • If you have the libsas with ATA support, it needs libata to function.
    The problem is that if you compile in libsas, you can't build libata
    as a module (however, vice versa you can).

    Signed-off-by: James Bottomley

    James Bottomley
     
  • This patch

    * removes struct members that duplicate pci_dev members
    * replaces ha->stype usage with ha->pdev->device usage where feasible

    Signed-off-by: Jeff Garzik
    Acked-by: Christoph Hellwig
    Acked-by: Achim Leubner
    Signed-off-by: James Bottomley

    Jeff Garzik
     
  • Signed-off-by: FUJITA Tomonori
    Acked-by: Brian King
    Signed-off-by: James Bottomley

    FUJITA Tomonori
     
  • No need to check use_sg since sg_tablesize is set appropriately in the
    scsi host template.

    Brian King's patch (2a7309372fe56ae46c499b772d811ad31c501dd9) did this
    cleanup but the data buffer accessors patch (written before the patch
    and merged after it) restored the check.

    Signed-off-by: FUJITA Tomonori
    Acked-by: Brian King
    Signed-off-by: James Bottomley

    FUJITA Tomonori
     
  • - remove the unnecessary map_single path.

    - convert to use the new accessors for the sg lists and the
    parameters.

    Signed-off-by: FUJITA Tomonori
    Acked-by: Swen Schillig
    Signed-off-by: James Bottomley

    FUJITA Tomonori
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6.23:
    sh: Fix fs.h removal from mm.h regressions.
    sh: fix get_wchan() for SH kernels without framepointers
    sh: arch/sh/boot - fix shell usage
    rtc: rtc-sh: Correct sh_rtc_set_time() for some SH-3 parts.
    sh: remove support for sh7300 and solution engine 7300
    sh: Add sh to the CC_OPTIMIZE_FOR_SIZE dependencies.
    sh: Kill off virt_to_bus()/bus_to_virt().
    sh: sh-sci - fix SH7708 support
    sh: Restrict DSP support to specific CPUs.
    sh: Silence sq compile warning on sh4 nommu.
    sh: Kill the rest of the SE73180 cruft.
    sh: remove support for sh73180 and solution engine 73180
    sh: remove old broken pint code
    sh: Reclaim beginning of P3 space for vmalloc area.
    sh: Fix Dreamcast DMA issues.
    sh: Add kmap_coherent()/kunmap_coherent() interface for SH-4.

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6:
    sh64: Kill off virt_to_bus()/bus_to_virt().
    sh64: Fix irq_intc build failure.
    sh64: Fix fs.h removal from mm.h regressions.

    Linus Torvalds
     
  • Follows the SH change.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Needs interrupt.h:

    CC arch/sh64/kernel/irq_intc.o
    arch/sh64/kernel/irq_intc.c: In function 'make_intc_irq':
    arch/sh64/kernel/irq_intc.c:179: error: implicit declaration of function 'disable_irq_nosync'
    make[1]: *** [arch/sh64/kernel/irq_intc.o] Error 1

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Signed-off-by: Paul Mundt

    Paul Mundt
     
  • * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
    Fix a potential NULL pointer dereference in mace_interrupt() in drivers/net/pcmcia/nmclan_cs.c
    PATCH kernel 2.6.22] PCMCIA-NETDEV : modify smc91c92_cs.c to become SMP safe
    S2io: Increment received packet count correctly
    S2io: Fix crash when resetting adapter
    S2io: Mask spurious interrupts
    S2IO: Implementing review comments from old patches
    S2IO: Checking for the return value of pci map function
    S2IO: Removing MSI support from driver
    S2IO: Removing 3 buffer mode support from the driver
    netxen: drop redudant spinlock
    netxen: Fix interrupt handling for multiport adapters
    netxen: re-init station address after h/w init
    tulip: Remove tulip maintainer
    forcedeth: mac address correct
    gfar: Fix modpost warning
    lib8390: comment on locking by Alan Cox
    Fix a potential NULL pointer dereference in write_bulk_callback() in drivers/net/usb/pegasus.c

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
    IB/ipath: Workaround problem of errormask register being overwritten
    IB/ipath: Fix some issues with buffer cancel and sendctrl register update
    IB/ipath: Use faster put_tid_2 routine after initialization
    IB/ipath: Remove unsafe fastrcvint code from interrupt handler
    IB/ehca: Move extern declarations from .c files to .h files
    IB/mlx4: Whitespace fix
    IB/ehca: Fix include order to better match kernel style
    mlx4_core: Remove kfree() in mlx4_mr_alloc() error flow
    RDMA/amso1100: Initialize the wait_queue_head_t in the c2_qp structure

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6:
    modules: better error messages when modules fail to load due to a sysfs problem.
    kobject: update documentation
    kset: kernel-doc cleanups
    driver core: revert "device" link creation check
    stable_api_nonsense.txt: Disambiguate the use of "this" by using "that" to refer to the syscall interface
    Fix Doc/sysfs-rules typos
    kernel-doc fixes for PCI and drivers/base/
    kobject: put kobject_actions in kobject.h
    kobject: fix link error when CONFIG_HOTPLUG is disabled
    HOWTO: sync Japanese HOWTO
    HOWTO: adjust translation header of Japanese stable_api_nonsense.txt

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6:
    USB: "sparse" cleanups for usb gadgets
    usb-serial: Fix edgeport regression on non-EPiC devices
    USB: more pxa2xx_udc dead code removal
    USB: NIKON D50 is an unusual device
    USB: drivers/usb/serial/sierra.c: make 3 functions static
    USB: fix BUG: sleeping function called from invalid context at /home/jeremy/hg/xen/paravirt/linux/drivers/usb/core/urb.c:524, in_atomic():1, irqs_disabled():0
    USB: mct_u232: Convert to proper speed handling API
    digi_acceleport: Drag the driver kicking and screaming into coding style
    cp2101: Remove broken termios optimisation, use proper speed API
    USB: Fix a bug in usb_start_wait_urb
    USB: fix scatterlist PIO case (IOMMU)
    USB: fix usb_serial_suspend(): buggy code
    USB: yet another quirky device
    USB: Add CanonScan LiDE30 to the quirk list
    USB: even more quirks
    USB: usb.h kernel-doc additions
    USB: more quirky devices
    USB: Don't let usb-storage steal Blackberry Pearl
    USB: devices misc: Trivial patch to build the IOWARRIOR when it is selected in Kconfig

    Linus Torvalds
     
  • This helps people when debugging problems like the ones that were in the
    recent -mm releases.

    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman