Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Mar 2012 00:28:00 +1100 (EST)
From:      Bruce Evans <brde@optusnet.com.au>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: svn commit: r233305 - head/sys/x86/acpica
Message-ID:  <20120323001046.H2349@besplex.bde.org>
In-Reply-To: <201203221223.q2MCNW6j024123@svn.freebsd.org>
References:  <201203221223.q2MCNW6j024123@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120323001046.H2349>