add kmalloc check in drviers/pcmcia/rsrc_mgr.c (245-ac16)
PATCH 1/1 add kmalloc check in drviers/pcmcia/rsrc_mgr.c (245-ac16)
Hi.
The patch below adds a kmalloc check to drivers/pcmcmia/rsrc_mgr.c. Against 245-ac16 but aplies to 256p6 also. Reported a while back by the stanford team.
drivers/pcmcia/rsrc_mgr.c +5 -0
@@ -189,6 +189,11 @@/* First, what does a floating port look like? */ b =kmalloc (256 ,GFP_KERNEL ); +if (!b) { +printk (" -- aborting.\n" ); +printk (KERN_ERR "Out of memory." ); +return ; + }memset (b,0 ,256 );for (i = base, most =0 ; i < base+num; i +=8 ) {if (check_io_resource (i,8 ))
Signature · 6 lines
Regards,
Rasmus([email protected])
"The obvious mathematical breakthrough would be development of an easy way
to factor large prime numbers."
-- Bill Gates, The Road Ahead, Viking Penguin (1995)drivers/pcmcia/rsrc_mgr.c line 196
Quoted 5 lines · Rasmus Andersen
drivers/pcmcia/rsrc_mgr.c +5
-0+if (!b) { +printk (" -- aborting.\n" ); +printk (KERN_ERR "Out of memory." ); +return ; + }
Why not printk(KERN_ERR "rsrc_mgr: Out of memory.\n"); ? Then at least people will know what it was that ran out of memory.
Eric
Em Sat, Jun 23, 2001 at 07:09:37PM +0200, Eric Lammerts escreveu:
Quoted 11 lines · Rasmus Andersen
drivers/pcmcia/rsrc_mgr.c line 196
Quoted 6 lines
drivers/pcmcia/rsrc_mgr.c +5
-0+if (!b) { +printk (" -- aborting.\n" ); +printk (KERN_ERR "Out of memory." ); +return ; + }Why not
printk(KERN_ERR "rsrc_mgr: Out of memory.\n"); ? Then at least people will know what it was that ran out of memory.
Better yet:
printk(KERN_ERR __FUNCTION__ "Out of memory.");
Then if you move the code to other function or if you change the name of the function you don't have to go all over the code doing s/old_function_name/new_function_name/g
- Arnaldo
On Sat, Jun 23, 2001 at 02:30:06PM -0300, Arnaldo Carvalho de Melo wrote:
[...]
Quoted 5 lines
printk(KERN_ERR __FUNCTION__ "Out of memory.");Then if you move the code to other function or if you change the name of the function you don't have to go all over the code doing s/old_function_name/new_function_name/g
Excellent suggestion. How about this one:
--- linux-245-ac16-clean/drivers/pcmcia/rsrc_mgr.c Sat May 19 20:59:21 2001+++ linux-245-ac16/drivers/pcmcia/rsrc_mgr.c Sat Jun 23 15:06:54 2001
@@ -189,6 +189,11 @@
/* First, what does a floating port look like? */
b = kmalloc(256, GFP_KERNEL);
+ if (!b) {
+ printk(" -- aborting.\n");
+ printk(KERN_ERR __FUNCTION__ ": Out of memory.");
+ return;
+ }
memset(b, 0, 256);
for (i = base, most = 0; i < base+num; i += 8) {
if (check_io_resource(i, 8))Signature · 5 lines
Regards,
Rasmus([email protected])
You don't become a failure until you're satisfied with being one.
-- Anonymousdrivers/pcmcia/rsrc_mgr.c line 196
Quoted 7 lines · Rasmus Andersen
Excellent suggestion. How about this one:
drivers/pcmcia/rsrc_mgr.c +5
-0+if (!b) { +printk (" -- aborting.\n" ); + printk(KERN_ERR __FUNCTION__ ": Out of memory."); +return ; + }
There are zillions of functions called 'init_module' in the kernel. I think my suggestion was better (and it had a \n at the end!)
Eric
On Sun, Jun 24, 2001 at 10:52:31PM +0200, Eric Lammerts wrote:
[...]
Quoted 2 lines
There are zillions of functions called '
init_module' in the kernel. I think my suggestion was better (and it had a \n at the end!)
Agreed. Actually, 'ouch' on point two :) BTW, was it intentional that you dropped the maintainer from the recipient-list back then?
--- linux-245-ac16-clean/drivers/pcmcia/rsrc_mgr.c Sat May 19 20:59:21 2001+++ linux-245-ac16/drivers/pcmcia/rsrc_mgr.c Sat Jun 23 15:06:54 2001
@@ -189,6 +189,11 @@
/* First, what does a floating port look like? */
b = kmalloc(256, GFP_KERNEL);
+ if (!b) {
+ printk(" -- aborting.\n");
+ printk(KERN_ERR "rsrc_mgr: Out of memory.\n");
+ return;
+ }
memset(b, 0, 256);
for (i = base, most = 0; i < base+num; i += 8) {
if (check_io_resource(i, 8))Signature · 6 lines
Regards,
Rasmus([email protected])
You know how dumb the average guy is? Well, by definition, half
of them are even dumber than that.
-- J.R. "Bob" Dobbs Quoted 7 lines · Rasmus Andersen
On Sun, Jun 24, 2001 at 10:52:31PM +0200, Eric Lammerts wrote:
[...]Quoted 2 lines
There are zillions of functions called '
init_module' in the kernel. I think my suggestion was better (and it had a \n at the end!)Agreed. Actually, 'ouch' on point two :) BTW, was it intentional that you dropped the maintainer from the recipient-list back then?
No, sorry.
Eric