29 Apr, 2008

1 commit

  • drivers/scsi/aic7xxx/aic7770_osm.c:53:58: warning: Using plain integer as NULL pointer
    drivers/scsi/aic7xxx/aic7xxx_osm_pci.c:355:47: warning: Using plain integer as NULL pointer
    drivers/scsi/aic7xxx/aic7xxx_osm_pci.c:372:55: warning: Using plain integer as NULL pointer
    drivers/scsi/aha152x.c:997:28: warning: Using plain integer as NULL pointer
    drivers/scsi/aha152x.c:1003:28: warning: Using plain integer as NULL pointer
    drivers/scsi/aha152x.c:1165:46: warning: Using plain integer as NULL pointer
    drivers/scsi/fdomain.c:1446:40: warning: Using plain integer as NULL pointer
    drivers/scsi/sym53c8xx_2/sym_hipd.c:1650:51: warning: Using plain integer as NULL pointer
    drivers/scsi/sym53c8xx_2/sym_hipd.c:3171:42: warning: Using plain integer as NULL pointer
    drivers/scsi/sym53c8xx_2/sym_hipd.c:5732:52: warning: Using plain integer as NULL pointer
    drivers/scsi/ncr53c8xx.c:8189:31: warning: Using plain integer as NULL pointer
    drivers/scsi/ncr53c8xx.c:8225:34: warning: Using plain integer as NULL pointer
    drivers/scsi/dpt_i2o.c:156:32: warning: Using plain integer as NULL pointer
    drivers/scsi/ultrastor.c:954:42: warning: Using plain integer as NULL pointer
    drivers/scsi/ultrastor.c:1104:18: warning: Using plain integer as NULL pointer

    Signed-off-by: Harvey Harrison
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     

28 Apr, 2008

5 commits


24 Apr, 2008

3 commits

  • The driver stores the PCI resource address into 'u_long' variable before
    calling ioremap_nocache() on it. This warrants kernel oops when the registers
    are accessed on PPC 44x platforms which (being 32-bit) have PCI memory space
    mapped beyond 4 GB.

    The arch/ppc/ kernel has a fixup in ioremap() that helps create an illusion
    that the PCI memory resources are mapped below 4 GB, but arch/powerpc/ code
    got rid of this trick, having instead CONFIG_RESOURCES_64BIT enabled.

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: James Bottomley

    Sergei Shtylyov
     
  • The driver stores the PCI resource address into 'u_long' variable before
    calling ioremap_nocache() on it. This warrants kernel oops when the registers
    are accessed on PPC 44x platforms which (being 32-bit) have PCI memory space
    mapped beyond 4 GB.

    The arch/ppc/ kernel has a fixup in ioremap() that helps create an illusion
    that the PCI memory resources are mapped below 4 GB, but arch/powerpc/ code
    got rid of this trick, having instead CONFIG_RESOURCES_64BIT enabled.

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: James Bottomley

    Sergei Shtylyov
     
  • Deinlines and moves big functions from .h to .c files.
    Adds prototypes for ahc_lookup_scb and ahd_lookup_scb to .h files.

    Signed-off-by: Denys Vlasenko
    Signed-off-by: James Bottomley

    Denys Vlasenko
     

08 Apr, 2008

3 commits


