umid.c 802 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /*
  2. * Copyright (C) 2001, 2002 Jeff Dike (jdike@karaya.com)
  3. * Licensed under the GPL
  4. */
  5. #include "linux/stddef.h"
  6. #include "linux/kernel.h"
  7. #include "asm/errno.h"
  8. #include "init.h"
  9. #include "os.h"
  10. #include "kern.h"
  11. /* Changed by set_umid_arg and umid_file_name */
  12. int umid_is_random = 0;
  13. static int umid_inited = 0;
  14. static int __init set_umid_arg(char *name, int *add)
  15. {
  16. int err;
  17. if(umid_inited)
  18. return 0;
  19. *add = 0;
  20. err = set_umid(name, printf);
  21. if(err == -EEXIST){
  22. printf("umid '%s' already in use\n", name);
  23. umid_is_random = 1;
  24. }
  25. else if(!err)
  26. umid_inited = 1;
  27. return 0;
  28. }
  29. __uml_setup("umid=", set_umid_arg,
  30. "umid=<name>\n"
  31. " This is used to assign a unique identity to this UML machine and\n"
  32. " is used for naming the pid file and management console socket.\n\n"
  33. );