linux/drivers/net/enic
Vasanthy Kolluri a55a603dae enic: Bug Fix: Fix hardware descriptor reads
The last bit written to a completion descriptor by hardware is the color
bit. Driver must read all other descriptor fields only after reading the
color bit to avoid reading stale descriptor fields.  There is a rmb() after
reading the color bit to avoid any compiler/cpu reordering of the reads.
The color bit is the generation bit that toggles each pass through the
completion descriptor ring.

Signed-off-by: Scott Feldman <scofeldm@cisco.com>
Signed-off-by: Vasanthy Kolluri <vkolluri@cisco.com>
Signed-off-by: Roopa Prabhu <roprabhu@cisco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2010-03-18 21:22:47 -07:00
..
cq_desc.h enic: mask off some reserved bits in CQ descriptor for future use 2008-11-21 21:28:40 -08:00
cq_enet_desc.h enic: Bug Fix: Fix hardware descriptor reads 2010-03-18 21:22:47 -07:00
enic_main.c net: convert multiple drivers to use netdev_for_each_mc_addr, part4 2010-02-22 15:45:52 -08:00
enic_res.c enic: feature add: add ethtool -c/C support 2009-12-23 21:03:41 -08:00
enic_res.h enic: provision for multiple Rx/Tx queues; prepare for RSS support 2009-09-03 20:19:19 -07:00
enic.h enic: Bug Fix: Fix hardware descriptor reads 2010-03-18 21:22:47 -07:00
Makefile
rq_enet_desc.h
vnic_cq.c
vnic_cq.h
vnic_dev.c enic: whitespace cleanup; #define cleanup; more verbose err msg 2009-12-23 21:03:42 -08:00
vnic_dev.h enic: changes to driver/firmware interface 2009-09-03 20:19:23 -07:00
vnic_devcmd.h enic: changes to driver/firmware interface 2009-09-03 20:19:23 -07:00
vnic_enet.h enic: feature add: add ethtool -c/C support 2009-12-23 21:03:41 -08:00
vnic_intr.c enic: feature add: add ethtool -c/C support 2009-12-23 21:03:41 -08:00
vnic_intr.h enic: feature add: add ethtool -c/C support 2009-12-23 21:03:41 -08:00
vnic_nic.h enic: whitespace cleanup; #define cleanup; more verbose err msg 2009-12-23 21:03:42 -08:00
vnic_resource.h enic: misc cleanup items: 2008-11-21 21:29:25 -08:00
vnic_rq.c enic: organize device initialization/deinit into separate functions 2009-09-03 20:19:25 -07:00
vnic_rq.h enic: organize device initialization/deinit into separate functions 2009-09-03 20:19:25 -07:00
vnic_rss.h enic: misc cleanup items: 2008-11-21 21:29:25 -08:00
vnic_stats.h
vnic_wq.c enic: organize device initialization/deinit into separate functions 2009-09-03 20:19:25 -07:00
vnic_wq.h enic: organize device initialization/deinit into separate functions 2009-09-03 20:19:25 -07:00
wq_enet_desc.h