android_kernel_xiaomi_sm7250/arch/um/kernel/umid.c
Jeff Dike 2264c475e4 [PATCH] uml: separate libc-dependent umid code
I reworked Gennady's umid OS abstraction patch because the code shouldn't
be moved entirely to os.  As it turns out, I moved most of it anyway.  This
patch is the minimal one needed to move the code and have it work.
It turns out that the concept of the umid is OS-independent, but
almost everything else about the implementation is OS-dependent.

This is code movement without cleanup - a follow-on patch tidies
everything up without shuffling code around.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-06 08:33:47 -08:00

42 lines
802 B
C

/*
* Copyright (C) 2001, 2002 Jeff Dike (jdike@karaya.com)
* Licensed under the GPL
*/
#include "linux/stddef.h"
#include "linux/kernel.h"
#include "asm/errno.h"
#include "init.h"
#include "os.h"
#include "kern.h"
/* Changed by set_umid_arg and umid_file_name */
int umid_is_random = 0;
static int umid_inited = 0;
static int __init set_umid_arg(char *name, int *add)
{
int err;
if(umid_inited)
return 0;
*add = 0;
err = set_umid(name, printf);
if(err == -EEXIST){
printf("umid '%s' already in use\n", name);
umid_is_random = 1;
}
else if(!err)
umid_inited = 1;
return 0;
}
__uml_setup("umid=", set_umid_arg,
"umid=<name>\n"
" This is used to assign a unique identity to this UML machine and\n"
" is used for naming the pid file and management console socket.\n\n"
);