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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Mon, 21 Jul 2008 08:32:03 -0700 (PDT)
From:	David Miller <davem@...emloft.net>
To:	avorontsov@...mvista.com
Cc:	jeff@...zik.org, netdev@...r.kernel.org
Subject: Re: [PATCH 3/3] bunch of drivers: avoid BUG at net/core/dev.c:1328

From: Anton Vorontsov <avorontsov@...mvista.com>
Date: Mon, 21 Jul 2008 19:17:58 +0400

> The drivers were touching net queue before it has been started, so without
> this patch, the drivers will potentially BUG at net/core/dev.c:1328.
> 
> I don't have the hardware for the drivers below, so this patch is untested,
> and thus should be carefully peer reviewed.
> 
> tc35815.c
> au1000_eth.c
> bfin_mac.c
> macb.c
> ^ The four drivers are using phylib, they're calling netif_start_queue()
> in open() callback. So trivially remove netif_tx_schedule_all().
> Phylib will handle netif_carrier_*().
> 
> cpmac.c
> fec_mpc52xx.c
> fs_enet/fs_enet-main.c
> sh_eth.c
> ^ The same as above, but these were also needlessly calling
> netif_carrier_*() functions. So removed queue calls and also remove
> carrier calls, since phylib will handle it. fs_enet-main.c also didn't
> call netif_start_queue() at open(), this is fixed now.
> 
> Signed-off-by: Anton Vorontsov <avorontsov@...mvista.com>

Your analysis and patch both look accurate, but I'll let this
one sit for a day so that others can have a look and review.

--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