param: use free hook for charp (fix leak of charp parameters)
authorRusty Russell <rusty@rustcorp.com.au>
Thu, 12 Aug 2010 05:04:18 +0000 (23:04 -0600)
committerRusty Russell <rusty@rustcorp.com.au>
Wed, 11 Aug 2010 13:34:18 +0000 (23:04 +0930)
commita1054322afc8120ea5a50bc84e5beeda54571862
treeee7d56b7b72ee51193067ede97d61d14535244fc
parente6df34a4429b77fdffb6e05adf263468a3dcda33
param: use free hook for charp (fix leak of charp parameters)

Instead of using a "I kmalloced this" flag, we keep track of the kmalloced
strings and use that list to check if we need to kfree (in practice, the
list is very short).

This means that kparams can be const again, and plugs a leak.  This
is important for drivers/usb/gadget/nokia.c which gets modprobe/rmmod'ed
frequently on the N9000.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Reviewed-by: Takashi Iwai <tiwai@suse.de>
Cc: Artem Bityutskiy <dedekind1@gmail.com>
Tested-by: Phil Carmody <ext-phil.2.carmody@nokia.com>
kernel/params.c