Re: [PATCH] 2.6.6 memory allocation checks indrivers/pci/hotplug/shpchprm_acpi.c
From: Yury Umanets
Date: Mon Jun 07 2004 - 10:55:38 EST
On Sun, 2004-06-06 at 20:51, Randy.Dunlap wrote:
> 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 <torque@xxxxxxxxxxx>
> |
> | 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. :(
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(+)
Signed-off-by: Yury Umanets <torque@xxxxxxxxxxx>
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];
--
umka
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/