[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] [PATCH 6/9] Add cpu idle pwr mgmt to xen


  • To: "Jan Beulich" <jbeulich@xxxxxxxxxx>
  • From: "Wei, Gang" <gang.wei@xxxxxxxxx>
  • Date: Mon, 28 Apr 2008 22:41:04 +0800
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Mon, 28 Apr 2008 07:41:34 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcipEr8if3DbkqnuQ2yqUi+VHCdFJwAAO90Q
  • Thread-topic: [Xen-devel] [PATCH 6/9] Add cpu idle pwr mgmt to xen

On Monday, April 28, 2008 5:33 PM, Jan Beulich wrote:
>>>> "Wei, Gang" <gang.wei@xxxxxxxxx> 25.04.08 07:08 >>>
>> Port acpi bit register support from Linux.
>> 
>> Bit register read/write is required by deep C code.
>> Remove dependendy on acpi_sinfo.
>> 
>> Signed-off-by: Wei Gang <gang.wei@xxxxxxxxx>
>> 
>> +static void __init
>> +acpi_fadt_parse_reg(struct acpi_table_fadt *fadt)
>> +{
>> +    memcpy(&acpi_gbl_FADT, fadt, sizeof(acpi_gbl_FADT)); +
>> +    memcpy(&acpi_gbl_xpm1a_enable, &(fadt->xpm1a_event_block),
>> +            sizeof(acpi_gbl_xpm1a_enable));
>> +    memcpy(&acpi_gbl_xpm1b_enable, &(fadt->xpm1b_event_block),
>> +            sizeof(acpi_gbl_xpm1b_enable));
>> +
>> +    acpi_gbl_xpm1a_enable.address += 2;
>> +    acpi_gbl_xpm1b_enable.address += 2;
>> +}
> 
> This doesn't look right: For one, PM1b is optional, and hence if you
add
> a non-zero value to a zero address (which is commonly used as the
> presence indicator) consumers all of the sudden could consider the
block
> present. The other thing is that while on today's systems using a
literal
> 2 here may be correct, it isn't according to the ACPI spec - you'd
ought
> to add half the block width instead.

You are absolutely right for both things metioned above. Thanks for the
detailed review.

I would like to change code as below:

+       acpi_gbl_xpm1a_enable.address += acpi_gbl_FADT.pm1_event_length
/ 2.;
+          if ( acpi_gbl_xpm1b_enable.address )
+           acpi_gbl_xpm1b_enable.address +=
acpi_gbl_FADT.pm1_event_length / 2;

> 
> Jan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.