Skip to contentSkip to conversation

2.6.6 memory allocation checks in drivers/pci/hotplug/shpchprm_acpi.c

PATCH In review Yury Umanets 3 participants 5 messages Jun 6, 2004 – Jun 8, 2004

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 2.6.6 memory allocation checks in drivers/pci/hotplug/shpchprm_acpi.c

Adds memory allocation checks in acpi_get__hpp()

 ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c |    2 ++
 1 files changed, 2 insertions(+)

diff -rupN ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c
--- ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c Mon May 10
05:32:28 2004
+++ ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c Wed Jun
2 14:28:07 2004
@@ -218,6 +218,8 @@ static void acpi_get__hpp ( struct acpi_
}

ab->_hpp = kmalloc (sizeof (struct acpi__hpp), GFP_KERNEL);
+ if (!ab->_hpp)
+ goto free_and_return;
memset(ab->_hpp, 0, sizeof(struct acpi__hpp));

ab->_hpp->cache_line_size = nui[0];

Signature · 1 line
umka
#1 lore raw

On Sun, 06 Jun 2004 19:20:51 +0300 Yury Umanets wrote:

| Adds memory allocation checks in acpi_get__hpp()
| 
|  ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c |    2 ++
|  1 files changed, 2 insertions(+)
| 
| Signed-off-by: Yury Umanets <[email protected]>
| 
| diff -rupN ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c
| ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c
| --- ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c	Mon May 10
| 05:32:28 2004
| +++ ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c	Wed Jun 
| 2 14:28:07 2004
| @@ -218,6 +218,8 @@ static void acpi_get__hpp ( struct acpi_
|  	}
|  
|  	ab->_hpp = kmalloc (sizeof (struct acpi__hpp), GFP_KERNEL);
| +	if (!ab->_hpp)
| +		goto free_and_return;
|  	memset(ab->_hpp, 0, sizeof(struct acpi__hpp));
|  
|  	ab->_hpp->cache_line_size	= nui[0];
| 
| -- 

