Loading drivers/acpi/apei/hest.c +11 −1 Original line number Diff line number Diff line Loading @@ -139,13 +139,23 @@ static int __init hest_parse_ghes(struct acpi_hest_header *hest_hdr, void *data) { struct platform_device *ghes_dev; struct ghes_arr *ghes_arr = data; int rc; int rc, i; if (hest_hdr->type != ACPI_HEST_TYPE_GENERIC_ERROR) return 0; if (!((struct acpi_hest_generic *)hest_hdr)->enabled) return 0; for (i = 0; i < ghes_arr->count; i++) { struct acpi_hest_header *hdr; ghes_dev = ghes_arr->ghes_devs[i]; hdr = *(struct acpi_hest_header **)ghes_dev->dev.platform_data; if (hdr->source_id == hest_hdr->source_id) { pr_warning(FW_WARN HEST_PFX "Duplicated hardware error source ID: %d.\n", hdr->source_id); return -EIO; } } ghes_dev = platform_device_alloc("GHES", hest_hdr->source_id); if (!ghes_dev) return -ENOMEM; Loading drivers/acpi/osl.c +0 −17 Original line number Diff line number Diff line Loading @@ -1332,23 +1332,6 @@ int acpi_resources_are_enforced(void) } EXPORT_SYMBOL(acpi_resources_are_enforced); /* * Create and initialize a spinlock. */ acpi_status acpi_os_create_lock(acpi_spinlock *out_handle) { spinlock_t *lock; lock = ACPI_ALLOCATE(sizeof(spinlock_t)); if (!lock) return AE_NO_MEMORY; spin_lock_init(lock); *out_handle = lock; return AE_OK; } /* * Deallocate the memory for a spinlock. */ Loading include/acpi/acpiosxf.h +3 −0 Original line number Diff line number Diff line Loading @@ -98,8 +98,11 @@ acpi_os_table_override(struct acpi_table_header *existing_table, /* * Spinlock primitives */ #ifndef acpi_os_create_lock acpi_status acpi_os_create_lock(acpi_spinlock *out_handle); #endif void acpi_os_delete_lock(acpi_spinlock handle); Loading include/acpi/platform/aclinux.h +18 −0 Original line number Diff line number Diff line Loading @@ -159,6 +159,24 @@ static inline void *acpi_os_acquire_object(acpi_cache_t * cache) } while (0) #endif /* * When lockdep is enabled, the spin_lock_init() macro stringifies it's * argument and uses that as a name for the lock in debugging. * By executing spin_lock_init() in a macro the key changes from "lock" for * all locks to the name of the argument of acpi_os_create_lock(), which * prevents lockdep from reporting false positives for ACPICA locks. */ #define acpi_os_create_lock(__handle) \ ({ \ spinlock_t *lock = ACPI_ALLOCATE(sizeof(*lock)); \ \ if (lock) { \ *(__handle) = lock; \ spin_lock_init(*(__handle)); \ } \ lock ? AE_OK : AE_NO_MEMORY; \ }) #endif /* __KERNEL__ */ #endif /* __ACLINUX_H__ */ Loading
drivers/acpi/apei/hest.c +11 −1 Original line number Diff line number Diff line Loading @@ -139,13 +139,23 @@ static int __init hest_parse_ghes(struct acpi_hest_header *hest_hdr, void *data) { struct platform_device *ghes_dev; struct ghes_arr *ghes_arr = data; int rc; int rc, i; if (hest_hdr->type != ACPI_HEST_TYPE_GENERIC_ERROR) return 0; if (!((struct acpi_hest_generic *)hest_hdr)->enabled) return 0; for (i = 0; i < ghes_arr->count; i++) { struct acpi_hest_header *hdr; ghes_dev = ghes_arr->ghes_devs[i]; hdr = *(struct acpi_hest_header **)ghes_dev->dev.platform_data; if (hdr->source_id == hest_hdr->source_id) { pr_warning(FW_WARN HEST_PFX "Duplicated hardware error source ID: %d.\n", hdr->source_id); return -EIO; } } ghes_dev = platform_device_alloc("GHES", hest_hdr->source_id); if (!ghes_dev) return -ENOMEM; Loading
drivers/acpi/osl.c +0 −17 Original line number Diff line number Diff line Loading @@ -1332,23 +1332,6 @@ int acpi_resources_are_enforced(void) } EXPORT_SYMBOL(acpi_resources_are_enforced); /* * Create and initialize a spinlock. */ acpi_status acpi_os_create_lock(acpi_spinlock *out_handle) { spinlock_t *lock; lock = ACPI_ALLOCATE(sizeof(spinlock_t)); if (!lock) return AE_NO_MEMORY; spin_lock_init(lock); *out_handle = lock; return AE_OK; } /* * Deallocate the memory for a spinlock. */ Loading
include/acpi/acpiosxf.h +3 −0 Original line number Diff line number Diff line Loading @@ -98,8 +98,11 @@ acpi_os_table_override(struct acpi_table_header *existing_table, /* * Spinlock primitives */ #ifndef acpi_os_create_lock acpi_status acpi_os_create_lock(acpi_spinlock *out_handle); #endif void acpi_os_delete_lock(acpi_spinlock handle); Loading
include/acpi/platform/aclinux.h +18 −0 Original line number Diff line number Diff line Loading @@ -159,6 +159,24 @@ static inline void *acpi_os_acquire_object(acpi_cache_t * cache) } while (0) #endif /* * When lockdep is enabled, the spin_lock_init() macro stringifies it's * argument and uses that as a name for the lock in debugging. * By executing spin_lock_init() in a macro the key changes from "lock" for * all locks to the name of the argument of acpi_os_create_lock(), which * prevents lockdep from reporting false positives for ACPICA locks. */ #define acpi_os_create_lock(__handle) \ ({ \ spinlock_t *lock = ACPI_ALLOCATE(sizeof(*lock)); \ \ if (lock) { \ *(__handle) = lock; \ spin_lock_init(*(__handle)); \ } \ lock ? AE_OK : AE_NO_MEMORY; \ }) #endif /* __KERNEL__ */ #endif /* __ACLINUX_H__ */