1. 29 12月, 2010 2 次提交
    • B
      ehea: Avoid changing vlan flags · c4711786
      Breno Leitao 提交于
      This patch avoids disabling the vlan flags using ethtool.
      Signed-off-by: NBreno Leitao <leitao@linux.vnet.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c4711786
    • D
      ueagle-atm: fix PHY signal initialization race · 12f188f2
      Dan Williams 提交于
      A race exists when initializing ueagle-atm devices where the generic atm
      device may not yet be created before the driver attempts to initialize
      it's PHY signal state, which checks whether the atm device has been
      created or not.  This often causes the sysfs 'carrier' attribute to be
      '1' even though no signal has actually been found.
      
      uea_probe
         usbatm_usb_probe
            driver->bind (uea_bind)
               uea_boot
                  kthread_run(uea_kthread)     uea_kthread
            usbatm_atm_init                       uea_start_reset
               atm_dev_register                      UPDATE_ATM_SIGNAL
      
      UPDATE_ATM_SIGNAL checks whether the ATM device has been created and if
      not, will not update the PHY signal state.  Because of the race that
      does not always happen in time, and the PHY signal state remains
      ATM_PHY_SIG_FOUND even though no signal exists.
      
      To fix the race, just create the kthread during initialization, and only
      after initialization is complete, start the thread that reboots the
      device and initializes PHY state.
      
      [ 3030.490931] uea_probe: calling usbatm_usb_probe
      [ 3030.490946] ueagle-atm 8-2:1.0: usbatm_usb_probe: trying driver ueagle-atm with vendor=1110, product=9031, ifnum  0
      [ 3030.493691] uea_bind: setting usbatm
      [ 3030.496932] usb 8-2: [ueagle-atm] using iso mode
      [ 3030.497283] ueagle-atm 8-2:1.0: usbatm_usb_probe: using 3021 byte buffer for rx channel 0xffff880125953508
         <kthread already started before usbatm_usb_probe() has returned>
      [ 3030.497292] usb 8-2: [ueagle-atm] (re)booting started
         <UPDATE_ATM_SIGNAL checks whether ATM device has been created yet before setting PHY state>
      [ 3030.497298] uea_start_reset: atm dev (null)
         <and since it hasn't been created yet PHY state is not set>
      [ 3030.497306] ueagle-atm 8-2:1.0: usbatm_usb_probe: using 3392 byte buffer for tx channel 0xffff8801259535b8
      [ 3030.497374] usbatm_usb_probe: about to init
      [ 3030.497379] usbatm_usb_probe: calling usbatm_atm_init
         <atm device finally gets created>
      [ 3030.497384] usbatm_atm_init: creating atm device!
      Signed-off-by: NDan Williams <dcbw@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      12f188f2
  2. 26 12月, 2010 2 次提交
  3. 25 12月, 2010 5 次提交
    • T
      libata: issue DIPM enable commands with LPM state updated · e5005b15
      Tejun Heo 提交于
      Low level drivers may behave differently depending on the current
      link->lpm_policy.  During ata_eh_set_lpm(), DIPM enable commands are
      issued after the successful completion of ap->ops->set_lpm(), which
      means that the controller is already in the target state.  This causes
      DIPM enable commands to be processed with mismatching controller power
      state and link->lpm_policy value.
      
      In ahci, link->lpm_policy is used to ignore certain PHY events if LPM
      is enabled; however, as DIPM commands are issued with stale
      link->lpm_policy, they sometimes end up triggering these conditions
      and get aborted leading to LPM configuration failure.
      
      Fix it by updating link->lpm_policy before issuing DIPM enable
      commands.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Reported-by: NKyle McMartin <kyle@mcmartin.ca>
      Cc: stable@kernel.org
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      e5005b15
    • T
      libata: no special completion processing for EH commands · f08dc1ac
      Tejun Heo 提交于
      ata_qc_complete() contains special handling for certain commands.  For
      example, it schedules EH for device revalidation after certain
      configurations are changed.  These shouldn't be applied to EH
      commands but they were.
      
      In most cases, it doesn't cause an actual problem because EH doesn't
      issue any command which would trigger special handling; however, ACPI
      can issue such commands via _GTF which can cause weird interactions.
      
      Restructure ata_qc_complete() such that EH commands are always passed
      on to __ata_qc_complete().
      
      stable: Please apply to -stable only after 2.6.38 is released.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Reported-by: NKyle McMartin <kyle@mcmartin.ca>
      Cc: stable@kernel.org
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      f08dc1ac
    • W
      pata_mpc52xx: driver needs BMDMA · 869934ad
      Wolfram Sang 提交于
      Found by this build-error if BMDMA is disabled:
      
      drivers/ata/pata_mpc52xx.c: In function 'mpc52xx_ata_init_one':
      drivers/ata/pata_mpc52xx.c:662: error: 'ata_bmdma_interrupt' undeclared (first use in this function)
      ...
      
      Move the Kconfig entry to the proper location as needed since
      9a7780c9 (libata-sff: make BMDMA optional)
      Signed-off-by: NWolfram Sang <w.sang@pengutronix.de>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      869934ad
    • W
      pata_cs5536: Add support for non-X86_32 platforms · 9272dcc2
      Wu Zhangjin 提交于
      pata_cs5536 does work on the other platforms(e.g. Loongson, a MIPS
      variant), so, remove the dependency of X86_32 and fix the building
      errors under the other platforms via only reserving the X86_32 specific
      parts for X86_32.
      
      pata_amd also supports cs5536 IDE controller, but this one saves about
      33k for the compressed kernel image(vmlinuz for MIPS).
      Signed-off-by: NZhang Le <r0bertz@gentoo.org>
      Signed-off-by: NChen Jie <chenj@lemote.com>
      Signed-off-by: NWu Zhangjin <wuzhangjin@gmail.com>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      9272dcc2
    • T
      libata-sff: fix HSM_ST_ERR handling in __ata_sff_port_intr() · 687a9933
      Tejun Heo 提交于
      While separating out BMDMA irq handler from SFF, commit c3b28894
      (libata-sff: separate out BMDMA irq handler) incorrectly made
      __ata_sff_port_intr() consider an IRQ to be an idle one if the host
      state was transitioned to HSM_ST_ERR by ata_bmdma_port_intr().
      
      This makes BMDMA drivers ignore IRQs reporting host bus error which
      leads to timeouts instead of triggering EH immediately.  Fix it by
      making __ata_sff_port_intr() consider the IRQ to be an idle one iff
      the state is HSM_ST_IDLE.  This is equivalent to adding HSM_ST_ERR to
      the "break"ing case but less error-prone.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Reported-by: NAntonio Toma <antonio.toma@gmail.com>
      Cc: stable@kernel.org
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      687a9933
  4. 24 12月, 2010 7 次提交
  5. 23 12月, 2010 6 次提交
  6. 22 12月, 2010 7 次提交
  7. 21 12月, 2010 11 次提交