All other failure paths in this function use err() to inform the console about what's happening... so flip a coin, I guess:
add a message or say that ACPI already has too many messages. :(

--
~Randy

#2 lore raw
Quoted 27 lines · Randy.Dunlap

On Sun, 06 Jun 2004 19:20:51 +0300 Yury Umanets wrote:

| Adds memory allocation checks in acpi_get__hpp()
| 
|  ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c |    2 ++
|  1 files changed, 2 insertions(+)
| 
| Signed-off-by: Yury Umanets <[email protected]>
| 
| diff -rupN ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c
| ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c
| --- ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c	Mon May 10
| 05:32:28 2004
| +++ ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c	Wed Jun 
| 2 14:28:07 2004
| @@ -218,6 +218,8 @@ static void acpi_get__hpp ( struct acpi_
|  	}
|  
|  	ab->_hpp = kmalloc (sizeof (struct acpi__hpp), GFP_KERNEL);
| +	if (!ab->_hpp)
| +		goto free_and_return;
|  	memset(ab->_hpp, 0, sizeof(struct acpi__hpp));
|  
|  	ab->_hpp->cache_line_size	= nui[0];
| 
| -- 
Quoted 3 lines

All other failure paths in this function use err() to inform the console about what's happening... so flip a coin, I guess:
add a message or say that ACPI already has too many messages. :(

Hello Randy!

Fixed versions for both (shpchprm_acpi.c and pciehprm_acpi.c) are below:

 ./linux-2.6.6-modified/drivers/pci/hotplug/pciehprm_acpi.c |    4 ++++
 1 files changed, 4 insertions(+)

diff -rupN ./linux-2.6.6/drivers/pci/hotplug/pciehprm_acpi.c ./linux-2.6.6-modified/drivers/pci/hotplug/pciehprm_acpi.c
--- ./linux-2.6.6/drivers/pci/hotplug/pciehprm_acpi.c Mon May 10
05:33:19 2004
+++ ./linux-2.6.6-modified/drivers/pci/hotplug/pciehprm_acpi.c Mon Jun
7 18:40:15 2004
@@ -218,6 +218,10 @@ static void acpi_get__hpp ( struct acpi_
}

ab->_hpp = kmalloc (sizeof (struct acpi__hpp), GFP_KERNEL);
+ if (!ab->_hpp) {
+ err ("acpi_pciehprm:%s alloc for _HPP fail\n", path_name);
+ goto free_and_return;
+ }
memset(ab->_hpp, 0, sizeof(struct acpi__hpp));

ab->_hpp->cache_line_size = nui[0];

 ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c |    4 ++++
 1 files changed, 4 insertions(+)

diff -rupN ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c
--- ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c Mon May 10
05:32:28 2004
+++ ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c Mon Jun
7 18:39:01 2004
@@ -218,6 +218,10 @@ static void acpi_get__hpp ( struct acpi_
}

ab->_hpp = kmalloc (sizeof (struct acpi__hpp), GFP_KERNEL);
+ if (!ab->_hpp) {
+ err ("acpi_shpchprm:%s alloc for _HPP fail\n", path_name);
+ goto free_and_return;
+ }
memset(ab->_hpp, 0, sizeof(struct acpi__hpp));

ab->_hpp->cache_line_size = nui[0];

Signature · 1 line
umka
#3 lore raw
In reply to Randy.Dunlap

Hello Randy, Yury,

Em Sun, Jun 06, 2004 at 10:51:06AM -0700, Randy.Dunlap escreveu:

| On Sun, 06 Jun 2004 19:20:51 +0300 Yury Umanets wrote:
| 
| | Adds memory allocation checks in acpi_get__hpp()
| | 
| |  ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c |    2 ++
| |  1 files changed, 2 insertions(+)
| | 
| | Signed-off-by: Yury Umanets <[email protected]>
| | 
| | diff -rupN ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c
| | ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c
| | --- ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c	Mon May 10
| | 05:32:28 2004
| | +++ ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c	Wed Jun 
| | 2 14:28:07 2004
| | @@ -218,6 +218,8 @@ static void acpi_get__hpp ( struct acpi_
| |  	}
| |  
| |  	ab->_hpp = kmalloc (sizeof (struct acpi__hpp), GFP_KERNEL);
| | +	if (!ab->_hpp)
| | +		goto free_and_return;
| |  	memset(ab->_hpp, 0, sizeof(struct acpi__hpp));
| |  
| |  	ab->_hpp->cache_line_size	= nui[0];
| | 
| | -- 
| 
| All other failure paths in this function use err() to inform the
| console about what's happening...  so flip a coin, I guess:
| add a message or say that ACPI already has too many messages.  :(

I sent the same patch for this some weeks ago. Dely accepted, but it was
not applyed. Don't know why.

Signature · 2 lines
Luiz Fernando N. Capitulino
<http://www.telecentros.sp.gov.br>
#4 lore raw
Quoted 35 lines · Luiz Fernando N. Capitulino

Hello Randy, Yury,

Em Sun, Jun 06, 2004 at 10:51:06AM -0700, Randy.Dunlap escreveu:

| On Sun, 06 Jun 2004 19:20:51 +0300 Yury Umanets wrote:
| 
| | Adds memory allocation checks in acpi_get__hpp()
| | 
| |  ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c |    2 ++
| |  1 files changed, 2 insertions(+)
| | 
| | Signed-off-by: Yury Umanets <[email protected]>
| | 
| | diff -rupN ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c
| | ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c
| | --- ./linux-2.6.6/drivers/pci/hotplug/shpchprm_acpi.c	Mon May 10
| | 05:32:28 2004
| | +++ ./linux-2.6.6-modified/drivers/pci/hotplug/shpchprm_acpi.c	Wed Jun 
| | 2 14:28:07 2004
| | @@ -218,6 +218,8 @@ static void acpi_get__hpp ( struct acpi_
| |  	}
| |  
| |  	ab->_hpp = kmalloc (sizeof (struct acpi__hpp), GFP_KERNEL);
| | +	if (!ab->_hpp)
| | +		goto free_and_return;
| |  	memset(ab->_hpp, 0, sizeof(struct acpi__hpp));
| |  
| |  	ab->_hpp->cache_line_size	= nui[0];
| | 
| | -- 
| 
| All other failure paths in this function use err() to inform the
| console about what's happening...  so flip a coin, I guess:
| add a message or say that ACPI already has too many messages.  :(
Quoted 2 lines

I sent the same patch for this some weeks ago. Dely accepted, but it was
not applyed. Don't know why.

Hello,

I'm not sure that I know the order of patches reviewing/applying, but it seems to be depend on contact person busyness and importance of the patch. This patch is not so important though :)

Signature · 1 line
umka