1. 12 8月, 2007 12 次提交
  2. 09 8月, 2007 5 次提交
  3. 08 8月, 2007 9 次提交
    • M
      drivers/net/ibmveth.c: memset fix · 9dc83afd
      Mariusz Kozlowski 提交于
      > >> 	Looks like memset() is zeroing wrong nr of bytes.
      > >
      > > Good catch, however, I think we can just remove this memset altogether
      > > since the memory gets allocated via kzalloc.
      >
      > Correct, that memset() is superfluous.
      
      Ok. Then this should do it.
      Signed-off-by: NMariusz Kozlowski <m.kozlowski@tuxland.pl>
      
       drivers/net/ibmveth.c |    3 +--
       1 file changed, 1 insertion(+), 2 deletions(-)
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      9dc83afd
    • D
      phy layer: fix phy_mii_ioctl for autonegotiation · 163642a2
      Domen Puncer 提交于
      Fix a thinko (?) in setting phydev->autoneg.
      Signed-off-by: NDomen Puncer <domen.puncer@telargo.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      163642a2
    • T
      ehea: Eliminated some compiler warnings · 44a5b3d5
      Thomas Klein 提交于
      Fixed wrongly casted pointers
      Signed-off-by: NThomas Klein <tklein@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      44a5b3d5
    • T
      ehea: Simplify resource usage check · 35cf2e2e
      Thomas Klein 提交于
      Use shorter method to determine whether adapter has configured ports
      Signed-off-by: NThomas Klein <tklein@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      35cf2e2e
    • T
      ehea: Fix workqueue handling · f46f6ba9
      Thomas Klein 提交于
      Fix: Workqueue ehea_driver_wq was not destroyed
      Signed-off-by: NThomas Klein <tklein@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      f46f6ba9
    • B
      ibmveth: Fix rx pool deactivate oops · 76b9cfcc
      Brian King 提交于
      This fixes the following oops which can occur when trying to deallocate
      receive buffer pools using sysfs with the ibmveth driver.
      
      NIP: d00000000024f954 LR: d00000000024fa58 CTR: c0000000000d7478
      REGS: c00000000ffef9f0 TRAP: 0300   Not tainted  (2.6.22-ppc64)
      MSR: 8000000000009032 <EE,ME,IR,DR>  CR: 24242442  XER: 00000010
      DAR: 00000000000007f0, DSISR: 0000000042000000
      TASK = c000000002f91360[2967] 'bash' THREAD: c00000001398c000 CPU: 2
      GPR00: 0000000000000000 c00000000ffefc70 d000000000262d30 c00000001c4087a0
      GPR04: 00000003000000fe 0000000000000000 000000000000000f c000000000579d80
      GPR08: 0000000000365688 c00000001c408998 00000000000007f0 0000000000000000
      GPR12: d000000000251e88 c000000000579d80 00000000200957ec 0000000000000000
      GPR16: 00000000100b8808 00000000100feb30 0000000000000000 0000000010084828
      GPR20: 0000000000000000 000000001014d4d0 0000000000000010 c00000000ffefeb0
      GPR24: c00000001c408000 0000000000000000 c00000001c408000 00000000ffffb054
      GPR28: 00000000000000fe 0000000000000003 d000000000262700 c00000001c4087a0
      NIP [d00000000024f954] .ibmveth_remove_buffer_from_pool+0x38/0x108 [ibmveth]
      LR [d00000000024fa58] .ibmveth_rxq_harvest_buffer+0x34/0x78 [ibmveth]
      Call Trace:
      [c00000000ffefc70] [c0000000000280a8] .dma_iommu_unmap_single+0x14/0x28 (unreliable)
      [c00000000ffefd00] [d00000000024fa58] .ibmveth_rxq_harvest_buffer+0x34/0x78 [ibmveth]
      [c00000000ffefd80] [d000000000250e40] .ibmveth_poll+0xd8/0x434 [ibmveth]
      [c00000000ffefe40] [c00000000032da8c] .net_rx_action+0xdc/0x248
      [c00000000ffefef0] [c000000000068b4c] .__do_softirq+0xa8/0x164
      [c00000000ffeff90] [c00000000002789c] .call_do_softirq+0x14/0x24
      [c00000001398f6f0] [c00000000000c04c] .do_softirq+0x68/0xac
      [c00000001398f780] [c000000000068ca0] .irq_exit+0x54/0x6c
      [c00000001398f800] [c00000000000c8e4] .do_IRQ+0x170/0x1ac
      [c00000001398f890] [c000000000004790] hardware_interrupt_entry+0x18/0x1c
         Exception: 501 at .plpar_hcall_norets+0x24/0x94
          LR = .veth_pool_store+0x15c/0x298 [ibmveth]
      [c00000001398fb80] [d000000000250b2c] .veth_pool_store+0x5c/0x298 [ibmveth] (unreliable)
      [c00000001398fc30] [c000000000145530] .sysfs_write_file+0x140/0x1d8
      [c00000001398fcf0] [c0000000000de89c] .vfs_write+0x120/0x208
      [c00000001398fd90] [c0000000000df2c8] .sys_write+0x4c/0x8c
      [c00000001398fe30] [c0000000000086ac] syscall_exit+0x0/0x40
      Instruction dump:
      fba1ffe8 fbe1fff8 789d0022 f8010010 f821ff71 789c0020 1d3d00a8 7b8a1f24
      38000000 7c7f1b78 7d291a14 e9690128 <7c0a592a> e8030000 e9690120 80a90100
      Signed-off-by: NBrian King <brking@linux.vnet.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      76b9cfcc
    • N
      sis190 check for ISA bridge on SiS966 · 8eb7ad68
      Neil Muller 提交于
      sis190 driver assumes to find ISA only on SiS965.
      similar fix is in sis900 driver, see bug report
      http://bugs.debian.org/435547Signed-off-by: Nmaximilian attems <max@stro.at>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      8eb7ad68
    • I
      atl1: use spin_trylock_irqsave() · 5845b677
      Ingo Molnar 提交于
      use the simpler spin_trylock_irqsave() API to get the adapter lock.
      
      [ this is also a fix for -rt where adapter->lock is a sleeping lock. ]
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NJay Cliburn <jacliburn@bellsouth.net>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      5845b677
    • P
      net: smc91x: Build fixes for general sh boards. · 092ed997
      Paul Mundt 提交于
      SH boards in general only wire this up in 8 or 16-bit mode, and
      as we never had the wrappers for 32-bit mode defined, SMC_CAN_USE_32BIT
      caused build failure for the non-Solution Engine boards. This gets it
      building again.
      
      Also kill off the straggling set_irq_type() definition, this is left
      over cruft that was missed when the rest of it switched to IRQ flags.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      
      --
      
       drivers/net/smc91x.h |    4 +---
       1 file changed, 1 insertion(+), 3 deletions(-)
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      092ed997
  4. 07 8月, 2007 8 次提交
  5. 06 8月, 2007 1 次提交
  6. 04 8月, 2007 5 次提交
    • S
      [SCSI] aacraid: prevent panic on adapter resource failure · 2b053729
      Salyzyn, Mark 提交于
      If the driver fails to allocate the contiguous (DMAable) memory for
      system reasons, we fail to load the instance, but then we try to free
      the <nul> allocation in the cleanup code and we get a panic in
      pci_free_consistent(). This is reported against an older kernel, hope
      this is relevant for latest/greatest.
      Signed-off-by: NMark Salyzyn <aacraid@adaptec.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      2b053729
    • B
      [SCSI] aha152x: use data accessors and !use_sg cleanup · 2338545a
      Boaz Harrosh 提交于
      And finally this is the regular !use_sg cleanup
      and use of data accessors.
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      2338545a
    • B
      [SCSI] aha152x: Fix check_condition code-path · 45333ffa
      Boaz Harrosh 提交于
      check_condition code-path was similar but more
      complicated to Reset. It went like this:
      
        1. extra space was allocated at aha152x_scdata for mirroring
          scsi_cmnd members.
        2. At aha152x_internal_queue() every not check_condition
          (REQUEST_SENSE) command was copied to above members in
          case of error.
        3. At busfree_run() in the DONE_CS phase if a Status of
          SAM_STAT_CHECK_CONDITION was detected. The command was
          re-queued Internally using aha152x_internal_queue(,,check_condition,)
          The old command members are over written with the
          REQUEST_SENSE info.
        4. At busfree_run() in the DONE_CS phase again. If it is a
          check_condition command, info was restored from mirror
          made at first call to aha152x_internal_queue() (see 2)
          and the command is completed.
      
      What I did is:
      
        1. Allocate less space in aha152x_scdata only for the 16-byte
          original command. (which is actually not needed by scsi-ml
          anymore at this stage. But this is to much knowledge of scsi-ml)
        2. If Status == SAM_STAT_CHECK_CONDITION, then like before
           re-queue a REQUEST_SENSE command. But only now save original
           command members. (Less of them)
        3. In aha152x_internal_queue(), just like for Reset, use the
          check_condition hint to set differently the working members.
          execute the command.
        4. At busfree_run() in the DONE_CS phase again. restore needed
           members.
      
      While at it. This patch fixes a BUG. Old code when sending
      a REQUEST_SENSE for a failed command. Would than return with
      cmd->resid == 0 which was the status of the REQUEST_SENSE.
      The failing command resid was lost. And when would resid
      be interesting if not on a failing command?
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      45333ffa
    • B
      [SCSI] aha152x: Clean Reset path · 66acdb03
      Boaz Harrosh 提交于
      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: NJames Bottomley <James.Bottomley@SteelEye.com>
      66acdb03
    • B
      [SCSI] aha152x: preliminary fixes and some comments · 0ceb4798
      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: NBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      0ceb4798