1. 19 Feb, 2009 1 commit
  2. 16 Feb, 2009 1 commit
    • Tobias Diedrich's avatar
      net: forcedeth: Fix wake-on-lan regression · 34edaa88
      Tobias Diedrich authored
      Commit f55c21fd ("forcedeth: call
      restore mac addr in nv_shutdown path"), which was introduced to fix
      the regression tracked at
      http://bugzilla.kernel.org/show_bug.cgi?id=11358
      
       causes the
      wake-on-lan mac to be reversed in the shutdown path.  Apparently the
      forcedeth situation is rather messy in that the mac we need to
      writeback for a subsequent modprobe to work is exactly the reverse of
      what is needed for proper wake-on-lan.
      
      The following patch explains the situation in the comments and
      makes the call to nv_restore_mac_addr() conditional (only called if
      we are not really going for poweroff).
      
      Tobias Diedrich wrote:
      > Hmm, I had not tried WOL for some time.
      > With 2.6.29-rc3 is see the following behaviour:
      > 
      > State            WOL Behaviour
      > ------------------------------
      > shutdown         reversed MAC
      > disk/shutdown    reversed MAC
      > disk/platform    OK
      > 
      > Apparently nv_restore_mac_addr() restores the MAC in the wrong order
      > for WOL (at least for my PCI_DEVICE_ID_NVIDIA_NVENET_15).  platform
      > works, because the MAC is not touched in the nv_suspend() path.
      > 
      > A possible fix might be to only call nv_restore_mac_addr() if
      > system_state != SYSTEM_POWER_OFF.
      
      With the following patch:
      shutdown         OK
      disk/shutdown    OK
      disk/platform    OK
      kexec            OK
      Signed-off-by: default avatarTobias Diedrich <ranma+kernel@tdiedrich.de>
      Tested-by: default avatarPhilipp Matthias Hahn <pmhahn@titan.lahn.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      34edaa88
  3. 13 Feb, 2009 17 commits
  4. 11 Feb, 2009 7 commits
  5. 09 Feb, 2009 6 commits
  6. 07 Feb, 2009 4 commits
    • David S. Miller's avatar
      sunhme: Don't match PCI devices in SBUS probe. · 0b492fce
      David S. Miller authored
      
      
      Unfortunately, the OF device tree nodes for SBUS and PCI
      hme devices have the same device node name on some systems.
      
      So if the name of the parent node isn't 'sbus', skip it.
      
      Based upon an excellent report and detective work by
      Meelis Roos and Eric Brower.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      Tested-by: default avatarMeelis Roos <mroos@linux.ee>
      0b492fce
    • Ondrej Zary's avatar
      3c509: Fix resume from hibernation for PnP mode. · 152abd13
      Ondrej Zary authored
      
      
      From: Ondrej Zary <linux@rainbow-software.org>
      
      last year, I posted a patch which fixed hibernation on 3c509
      cards. That was back in 2.6.24. It worked fine in 2.6.25. But then I
      stopped using hibernation (as it did not work with my new IT8212 RAID
      controller).
      
      Now I fixed it and noticed that 3c509 does not wake up properly
      anymore (in 2.6.28) - neither in PnP nor in ISA modes. ifconfig
      down/up makes the card work again in PnP mode. However, in ISA mode,
      ifconfig up ends with "No such device" error.
      
      Comparing the 3c509 driver between 2.6.25 and 2.6.28, there's only
      some statistics-related change. So the cause of the problem must be
      somewhere else.
      
      This patch makes the resume work in PnP mode, but it's still not
      enough for ISA mode.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      152abd13
    • Ilkka Virta's avatar
      sungem: Soft lockup in sungem on Netra AC200 when switching interface up · 71822faa
      Ilkka Virta authored
      
      
      From: Ilkka Virta <itvirta@iki.fi>
      
      In the lockup situation the driver seems to go off in an eternal storm
      of interrupts right after calling request_irq(). It doesn't actually
      do anything interesting in the interrupt handler. Since connecting the link
      afterwards works, something later in initialization must fix this.
      
      Looking at gem_do_start() and gem_open(), it seems that the only thing
      done while opening the device after the request_irq(), is a call to
      napi_enable().
      
      I don't know what the ordering requirements are for the
      initialization, but I boldly tried to move the napi_enable() call
      inside gem_do_start() before the link state is checked and interrupts
      subsequently enabled, and it seems to work for me. Doesn't even break
      anything too obvious...
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      71822faa
    • Ivan Vecera's avatar
      r8169: Don't update statistics counters when interface is down · 355423d0
      Ivan Vecera authored
      
      
      Some Realtek chips (RTL8169sb/8110sb in my case) are unable to retrieve
      ethtool statistics when the interface is down. The process stays in
      endless loop in rtl8169_get_ethtool_stats. This is because these chips
      need to have receiver enabled (CmdRxEnb bit in ChipCmd register) that is
      cleared when the interface is going down. It's better to update statistics
      only when the interface is up and otherwise return copy of statistics
      grabbed when the interface was up (in rtl8169_close).
      
      It is interesting that PCI-E NICs (like 8168b/8111b...) are not affected.
      Signed-off-by: default avatarIvan Vecera <ivecera@redhat.com>
      Acked-by: default avatarFrancois Romieu <romieu@fr.zoreil.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      355423d0
  7. 05 Feb, 2009 3 commits
  8. 04 Feb, 2009 1 commit
    • Reinette Chatre's avatar
      iwlwifi: save PCI state before suspend, restore after resume · c4e061ac
      Reinette Chatre authored
      
      
      This is the right thing to do and fixes the following warning:
      
      [  115.012278] ------------[ cut here ]------------
      [  115.012281] WARNING: at drivers/pci/pci-driver.c:370
      pci_legacy_suspend+0x85/0xc2()
      [  115.012285] Hardware name: Latitude D630
      [  115.012301] PCI PM: Device state not saved by
      iwl3945_pci_suspend+0x0/0x4c [iwl3945]
      [  115.012304] Modules linked in: fuse nfsd lockd nfs_acl auth_rpcgss
      exportfs sunrpc ipv6 acpi_cpufreq kvm_intel kvm snd_hda_codec_idt
      snd_hda_intel snd_hda_codec snd_hwdep arc4 snd_seq_device snd_pcm_oss
      snd_mixer_oss ecb snd_pcm cryptomgr aead snd_timer crypto_blkcipher
      snd snd_page_alloc ohci1394 crypto_hash crypto_algapi ch341 ieee1394
      usbserial thermal iwl3945 mac80211 led_class lib80211 tg3 processor
      i2c_i801 i2c_core sg cfg80211 libphy usbhid battery ac button sr_mod
      cdrom evdev dcdbas ata_generic ata_piix libata sd_mod scsi_mod ext3
      jbd mbcache uhci_hcd ohci_hcd ehci_hcd usbcore [last unloaded:
      microcode]
      [  115.012374] Pid: 4163, comm: pm-suspend Not tainted
      2.6.29-rc3-00227-gf1dd849-dirty #67
      [  115.012377] Call Trace:
      [  115.012382]  [<ffffffff8023d04d>] warn_slowpath+0xb1/0xed
      [  115.012387]  [<ffffffff80450b5e>] ? _spin_unlock_irqrestore+0x5c/0x78
      [  115.012390]  [<ffffffff80254f08>] ? up+0x34/0x39
      [  115.012394]  [<ffffffff80362319>] ? acpi_ut_release_mutex+0x5d/0x61
      [  115.012397]  [<ffffffff803584b2>] ? acpi_get_data+0x5e/0x70
      [  115.012400]  [<ffffffff80363dd9>] ? acpi_bus_get_device+0x25/0x39
      [  115.012403]  [<ffffffff80363e98>] ? acpi_bus_power_manageable+0x11/0x29
      [  115.012406]  [<ffffffff803462f7>] ? acpi_pci_power_manageable+0x17/0x19
      [  115.012410]  [<ffffffff8033ddfd>] ? pci_set_power_state+0xcc/0x101
      [  115.012418]  [<ffffffffa01f28e9>] ? iwl3945_pci_suspend+0x0/0x4c [iwl3945]
      [  115.012422]  [<ffffffff803401e6>] pci_legacy_suspend+0x85/0xc2
      [  115.012425]  [<ffffffff80340316>] pci_pm_suspend+0x34/0x86
      [  115.012429]  [<ffffffff8039d7ce>] pm_op+0x52/0xe5
      [  115.012432]  [<ffffffff8039dd78>] device_suspend+0x32a/0x451
      [  115.012436]  [<ffffffff80269ec2>] suspend_devices_and_enter+0x3e/0x13a
      [  115.012439]  [<ffffffff8026a128>] enter_state+0x110/0x164
      [  115.012442]  [<ffffffff8026a233>] state_store+0xb7/0xd7
      [  115.012446]  [<ffffffff8032f95f>] kobj_attr_store+0x17/0x19
      [  115.012449]  [<ffffffff80307d64>] sysfs_write_file+0xe4/0x119
      [  115.012453]  [<ffffffff802baa7a>] vfs_write+0xae/0x137
      [  115.012456]  [<ffffffff802babc7>] sys_write+0x47/0x70
      [  115.012459]  [<ffffffff8020b73a>] system_call_fastpath+0x16/0x1b
      [  115.012467] ---[ end trace 829828966f6f24dc ]---
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      Tested-by: default avatarMing Lei <tom.leiming@gmail.com>
      Cc: Rafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      c4e061ac