sparc64: check if a client is allowed to register for MDESC notifications
Check if a client is supported, by comparing against a whitelist, to register for notifications from Machine Description (MDESC) Signed-off-by: Jagannathan Raman <jag.raman@oracle.com> Reviewed-by: Liam Merwick <liam.merwick@oracle.com> Reviewed-by: Shannon Nelson <shannon.nelson@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
0542eb7de7
commit
110f2264b3
@ -284,9 +284,26 @@ static struct mdesc_notifier_client *client_list;
|
||||
|
||||
void mdesc_register_notifier(struct mdesc_notifier_client *client)
|
||||
{
|
||||
bool supported = false;
|
||||
u64 node;
|
||||
int i;
|
||||
|
||||
mutex_lock(&mdesc_mutex);
|
||||
|
||||
/* check to see if the node is supported for registration */
|
||||
for (i = 0; md_node_ops_table[i].name != NULL; i++) {
|
||||
if (strcmp(md_node_ops_table[i].name, client->node_name) == 0) {
|
||||
supported = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!supported) {
|
||||
pr_err("MD: %s node not supported\n", client->node_name);
|
||||
mutex_unlock(&mdesc_mutex);
|
||||
return;
|
||||
}
|
||||
|
||||
client->next = client_list;
|
||||
client_list = client;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user