On 2018-04-24 22:55:20 [+0200], Rafael J. Wysocki wrote: > > diff --git a/include/acpi/platform/aclinux.h b/include/acpi/platform/aclinux.h > > index a0b232703302..38eaa3235210 100644 > > --- a/include/acpi/platform/aclinux.h > > +++ b/include/acpi/platform/aclinux.h > > @@ -102,6 +102,7 @@ > > > > #define acpi_cache_t struct kmem_cache > > #define acpi_spinlock spinlock_t * > > +#define acpi_raw_spinlock raw_spinlock_t * > > I would prefer to redefine acpi_spinlock as raw_spinlock_t and then > acpi_os_acquire/release_lock() as > raw_spin_lock_irqsave/unlock_irqrestore(), respectively. I would rather not convert all current ACPI spinlock_t into raw_spinlock_t. Only those which are required to. I don't know if there is anything special about acpi_gbl_hardware_lock but we have other raw locks already (like erst_lock or c3_lock). I could come up with something like acpi_os_acquire_rawlock() if you prefer this instead. > > #define acpi_cpu_flags unsigned long > > > > /* Use native linux version of acpi_os_allocate_zeroed */ > > @@ -120,6 +121,19 @@ > > #define ACPI_USE_ALTERNATE_PROTOTYPE_acpi_os_get_thread_id > > #define ACPI_USE_ALTERNATE_PROTOTYPE_acpi_os_create_lock > > > > +#define acpi_os_create_raw_lock(__handle) \ > > +({ \ > > + raw_spinlock_t *lock = ACPI_ALLOCATE(sizeof(*lock)); \ > > + \ > > + if (lock) { \ > > + *(__handle) = lock; \ > > + raw_spin_lock_init(*(__handle)); \ > > + } \ > > + lock ? AE_OK : AE_NO_MEMORY; \ > > +}) > > + > > +#define acpi_os_delete_raw_lock(__handle) kfree(__handle) > > + > > /* > > * OSL interfaces used by debugger/disassembler > > */ > > -- -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html