The focus of the paper is on optimization techniques for Ethernet drivers for devices that use embedded Linux. The paper consists of a case study of an Ethernet driver that experienced instability and poor performance under high stress conditions and goes over measures and techniques used to resolve stability issues and enhance performance. The paper starts with an overview of Ethernet drivers and how they fit into the Linux kernel. It then examines the design of the specific driver used in this case study. It goes over driver code snippets in C. It identifies the causes of problems, the measures used to address them and the resultant performance gains.