24 Feb, 2008

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: (25 commits)
    [SCSI] qlogicpt: section fixes
    [SCSI] mvsas: convert from rough draft to working driver
    [SCSI] mvsas: Add Marvell 6440 SAS/SATA driver
    [SCSI] libsas: correctly flush the LU queue on error recovery
    [SCSI] aic94xx: fix sequencer hang on error recovery
    [SCSI] st: compile fix when DEBUG set to one
    [SCSI] stex: stex_internal_copy should be called with sg_count in struct st_ccb
    [SCSI] stex: stex_direct_copy shouldn't call dma_map_sg
    [SCSI] lpfc: Balance locking
    [SCSI] qla4xxx: fix up residual handling
    [SCSI] libsas: fix error handling
    [SCSI] arcmsr: fix message allocation
    [SCSI] mptbase: fix use-after-free's
    [SCSI] iscsi transport: make 2 functions static
    [SCSI] lpfc: make lpfc_disable_node() static
    [SCSI] ips: fix data buffer accessors conversion bug
    [SCSI] gdth: don't call pci_free_consistent under spinlock
    [SCSI] qla2xxx: fix compile warning for printk format
    [SCSI] aic7xx: mitigate HOST_MSG_LOOP invalid SCB ff panic
    [SCSI] scsi_debug: disable clustering
    ...

    Linus Torvalds
     
  • During the last step of hibernation in the "platform" mode (with the
    help of ACPI) we use the suspend code, including the devices'
    ->suspend() methods, to prepare the system for entering the ACPI S4
    system sleep state.

    But at least for some devices the operations performed by the
    ->suspend() callback in that case must be different from its operations
    during regular suspend.

    For this reason, introduce the new PM event type PM_EVENT_HIBERNATE and
    pass it to the device drivers' ->suspend() methods during the last phase
    of hibernation, so that they can distinguish this case and handle it as
    appropriate. Modify the drivers that handle PM_EVENT_SUSPEND in a
    special way and need to handle PM_EVENT_HIBERNATE in the same way.

    These changes are necessary to fix a hibernation regression related
    to the i915 driver (ref. http://lkml.org/lkml/2008/2/22/488).

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Pavel Machek
    Tested-by: Jeff Chua
    Signed-off-by: Linus Torvalds

    Rafael J. Wysocki
     

18 Feb, 2008

1 commit

  • The panic occurs if we get a MSGIN or MSGOUT for an unidentified SCB
    (meaning we didn't identify the outstanding command it was for). For
    MSGIN this is wrong because it could be an unsolicited negotiation
    MSGIN from the target.

    Still panic on unsolicited MSGOUT because this would represent a
    mistake in the negotiation phases. However, we should fix this as
    well. The specs say we should go to bus free for unexpected msgin.

    Signed-off-by: James Bottomley

    James Bottomley
     

09 Feb, 2008

1 commit

  • Fix bug introduced by my latest fix to the aic7xxx Makefile.
    Test build on x86 32 and 64 bit.
    Without and with -j (parallel build)
    Building firmaware is br0ken with O=... but this
    is unrelated to this bug-fix.

    Tested-by: Adrian Bunk
    Cc: James Bottomley
    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     

04 Feb, 2008

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (79 commits)
    Jesper Juhl is the new trivial patches maintainer
    Documentation: mention email-clients.txt in SubmittingPatches
    fs/binfmt_elf.c: spello fix
    do_invalidatepage() comment typo fix
    Documentation/filesystems/porting fixes
    typo fixes in net/core/net_namespace.c
    typo fix in net/rfkill/rfkill.c
    typo fixes in net/sctp/sm_statefuns.c
    lib/: Spelling fixes
    kernel/: Spelling fixes
    include/scsi/: Spelling fixes
    include/linux/: Spelling fixes
    include/asm-m68knommu/: Spelling fixes
    include/asm-frv/: Spelling fixes
    fs/: Spelling fixes
    drivers/watchdog/: Spelling fixes
    drivers/video/: Spelling fixes
    drivers/ssb/: Spelling fixes
    drivers/serial/: Spelling fixes
    drivers/scsi/: Spelling fixes
    ...

    Linus Torvalds
     
  • Building the aic7xxx driver includes the copy
    of an .h file from a _shipped file.

    In a highly parallel build Ingo saw that the
    build sometimes failed (included distcc usage).
    It was tracked down to a missing dependency from the .c
    source file to the generated .h file.
    We started to build the .c file before the
    copy (cat) operation of the .h file completed
    and we then only got half of the definitions
    from the copied .h file.

    Add an explicit dependency from the .c files to the
    generated .h files so make knows all dependencies and
    finsih the build of the .h files before it starts
    building the .o files.

    Ingo tested this fix and reported:
    good news: hundreds of successful kernel builds and no failures
    overnight.

    Signed-off-by: Sam Ravnborg
    Acked-by: Ingo Molnar
    Acked-by: James Bottomley

    Sam Ravnborg
     

03 Feb, 2008

1 commit


31 Jan, 2008

5 commits

  • With the sg table code, every SCSI driver is now either chain capable
    or broken (or has sg_tablesize set so chaining is never activated), so
    there's no need to have a check in the host template.

    Also tidy up the code by moving the scatterlist size defines into the
    SCSI includes and permit the last entry of the scatterlist pools not
    to be a power of two.
    Signed-off-by: James Bottomley

    James Bottomley
     
  • CC [M] drivers/scsi/aic7xxx/aic7xxx_osm_pci.o
    drivers/scsi/aic7xxx/aic7xxx_osm_pci.c:148: warning: 'ahc_linux_pci_dev_suspend' defined but not used
    drivers/scsi/aic7xxx/aic7xxx_osm_pci.c:166: warning: 'ahc_linux_pci_dev_resume' defined but not used

    This moves aic7xxx_pci_driver struct, removes some forward declarations,
    and adds some ifdef CONFIG_PM.

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

    FUJITA Tomonori
     
  • CC [M] drivers/scsi/aic7xxx/aic79xx_osm_pci.o
    drivers/scsi/aic7xxx/aic79xx_osm_pci.c:101: warning: 'ahd_linux_pci_dev_suspend' defined but not used
    drivers/scsi/aic7xxx/aic79xx_osm_pci.c:121: warning: 'ahd_linux_pci_dev_resume' defined but not used

    This moves aic79xx_pci_driver struct, removes some forward
    declarations, and adds some ifdef CONFIG_PM.

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

    FUJITA Tomonori
     
  • The driver only needs to check the SCB_ACTIVE flag if the SCB is not
    in the untagged queue.

    If the driver is in error recovery, you may end panic'ing on a TUR
    that is in the untagged queue.

    Attempting to queue an ABORT message
    CDB: 0x0 0x0 0x0 0x0 0x0 0x0
    SCB 3 done'd twice

    This patch is included in Adaptec's 6.3.11 driver on their website.

    Signed-off-by: James Bottomley

    David Milburn
     
  • The commit de25deb18016f66dcdede165d07654559bb332bc changed
    scsi_cmnd.sense_buffer from a static array to a dynamically allocated
    buffer. We can't access to sense_buffer in '&cmd->sense_buffer' way.

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

    FUJITA Tomonori
     

25 Jan, 2008

1 commit

  • This patch adds the proper $(obj) and $(src) prefixes to dependency
    rules in aic7xxx makefile. Without this patch, there is a remote
    possibility that parallel make with a different output directory can
    fail.

    Also changed the deprecated EXTRA_CFLAGS construct to ccflags-y syntax.

    Fixed up patch to survive "make drivers/scsi/ -j"
    with BUILD_FIRMWARE enable. /Sam

    Signed-off-by: Vegard Nossum
    Signed-off-by: Sam Ravnborg
    Acked-by: Hannes Reinecke
    Signed-off-by: James Bottomley

    Vegard Nossum
     

24 Jan, 2008

1 commit


24 Oct, 2007

1 commit

  • * master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (39 commits)
    [SCSI] qla2xxx: Update version number to 8.02.00-k5.
    [SCSI] qla2xxx: Correct display of ISP serial-number.
    [SCSI] qla2xxx: Correct residual-count handling discrepancies during UNDERRUN handling.
    [SCSI] qla2xxx: Make driver (mostly) legacy I/O port free.
    [SCSI] qla2xxx: Fix issue where final flash-segment updates were falling into the slow-path write handler.
    [SCSI] qla2xxx: Handle unaligned sector writes during NVRAM/VPD updates.
    [SCSI] qla2xxx: Defer explicit interrupt-polling processing to init-time scenarios.
    [SCSI] qla2xxx: Resync with latest HBA SSID specification -- 2.2u.
    [SCSI] sym53c8xx: Remove sym_xpt_async_sent_bdr
    [SCSI] sym53c8xx: Remove pci_dev pointer from sym_shcb
    [SCSI] sym53c8xx: Make interrupt handler capable of returning IRQ_NONE
    [SCSI] sym53c8xx: Get rid of IRQ_FMT and IRQ_PRM
    [SCSI] sym53c8xx: Use scmd_printk where appropriate
    [SCSI] sym53c8xx: Simplify DAC DMA handling
    [SCSI] sym53c8xx: Remove tag_ctrl module parameter
    [SCSI] sym53c8xx: Remove io_ws, mmio_ws and ram_ws elements
    [SCSI] sym53c8xx: Remove ->device_id
    [SCSI] sym53c8xx: Use pdev->revision
    [SCSI] sym53c8xx: PCI Error Recovery support
    [SCSI] sym53c8xx: Stop overriding scsi_done
    ...

    Linus Torvalds
     

22 Oct, 2007

3 commits


20 Oct, 2007

1 commit


16 Oct, 2007

1 commit


31 Jul, 2007

1 commit


27 Jul, 2007

1 commit

  • Wide transfers are required for every setting of PPR apart from QAS.
    It seems the DV code starts at the minimum, which turns on DT and Wide
    regardless of the setting of max_width. Redo the PPR and period
    setting routines to respect max_width (i.e. start at period = 10 if it
    is zero).

    This fixes bugzilla 8366

    Acked-by: "Freels, James D."
    Signed-off-by: James Bottomley

    James Bottomley
     

16 Jul, 2007

1 commit

  • * master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (166 commits)
    [SCSI] ibmvscsi: convert to use the data buffer accessors
    [SCSI] dc395x: convert to use the data buffer accessors
    [SCSI] ncr53c8xx: convert to use the data buffer accessors
    [SCSI] sym53c8xx: convert to use the data buffer accessors
    [SCSI] ppa: coding police and printk levels
    [SCSI] aic7xxx_old: remove redundant GFP_ATOMIC from kmalloc
    [SCSI] i2o: remove redundant GFP_ATOMIC from kmalloc from device.c
    [SCSI] remove the dead CYBERSTORMIII_SCSI option
    [SCSI] don't build scsi_dma_{map,unmap} for !HAS_DMA
    [SCSI] Clean up scsi_add_lun a bit
    [SCSI] 53c700: Remove printk, which triggers because of low scsi clock on SNI RMs
    [SCSI] sni_53c710: Cleanup
    [SCSI] qla4xxx: Fix underrun/overrun conditions
    [SCSI] megaraid_mbox: use mutex instead of semaphore
    [SCSI] aacraid: add 51245, 51645 and 52245 adapters to documentation.
    [SCSI] qla2xxx: update version to 8.02.00-k1.
    [SCSI] qla2xxx: add support for NPIV
    [SCSI] stex: use resid for xfer len information
    [SCSI] Add Brownie 1200U3P to blacklist
    [SCSI] scsi.c: convert to use the data buffer accessors
    ...

    Linus Torvalds
     

01 Jun, 2007

1 commit

  • I have made a tool to parse the kernel that does not pre-process the
    source. That means that my parser tries to parse all the code, including
    code in the #else branch or code that is not often compiled because the
    driver is not very used (or not used at all). So, my parser sometimes
    reports parse error not originally detected by gcc. Here is my (first)
    patch.

    [akpm@linux-foundation.org: fix amd8111e.c]
    Signed-off-by: Yoann Padioleau
    Acked-by: Matthew Wilcox
    Acked-by: Wim Van Sebroeck
    Acked-by: David Woodhouse
    Acked-by: Jeff Garzik
    Acked-by: James Bottomley
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yoann Padioleau
     

31 May, 2007

1 commit


27 May, 2007

2 commits


23 May, 2007

1 commit

  • On Tue, 2007-05-22 at 06:51 -0500, Bob Tracy wrote:
    > Second try: originally reported this back on April 17th. 2.6.X
    > kernel builds started failing after I upgraded my compiler from
    > gcc-3.3.X to gcc-3.4.6:
    >
    > make -C drivers/scsi/aic7xxx/aicasm
    > (...)
    > gcc -I/usr/include -I. aicasm.c aicasm_symbol.c aicasm_gram.c aicasm_macro_gram.c aicasm_scan.c aicasm_macro_scan.c -o aicasm -ldb
    > aicasm_gram.y:1948: error: conflicting types for 'yyerror'
    > aicasm_gram.tab.c:3004: error: previous implicit declaration of 'yyerror' was here
    > aicasm_macro_gram.y:162: error: conflicting types for 'mmerror'
    > aicasm_macro_gram.tab.c:1196: error: previous implicit declaration of 'mmerror' was here

    Fix is to add a prototype for yyerror and mmerror to the relevant files.

    Signed-off-by: James Bottomley

    James Bottomley