|
|
@@ -274,27 +274,16 @@ void pSeries_log_error(char *buf, unsigned int err_type, int fatal)
|
|
|
}
|
|
|
|
|
|
#ifdef CONFIG_PPC_PSERIES
|
|
|
-static s32 prrn_update_scope;
|
|
|
-
|
|
|
-static void prrn_work_fn(struct work_struct *work)
|
|
|
+static void handle_prrn_event(s32 scope)
|
|
|
{
|
|
|
/*
|
|
|
* For PRRN, we must pass the negative of the scope value in
|
|
|
* the RTAS event.
|
|
|
*/
|
|
|
- pseries_devicetree_update(-prrn_update_scope);
|
|
|
+ pseries_devicetree_update(-scope);
|
|
|
numa_update_cpu_topology(false);
|
|
|
}
|
|
|
|
|
|
-static DECLARE_WORK(prrn_work, prrn_work_fn);
|
|
|
-
|
|
|
-static void prrn_schedule_update(u32 scope)
|
|
|
-{
|
|
|
- flush_work(&prrn_work);
|
|
|
- prrn_update_scope = scope;
|
|
|
- schedule_work(&prrn_work);
|
|
|
-}
|
|
|
-
|
|
|
static void handle_rtas_event(const struct rtas_error_log *log)
|
|
|
{
|
|
|
if (rtas_error_type(log) != RTAS_TYPE_PRRN || !prrn_is_enabled())
|
|
|
@@ -303,7 +292,7 @@ static void handle_rtas_event(const struct rtas_error_log *log)
|
|
|
/* For PRRN Events the extended log length is used to denote
|
|
|
* the scope for calling rtas update-nodes.
|
|
|
*/
|
|
|
- prrn_schedule_update(rtas_error_extended_log_length(log));
|
|
|
+ handle_prrn_event(rtas_error_extended_log_length(log));
|
|
|
}
|
|
|
|
|
|
#else
|