- Fixed the case where stats_info was accessed after free in free_shared_mem().
Signed-off-by: Surjit Reang <[EMAIL PROTECTED]> Signed-off-by: Sreenivasa Honnur <[EMAIL PROTECTED]> Signed-off-by: Ramkrishna Vepa <[EMAIL PROTECTED]> --- diff -Nurp patch_10/drivers/net/s2io.c patch_11/drivers/net/s2io.c --- patch_10/drivers/net/s2io.c 2007-12-04 23:36:48.000000000 +0530 +++ patch_11/drivers/net/s2io.c 2007-12-08 01:05:56.000000000 +0530 @@ -84,7 +84,7 @@ #include "s2io.h" #include "s2io-regs.h" -#define DRV_VERSION "2.0.26.10" +#define DRV_VERSION "2.0.26.11" /* S2io Driver name & version. */ static char s2io_driver_name[] = "Neterion"; @@ -941,18 +941,19 @@ static void free_shared_mem(struct s2io_ } } + if (nic->ufo_in_band_v) { + nic->mac_control.stats_info->sw_stat.mem_freed + += (ufo_size * sizeof(u64)); + kfree(nic->ufo_in_band_v); + } + if (mac_control->stats_mem) { + nic->mac_control.stats_info->sw_stat.mem_freed += + mac_control->stats_mem_sz; pci_free_consistent(nic->pdev, mac_control->stats_mem_sz, mac_control->stats_mem, mac_control->stats_mem_phy); - nic->mac_control.stats_info->sw_stat.mem_freed += - mac_control->stats_mem_sz; - } - if (nic->ufo_in_band_v) { - kfree(nic->ufo_in_band_v); - nic->mac_control.stats_info->sw_stat.mem_freed - += (ufo_size * sizeof(u64)); } } -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html