From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Hutchings Subject: Re: Ethernet CRC questions Date: Tue, 29 Dec 2009 18:39:36 +0100 Message-ID: <1262108376.5941.5.camel@localhost> References: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Cc: netdev@vger.kernel.org To: thomas yang Return-path: Received: from mail.solarflare.com ([216.237.3.220]:53279 "EHLO exchange.solarflare.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751507AbZL2Rjm (ORCPT ); Tue, 29 Dec 2009 12:39:42 -0500 In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: On Wed, 2009-12-30 at 01:17 +0800, thomas yang wrote: > How does Linux generate Ethernet CRC ? > by the hardware (Ethernet controller) or use crc32_le() / > crc32_be() ( lib/crc32.c ) ? > > P.S. my network card is rtl8139d , use 8139too driver The Ethernet frame CRC is normally generated and verified in hardware. These library functions are needed for the few MACs that don't, or where the same CRC function is used for some other purpose (e.g. as a hash function for multicast filtering). Ben. -- Ben Hutchings, Senior Software Engineer, Solarflare Communications Not speaking for my employer; that's the marketing department's job. They asked us to note that Solarflare product names are trademarked.