svn commit: r233305 - head/sys/x86/acpica

Bruce Evans brde at optusnet.com.au
Thu Mar 22 13:28:08 UTC 2012


On Thu, 22 Mar 2012, John Baldwin wrote:

> Log:
>  Mark the 'lapics' and 'ioapics' arrays here static since they are
>  private to this file.  The 'lapics' array was actually shadowing a
>  completely different 'lapics' array that is private to local_apic.c.
>
>  Reported by:	bde
>  MFC after:	2 weeks
>
> Modified:
>  head/sys/x86/acpica/madt.c
>
> Modified: head/sys/x86/acpica/madt.c
> ==============================================================================
> --- head/sys/x86/acpica/madt.c	Thu Mar 22 11:47:06 2012	(r233304)
> +++ head/sys/x86/acpica/madt.c	Thu Mar 22 12:23:32 2012	(r233305)
> @@ -53,12 +53,12 @@ __FBSDID("$FreeBSD$");
> struct ioapic_info {
> 	void *io_apic;
> 	UINT32 io_vector;
> -} ioapics[MAX_APIC_ID + 1];
> +} static ioapics[MAX_APIC_ID + 1];
>
> struct lapic_info {
> 	u_int la_enabled:1;
> 	u_int la_acpi_id:8;
> -} lapics[MAX_APIC_ID + 1];
> +} static lapics[MAX_APIC_ID + 1];
>
> static int madt_found_sci_override;
> static ACPI_TABLE_MADT *madt;

Thanks, but that's any even weirder style.  It's in between
"int static foo;" and "int static unsigned foo;" for weirdness.

Normal style gives:

%%%
struct lapic_info {
 	u_int	la_enabled:1;
 	u_int	la_acpi_id:8;
};

static struct lapic_info lapics[MAX_APIC_ID + 1];
%%%

etc.  This also fixes some indentation.

The struct tag for struct ioapic_info is not used outside of its
declaration, so a non-separate type declaration would be more reasonable
for it (since this gives the only way to omit the tag:

static struct {
 	void	*io_apic;
 	u_int	io_vector;
} ioapics[MAX_APIC_ID + 1];

This also translates UINT32 from windosspeak.  There is no need for
uint32_t since this is x86, and other places use u_int.

Bruce


More information about the svn-src-head mailing list