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-next>] [day] [month] [year] [list]
Message-ID: <46AA5FB8.9090600@intel.com>
Date:	Fri, 27 Jul 2007 14:12:24 -0700
From:	"Kok, Auke" <auke-jan.h.kok@...el.com>
To:	Jeff Garzik <jgarzik@...ox.com>, NetDev <netdev@...r.kernel.org>
CC:	Arjan van de Ven <arjan@...ux.intel.com>,
	"Ronciak, John" <john.ronciak@...el.com>
Subject: RFC/Progress update: e1000e pci-express -only e1000 driver


All,

Here's a short update on progress with e1000e, the future pci-express -only 
version of the current e1000 driver. Since about a month ago, a lot has changed 
so I'd like to keep everyone posted on progress and solicit ideas.

What happened since I posted "e1000new" ? Here's a summary:

* e1000new was renamed to e1000e and all non-pcie hardware support was dropped 
from this driver (all 8254* chipsets).
* after this stage, I removed all code that handled the flags (32 or so) that 
are no longer used or obsolete since they are always enabled (e.g. all devices 
have msi)
* Removed non-essential module parameters (e.g. speed, duplex, flowcontrol)
* Removed all multi-queue code
* Filtered all unused macro's and define's out (about 700 or so)
* converted the bitfields into other flag types
* filtered out unreached code (for non-supported phy types, bus types in the 
pci-e adapters)

Please note that I'm basically coding e1000e for all pcie adapters, but the 
first merge will only enable ich9 devices (by masking the device IDs). This will 
allow me to develop the code with an eye on all devices and structure, while not 
removing code that we might need later anyway.

After that the main issue is the internal API. I've started to give it a diet 
mainly for two reasons:

1) lots of obfuscating wrappers and indirection
2) once I remove the lot of those where possible, things should become a bit 
more clear where we can go since it's going to be more easy to find the cases we 
can eliminate or cleanup.

I'm now at this phase and still working on it, so this is all major work in 
progress.

Since this obviously is going to take me more time, I hope to post these updates 
every two weeks or so, so people can give the driver a try (it's largely 
untested of course) and review the direction that I'm headed in.

The patches are available on http:

     http://foo-projects.org/~sofar/e1000e-1.patch      [585k]
     http://foo-projects.org/~sofar/e1000e-1.patch.bz2  [93k]


Feel free to suggest and comment. Better now then later ;)

Cheers,

Auke


-
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