lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 6 Jun 2007 18:43:23 -0700
From:	"Pallipadi, Venkatesh" <venkatesh.pallipadi@...el.com>
To:	"Andrew Morton" <akpm@...ux-foundation.org>,
	"Thomas Gleixner" <tglx@...utronix.de>
Cc:	"Stable Team" <stable@...nel.org>,
	"LKML" <linux-kernel@...r.kernel.org>,
	"Len Brown" <lenb@...nel.org>, "Ingo Molnar" <mingo@...e.hu>,
	"Arjan van de Ven" <arjan@...radead.org>,
	"Andi Kleen" <ak@...e.de>,
	"Udo A. Steinberg" <us15@...inf.tu-dresden.de>,
	"Dave Jones" <davej@...hat.com>
Subject: RE: [PATCH] ACPI: Move timer broadcast and pmtimer access before C3 arbiter shutdown

 

>-----Original Message-----
>From: Andrew Morton [mailto:akpm@...ux-foundation.org] 
>Sent: Wednesday, June 06, 2007 6:39 PM
>To: Thomas Gleixner
>Cc: Pallipadi, Venkatesh; Stable Team; LKML; Len Brown; Ingo 
>Molnar; Arjan van de Ven; Andi Kleen; Udo A. Steinberg; Dave Jones
>Subject: Re: [PATCH] ACPI: Move timer broadcast and pmtimer 
>access before C3 arbiter shutdown
>
>On Wed, 06 Jun 2007 11:37:53 +0200 Thomas Gleixner 
><tglx@...utronix.de> wrote:
>
>> From: Udo A. Steinberg <us15@...inf.tu-dresden.de>
>> 
>> The chip set doc for IHC4 says:
>> 
>> 1.In general, software should not attempt any non-posted 
>accesses during
>> arbiter disable except to the ICH4's power management registers. This
>> implies that interrupt handlers for any unmasked hardware 
>interrupts and
>> SMI/NMI should check ARB_DIS status before reading from ICH devices.
>> 
>> So it's not a good idea to access ICH devices after arbiter 
>shut down. 
>> 
>> Signed-off-by: Udo A. Steinberg <us15@...inf.tu-dresden.de>
>> Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
>> 
>> ---
>>  drivers/acpi/processor_idle.c |    9 +++++----
>>  1 file changed, 5 insertions(+), 4 deletions(-)
>> 
>> Index: linux-2.6.22-rc4/drivers/acpi/processor_idle.c
>> ===================================================================
>> --- linux-2.6.22-rc4.orig/drivers/acpi/processor_idle.c	
>2007-06-06 11:47:21.000000000 +0200
>> +++ linux-2.6.22-rc4/drivers/acpi/processor_idle.c	
>2007-06-06 11:48:21.000000000 +0200
>> @@ -488,6 +488,11 @@ static void acpi_processor_idle(void)
>>  
>>  	case ACPI_STATE_C3:
>>  
>> +		/* Get start time (ticks) */
>> +		t1 = inl(acpi_gbl_FADT.xpm_timer_block.address);
>> +		/* Handle timer broadcast before bus arbiter 
>shutdown ! */
>> +		acpi_state_timer_broadcast(pr, cx, 1);
>> +
>>  		if (pr->flags.bm_check) {
>>  			if (atomic_inc_return(&c3_cpu_count) ==
>>  			    num_online_cpus()) {
>> @@ -502,10 +507,7 @@ static void acpi_processor_idle(void)
>>  			ACPI_FLUSH_CPU_CACHE();
>>  		}
>>  
>> -		/* Get start time (ticks) */
>> -		t1 = inl(acpi_gbl_FADT.xpm_timer_block.address);
>>  		/* Invoke C3 */
>> -		acpi_state_timer_broadcast(pr, cx, 1);
>>  		acpi_cstate_enter(cx);
>>  		/* Get end time (ticks) */
>>  		t2 = inl(acpi_gbl_FADT.xpm_timer_block.address);
>
>hm, this needs a bit of help to get it to work against Len's 
>current tree.
>
>However, if by "non-posted accesses" you're referring to that 
>inl(), how
>come the second one which was left in place isn't also a problem?
>

The doc says "except to the ICH4's power management registers".
It seems acpi_gbl_FADT.xpm_timer_block.address is actually OK in this
case
as it is ACPI PM timer register.
The problem we had is the access to HPET registers
inside acpi_state_timer_broadcast() and that is the one that has to be
done
before ARB_DIS.

Thanks,
Venki
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