Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'acpi-fixes-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPICA fixes from Rafael Wysocki:

- _INI regression fix from Tomasz Nowicki.

- Fix for a possible memory leak in _OSI support routine from Jung-uk
Kim.

- Fix for a possible buffer overflow during field unit read operation
from Bob Moore.

* tag 'acpi-fixes-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
ACPICA: ACPICA: Fix for _INI regression
ACPICA: _OSI support: Fix possible memory leak
ACPICA: Fix possible buffer overflow during a field unit read operation

+16 -2
+13 -1
drivers/acpi/acpica/exfldio.c
··· 720 720 721 721 if ((obj_desc->common_field.start_field_bit_offset == 0) && 722 722 (obj_desc->common_field.bit_length == access_bit_width)) { 723 - status = acpi_ex_field_datum_io(obj_desc, 0, buffer, ACPI_READ); 723 + if (buffer_length >= sizeof(u64)) { 724 + status = 725 + acpi_ex_field_datum_io(obj_desc, 0, buffer, 726 + ACPI_READ); 727 + } else { 728 + /* Use raw_datum (u64) to handle buffers < 64 bits */ 729 + 730 + status = 731 + acpi_ex_field_datum_io(obj_desc, 0, &raw_datum, 732 + ACPI_READ); 733 + ACPI_MEMCPY(buffer, &raw_datum, buffer_length); 734 + } 735 + 724 736 return_ACPI_STATUS(status); 725 737 } 726 738
+1
drivers/acpi/acpica/nsinit.c
··· 558 558 ACPI_DEBUG_EXEC(acpi_ut_display_init_pathname 559 559 (ACPI_TYPE_METHOD, device_node, METHOD_NAME__INI)); 560 560 561 + ACPI_MEMSET(info, 0, sizeof(struct acpi_evaluate_info)); 561 562 info->prefix_node = device_node; 562 563 info->pathname = METHOD_NAME__INI; 563 564 info->parameters = NULL;
+2 -1
drivers/acpi/acpica/utosi.c
··· 349 349 return_value = 0; 350 350 status = acpi_os_acquire_mutex(acpi_gbl_osi_mutex, ACPI_WAIT_FOREVER); 351 351 if (ACPI_FAILURE(status)) { 352 - return (status); 352 + acpi_ut_remove_reference(return_desc); 353 + return_ACPI_STATUS(status); 353 354 } 354 355 355 356 /* Lookup the interface in the global _OSI list */