xref: /linux/arch/um/kernel/umid.c (revision 24bce201d79807b668bf9d9e0aca801c5c0d5f78)
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (C) 2001 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
4  */
5 
6 #include <asm/errno.h>
7 #include <init.h>
8 #include <kern.h>
9 #include <os.h>
10 
11 /* Changed by set_umid_arg */
12 static int umid_inited = 0;
13 
14 static int __init set_umid_arg(char *name, int *add)
15 {
16 	int err;
17 
18 	if (umid_inited) {
19 		os_warn("umid already set\n");
20 		return 0;
21 	}
22 
23 	*add = 0;
24 	err = set_umid(name);
25 	if (err == -EEXIST)
26 		os_warn("umid '%s' already in use\n", name);
27 	else if (!err)
28 		umid_inited = 1;
29 
30 	return 0;
31 }
32 
33 __uml_setup("umid=", set_umid_arg,
34 "umid=<name>\n"
35 "    This is used to assign a unique identity to this UML machine and\n"
36 "    is used for naming the pid file and management console socket.\n\n"
37 );
38 
39