]> www.infradead.org Git - users/jedix/linux-maple.git/commit
lpfc: Destroy lpfc_hba_index IDR on module exit
authorrkennedy <dick.kennedy@avagotech.com>
Tue, 13 Oct 2015 19:48:28 +0000 (12:48 -0700)
committerChuck Anderson <chuck.anderson@oracle.com>
Mon, 19 Oct 2015 16:10:57 +0000 (09:10 -0700)
commita839f90aa46cea9dc7b4c47a357c189b85a9ec8c
tree33e0c0e878f9d4d95c083e8eabaf086a4ca6c10e
parente2c6b78446d7541a2ad81fadecbfcb31470182ce
lpfc: Destroy lpfc_hba_index IDR on module exit

Submitted by james.smart () james.smart.()@emulex.comSubmitted by Johannes Thumshirn Johannes.Thumshirn@emulex.com

From: Johannes Thumshirn jthumshirn@suse.de

Destroy lpfc_hba_index IDR on module exit, reclaiming the allocated memory.

This was detected by the following semantic patch (written by Luis Rodriguez
mcgrof@suse.com)
SmPL
@ defines_module_init @
declarer name module_init, module_exit;
declarer name DEFINE_IDR;
identifier init;
@@

module_init(init);

@ defines_module_exit @
identifier exit;
@@

module_exit(exit);

@ declares_idr depends on defines_module_init &amp;&amp; defines_module_exit @
identifier idr;
@@

DEFINE_IDR(idr);

@ on_exit_calls_destroy depends on declares_idr &amp;&amp; defines_module_exit @
identifier declares_idr.idr, defines_module_exit.exit;
@@

exit(void)
{
 ...
 idr_destroy(&amp;idr);
 ...
}

@ missing_module_idr_destroy depends on declares_idr &amp;&amp; defines_module_exit &amp;&amp; !on_exit_calls_destroy @
identifier declares_idr.idr, defines_module_exit.exit;
@@

exit(void)
{
 ...
 +idr_destroy(&amp;idr);
}
/SmPL

Signed-off-by: Johannes Thumshirn jthumshirn@suse.de
Signed-off-by: James Smart james.smart@avagotech.com
Reviewed-by: Hannes Reinecke hare@suse.de
http://marc.info/?l=linux-scsi&m=144105411403740&w=2

Orabug: 22029622
From dick.kennedy@avagotech.com lpfc-10.5.0.1-11.0.0.3-1.tar.gz
Acked-by: Chuck Anderson <chuck.anderson@oracle.com>
drivers/scsi/lpfc/lpfc_init.c