[PATCH] e1000: The user-supplied itr setting needs the lower 2 bits masked off
authorJesse Brandeburg <jesse.brandeburg@intel.com>
Fri, 15 Dec 2006 09:29:31 +0000 (10:29 +0100)
committerJeff Garzik <jeff@garzik.org>
Tue, 26 Dec 2006 20:51:28 +0000 (15:51 -0500)
The lower 2 bits of a user-supplied itr setting (via ethtool) need to be
masked off: These lower two bits are used as control bits.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/net/e1000/e1000_param.c

index cbfcd7f2889f6fea29232bf6fd2b720efe0fdcda..cf2a279307e1ce0a547c0a4f7e6ea7a04ff0b603 100644 (file)
@@ -487,7 +487,9 @@ e1000_check_options(struct e1000_adapter *adapter)
                                e1000_validate_option(&adapter->itr, &opt,
                                        adapter);
                                /* save the setting, because the dynamic bits change itr */
-                               adapter->itr_setting = adapter->itr;
+                               /* clear the lower two bits because they are
+                                * used as control */
+                               adapter->itr_setting = adapter->itr & ~3;
                                break;
                        }
                } else {