X-Git-Url: http://git.onelab.eu/?p=linux-2.6.git;a=blobdiff_plain;f=drivers%2Facpi%2Fsleep%2Fproc.c;h=fd7c5a0649afdd080459a9210e916836f18bd5bd;hp=607cfddc753a69aa6700d35a5d631452f3004c53;hb=f7f1b0f1e2fbadeab12d24236000e778aa9b1ead;hpb=e3f6fb6212a7102bdb56ba38fa1e98fe72950475 diff --git a/drivers/acpi/sleep/proc.c b/drivers/acpi/sleep/proc.c index 607cfddc7..fd7c5a064 100644 --- a/drivers/acpi/sleep/proc.c +++ b/drivers/acpi/sleep/proc.c @@ -84,10 +84,11 @@ static int acpi_system_alarm_seq_show(struct seq_file *seq, void *offset) u32 sec, min, hr; u32 day, mo, yr; unsigned char rtc_control = 0; + unsigned long flags; ACPI_FUNCTION_TRACE("acpi_system_alarm_seq_show"); - spin_lock(&rtc_lock); + spin_lock_irqsave(&rtc_lock, flags); sec = CMOS_READ(RTC_SECONDS_ALARM); min = CMOS_READ(RTC_MINUTES_ALARM); @@ -109,7 +110,7 @@ static int acpi_system_alarm_seq_show(struct seq_file *seq, void *offset) else yr = CMOS_READ(RTC_YEAR); - spin_unlock(&rtc_lock); + spin_unlock_irqrestore(&rtc_lock, flags); if (!(rtc_control & RTC_DM_BINARY) || RTC_ALWAYS_BCD) { BCD_TO_BIN(sec);