lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 15 Jan 2007 11:35:35 -0600
From:	Harry Coin <hcoin@...omm.com>
To:	Dan Williams <dcbw@...hat.com>
Cc:	netdev@...r.kernel.org
Subject: Re: 3c59x.c patch to 2.6.18 fixing Wake on Lan (WOL)

At 11:00 AM 1/15/2007 -0500, Dan Williams wrote:
>On Mon, 2007-01-15 at 09:12 -0600, Harry Coin wrote:
> > Hello all.
> >
> > The 3c59x.c in kernel 2.6.18 (and as I see later ones too) attempts
> > to enable PME from the already awake D0 state. The PME config space on 
> Dell
> > Optiplexs
> > for this chip has a zero in the capabilities for this bit-- no 'wake 
> from d0'.
> >
> > The pci_enable_wake in 2.6.18 tests the capabilities before enabling PME,
> > so the pci_wake call fails, its result is not tested, so no error is 
> reported.
> >
> > The routine changes the wake request from 0 to D3_hot.  This fix
> > causes wake on lan (WOL) to work properly on older Dell Optiplex models.
> >
> > Kindly overlook newbie mistakes.  Thank you.
>
>You'll want to include a line like:
>
>Signed-off-by: Harry Coin <your email here>
>
>which signifies that you are legally able to contribute the attached
>patch under the GPL license.  Do this right before the start of the
>patch (where you put your signature in the previous mail).
>
>Dan

  Thank you.  I've added it to a repeat of the original posting copied below.

> >
> >
> > --- drivers-orig/3c59x.c        2007-01-15 00:03:52.000000000 -0600
> > +++ drivers-fixed/3c59x.c       2007-01-15 00:46:37.000000000 -0600
> > @@ -3090,8 +3090,8 @@
> >   /* Set Wake-On-LAN mode and put the board into D3 (power-down) state. */
> >   static void acpi_set_WOL(struct net_device *dev)
> >   {
> > -       struct vortex_private *vp = netdev_priv(dev);
> > -       void __iomem *ioaddr = vp->ioaddr;
> > +  struct vortex_private *vp = netdev_priv(dev);
> > +  void __iomem *ioaddr = vp->ioaddr;
> >
> >          if (vp->enable_wol) {
> >                  /* Power up on: 1==Downloaded Filter, 2==Magic Packets,
> > 4==Link Status. */
> > @@ -3101,7 +3101,7 @@
> >                  iowrite16(SetRxFilter|RxStation|RxMulticast|RxBroadcast,
> > ioaddr + EL3_CMD);
> >                  iowrite16(RxEnable, ioaddr + EL3_CMD);
> >
> > -               pci_enable_wake(VORTEX_PCI(vp), 0, 1);
> > +               pci_enable_wake(VORTEX_PCI(vp),PCI_D3hot,1);
> >
> >                  /* Change the power state to D3; RxEnable doesn't take
> > effect. */
> >                  pci_set_power_state(VORTEX_PCI(vp), PCI_D3hot);
> >
> > Harry Coin
> > Bettendorf, Iowa
Signed-off-by: Harry Coin hcoin@...omm.com


-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists