bonding - uninitialize static variables
Subsystems (3)
PATCH RESEND 1/1 bonding - uninitialize static variables
One of the tasks at http://janitor.kernelnewbies.org/TODO
is described as
"
uninitialize static variables initialized to 0, to make it go to the .bss, instead of .data.
"
To proof that it is still guaranteed that those variables will be initialized to zero
Tom Bradley <[email protected]> (on the kernel-janitors mailing list) wrote
"
the default for gcc is `-fzero-initialized-in-bss', the kernel makefile does not change this therefore bss is zeroed, this is documented in the gcc manpage.
"
and David P Howell <[email protected]> added that "
By definition .bss is always zero'ed by the implementation. "
This patch uninitializes five static int initialized to 0.
---
drivers/net/bonding/bond_main.c +11 -11
@@ -531,14 +531,14 @@static int max_bonds =BOND_DEFAULT_MAX_BONDS ;static int miimon =BOND_LINK_MON_INTERV ; -static int updelay =0 ; -static int downdelay =0 ; +static int updelay; +static int downdelay;static int use_carrier =1 ; -static char *mode =NULL ; -static char *primary =NULL ; -static char *lacp_rate =NULL ; +static char *mode; +static char *primary; +static char *lacp_rate;static int arp_interval =BOND_LINK_ARP_INTERV ; -static char *arp_ip_target[BOND_MAX_ARP_TARGETS ] = {NULL , }; +static char *arp_ip_target[BOND_MAX_ARP_TARGETS ];module_param (max_bonds, int,0 );MODULE_PARM_DESC (max_bonds,"Max number of bonded devices" );
@@ -572,12 +572,12 @@ static LIST_HEAD(bond_dev_list);static struct proc_dir_entry *bond_proc_dir =NULL ;#endif -static u32 arp_target[BOND_MAX_ARP_TARGETS ] = {0 , } ; -static int arp_ip_count =0 ; -static u32 my_ip =0 ; +static u32 arp_target[BOND_MAX_ARP_TARGETS ]; +static int arp_ip_count; +static u32 my_ip;static int bond_mode =BOND_MODE_ROUNDROBIN ; -static int lacp_fast =0 ; -static int app_abi_ver =0 ; +static int lacp_fast; +static int app_abi_ver;static int orig_app_abi_ver =-1 ;/* This is used to save the first ABI version * we receive from the application. Once set, * it won't be changed, and the module will
_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors