Thread (24 messages) 24 messages, 3 authors, 2013-03-22

Re: [PATCH2/11] Add PRRN Event Handler

From: Paul Mackerras <hidden>
Date: 2013-03-14 08:51:55

On Fri, Mar 08, 2013 at 10:00:09PM -0600, Nathan Fontenot wrote:
From: Jesse Larrew <redacted>

A PRRN event is signaled via the RTAS event-scan mechanism, which
returns a Hot Plug Event message "fixed part" indicating "Platform
Resource Reassignment". In response to the Hot Plug Event message,
we must call ibm,update-nodes to determine which resources were
reassigned and then ibm,update-properties to obtain the new affinity
information about those resources.

The PRRN event-scan RTAS message contains only the "fixed part" with
the "Type" field set to the value 160 and no Extended Event Log. The
four-byte Extended Event Log Length field is repurposed (since no
Extended Event Log message is included) to pass the "scope" parameter
that causes the ibm,update-nodes to return the nodes affected by the
specific resource reassignment.

This patch adds a handler in rtasd for PRRN RTAS events. The function
pseries_devicetree_update() (from mobility.c) is used to make the
ibm,update-nodes/ibm,update-properties RTAS calls. Updating the NUMA maps
(handled by a subsequent patch) will require significant processing,
so pseries_devicetree_update() is called from an asynchronous workqueue
to allow rtasd to continue processing events.

Signed-off-by: Nathan Fontenot <redacted>
[snip]
+static s32 update_scope;
Do we have a guarantee that there can only be one of these events
outstanding at a time?  If so it would be nice to document that in a
comment next to this declaration, so we know in future that this is
why this is safe.

Paul.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help