aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/utils.c')
-rw-r--r--drivers/acpi/utils.c17
1 files changed, 3 insertions, 14 deletions
diff --git a/drivers/acpi/utils.c b/drivers/acpi/utils.c
index 371ac12d25b1..cd49a3982b6a 100644
--- a/drivers/acpi/utils.c
+++ b/drivers/acpi/utils.c
@@ -136,8 +136,7 @@ acpi_extract_package(union acpi_object *package,
136 break; 136 break;
137 case 'B': 137 case 'B':
138 size_required += 138 size_required +=
139 sizeof(u8 *) + 139 sizeof(u8 *) + element->buffer.length;
140 (element->buffer.length * sizeof(u8));
141 tail_offset += sizeof(u8 *); 140 tail_offset += sizeof(u8 *);
142 break; 141 break;
143 default: 142 default:
@@ -255,7 +254,7 @@ acpi_extract_package(union acpi_object *package,
255 memcpy(tail, element->buffer.pointer, 254 memcpy(tail, element->buffer.pointer,
256 element->buffer.length); 255 element->buffer.length);
257 head += sizeof(u8 *); 256 head += sizeof(u8 *);
258 tail += element->buffer.length * sizeof(u8); 257 tail += element->buffer.length;
259 break; 258 break;
260 default: 259 default:
261 /* Should never get here */ 260 /* Should never get here */
@@ -347,22 +346,16 @@ acpi_evaluate_reference(acpi_handle handle,
347 package = buffer.pointer; 346 package = buffer.pointer;
348 347
349 if ((buffer.length == 0) || !package) { 348 if ((buffer.length == 0) || !package) {
350 printk(KERN_ERR PREFIX "No return object (len %X ptr %p)\n",
351 (unsigned)buffer.length, package);
352 status = AE_BAD_DATA; 349 status = AE_BAD_DATA;
353 acpi_util_eval_error(handle, pathname, status); 350 acpi_util_eval_error(handle, pathname, status);
354 goto end; 351 goto end;
355 } 352 }
356 if (package->type != ACPI_TYPE_PACKAGE) { 353 if (package->type != ACPI_TYPE_PACKAGE) {
357 printk(KERN_ERR PREFIX "Expecting a [Package], found type %X\n",
358 package->type);
359 status = AE_BAD_DATA; 354 status = AE_BAD_DATA;
360 acpi_util_eval_error(handle, pathname, status); 355 acpi_util_eval_error(handle, pathname, status);
361 goto end; 356 goto end;
362 } 357 }
363 if (!package->package.count) { 358 if (!package->package.count) {
364 printk(KERN_ERR PREFIX "[Package] has zero elements (%p)\n",
365 package);
366 status = AE_BAD_DATA; 359 status = AE_BAD_DATA;
367 acpi_util_eval_error(handle, pathname, status); 360 acpi_util_eval_error(handle, pathname, status);
368 goto end; 361 goto end;
@@ -381,17 +374,13 @@ acpi_evaluate_reference(acpi_handle handle,
381 374
382 if (element->type != ACPI_TYPE_LOCAL_REFERENCE) { 375 if (element->type != ACPI_TYPE_LOCAL_REFERENCE) {
383 status = AE_BAD_DATA; 376 status = AE_BAD_DATA;
384 printk(KERN_ERR PREFIX
385 "Expecting a [Reference] package element, found type %X\n",
386 element->type);
387 acpi_util_eval_error(handle, pathname, status); 377 acpi_util_eval_error(handle, pathname, status);
388 break; 378 break;
389 } 379 }
390 380
391 if (!element->reference.handle) { 381 if (!element->reference.handle) {
392 printk(KERN_WARNING PREFIX "Invalid reference in"
393 " package %s\n", pathname);
394 status = AE_NULL_ENTRY; 382 status = AE_NULL_ENTRY;
383 acpi_util_eval_error(handle, pathname, status);
395 break; 384 break;
396 } 385 }
397 /* Get the acpi_handle. */ 386 /* Get the acpi_handle. */