public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Aaron Young <ayoung@google.engr.sgi.com>
To: robert.moore@intel.com (Moore, Robert)
Cc: jpk@sgi.com (John Keller),
	linux-acpi@vger.kernel.org, ayoung@sgi.com,
	linux-ia64@vger.kernel.org, linux-kernel@vger.kernel.org,
	alexey.y.starikovskiy@linux.intel.com (Alexey Starikovskiy),
	len.brown@intel.com (Brown Len)
Subject: Re: [PATCH 1/1] -  increase acpi owner_id max
Date: Fri, 26 Jan 2007 16:03:29 -0800 (PST)	[thread overview]
Message-ID: <200701270003.QAA67218@google.engr.sgi.com> (raw)
In-Reply-To: <B28E9812BAF6E2498B7EC5C427F293A401C68471@orsmsx415.amr.corp.intel.com> from "Moore, Robert" at Jan 26, 2007 03:21:30 PM

> 
> The OwnerId field within a namespace node is 8 bits, and this is the
> main constraint on the maximum OwnerId. You can't simply bump up the
> number of owner ids without changing this field.

  Isn't this accomplished with the mod to aclocal.h below - i.e.
  by making a acpi_owner_id a u16 instead of a u8?: 

 -typedef u8 acpi_owner_id;
 -#define ACPI_OWNER_ID_MAX               0xFF
 +typedef u16 acpi_owner_id;
 +#define ACPI_OWNER_ID_MAX               0x3FF

> 
> If we need more than 255 owner Ids, the width of this field will have to
> be increased, or we will need to use a pointer for the field in order to
> maintain a linked list of all nodes owned by a particular owner.
> 
> Bob
> 
> > -----Original Message-----
> > From: linux-acpi-owner@vger.kernel.org [mailto:linux-acpi-
> > owner@vger.kernel.org] On Behalf Of John Keller
> > Sent: Friday, January 26, 2007 2:40 PM
> > To: linux-acpi@vger.kernel.org
> > Cc: ayoung@sgi.com; linux-ia64@vger.kernel.org; linux-
> > kernel@vger.kernel.org; John Keller
> > Subject: [PATCH 1/1] - increase acpi owner_id max
> > 
> > To support systems with large IO configurations,
> > this patch increases the number of available ACPI
> > owner ids to 1023.
> > 
> > On SN platforms, we represent every populated root
> > bus slot with an ACPI SSDT table containing info
> > for every device and PPB attached to the slot.
> > Each SSDT requires a unique ACPI owner id.
> > 
> > Signed-off-by: John Keller <jpk@sgi.com>
> > ---
> > 
> >  drivers/acpi/utilities/utmisc.c |    6 +++---
> >  include/acpi/acconfig.h         |    4 ++--
> >  include/acpi/aclocal.h          |    4 ++--
> >  3 files changed, 7 insertions(+), 7 deletions(-)
> > 
> > 
> > Index: linux/drivers/acpi/utilities/utmisc.c
> > ===================================================================
> > --- linux.orig/drivers/acpi/utilities/utmisc.c	2007-01-25
> > 11:27:25.509259412 -0600
> > +++ linux/drivers/acpi/utilities/utmisc.c	2007-01-26
> 13:16:09.551081284 -
> > 0600
> > @@ -147,7 +147,7 @@ acpi_status acpi_ut_allocate_owner_id(ac
> >  				/*
> >  				 * Construct encoded ID from the index
> and bit
> > position
> >  				 *
> > -				 * Note: Last [j].k (bit 255) is never
> used and is
> > marked
> > +				 * Note: Last [j].k (bit 1023) is never
> used and
> > is marked
> >  				 * permanently allocated (prevents +1
> overflow)
> >  				 */
> >  				*owner_id =
> > @@ -175,7 +175,7 @@ acpi_status acpi_ut_allocate_owner_id(ac
> >  	 */
> >  	status = AE_OWNER_ID_LIMIT;
> >  	ACPI_ERROR((AE_INFO,
> > -		    "Could not allocate new OwnerId (255 max),
> > AE_OWNER_ID_LIMIT"));
> > +		    "Could not allocate new OwnerId (1023 max),
> > AE_OWNER_ID_LIMIT"));
> > 
> >        exit:
> >  	(void)acpi_ut_release_mutex(ACPI_MTX_CACHES);
> > @@ -192,7 +192,7 @@ acpi_status acpi_ut_allocate_owner_id(ac
> >   *              control method or unloading a table. Either way, we
> would
> >   *              ignore any error anyway.
> >   *
> > - * DESCRIPTION: Release a table or method owner ID.  Valid IDs are 1
> -
> > 255
> > + * DESCRIPTION: Release a table or method owner ID.  Valid IDs are 1
> -
> > 1023
> >   *
> > 
> >
> ************************************************************************
> **
> > ****/
> > 
> > Index: linux/include/acpi/acconfig.h
> > ===================================================================
> > --- linux.orig/include/acpi/acconfig.h	2007-01-25
> 11:27:25.577267818 -
> > 0600
> > +++ linux/include/acpi/acconfig.h	2007-01-26 13:17:14.111002597
> -0600
> > @@ -111,9 +111,9 @@
> > 
> >  #define ACPI_SYSMEM_REGION_WINDOW_SIZE  4096
> > 
> > -/* owner_id tracking. 8 entries allows for 255 owner_ids */
> > +/* owner_id tracking. 32 entries allow for 1023 owner_ids */
> > 
> > -#define ACPI_NUM_OWNERID_MASKS          8
> > +#define ACPI_NUM_OWNERID_MASKS		32
> > 
> > 
> >
> /***********************************************************************
> **
> > *****
> >   *
> > Index: linux/include/acpi/aclocal.h
> > ===================================================================
> > --- linux.orig/include/acpi/aclocal.h	2007-01-25 11:27:25.585268807 -
> > 0600
> > +++ linux/include/acpi/aclocal.h	2007-01-26 13:20:06.148115848
> -0600
> > @@ -122,8 +122,8 @@ static char *acpi_gbl_mutex_names[ACPI_N
> > 
> >  /* Owner IDs are used to track namespace nodes for selective deletion
> */
> > 
> > -typedef u8 acpi_owner_id;
> > -#define ACPI_OWNER_ID_MAX               0xFF
> > +typedef u16 acpi_owner_id;
> > +#define ACPI_OWNER_ID_MAX               0x3FF
> > 
> >  /* This Thread ID means that the mutex is not in use (unlocked) */
> > 
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-acpi"
> in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 


  reply	other threads:[~2007-01-27  0:03 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-26 22:40 [PATCH 1/1] - increase acpi owner_id max John Keller
2007-01-26 23:21 ` Moore, Robert
2007-01-27  0:03   ` Aaron Young [this message]
2007-01-30 20:02     ` Moore, Robert
2007-01-30 20:38       ` Aaron Young
2007-01-30 21:46         ` Moore, Robert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200701270003.QAA67218@google.engr.sgi.com \
    --to=ayoung@google.engr.sgi.com \
    --cc=alexey.y.starikovskiy@linux.intel.com \
    --cc=ayoung@sgi.com \
    --cc=jpk@sgi.com \
    --cc=len.brown@intel.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robert.moore@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox