]>
Commit | Line | Data |
---|---|---|
457c8996 | 1 | // SPDX-License-Identifier: GPL-2.0-only |
1da177e4 LT |
2 | /* |
3 | * linux/init/version.c | |
4 | * | |
5 | * Copyright (C) 1992 Theodore Ts'o | |
6 | * | |
7 | * May be freely distributed as part of Linux. | |
8 | */ | |
9 | ||
92045954 | 10 | #include <generated/compile.h> |
9afb719e | 11 | #include <linux/build-salt.h> |
1fdd7433 | 12 | #include <linux/elfnote-lto.h> |
e4f02fda | 13 | #include <linux/export.h> |
5a704629 DM |
14 | #include <linux/init.h> |
15 | #include <linux/printk.h> | |
1da177e4 LT |
16 | #include <linux/uts.h> |
17 | #include <linux/utsname.h> | |
273b281f | 18 | #include <generated/utsrelease.h> |
1da177e4 | 19 | #include <linux/version.h> |
0bb80f24 | 20 | #include <linux/proc_ns.h> |
1da177e4 | 21 | |
4865ecf1 | 22 | struct uts_namespace init_uts_ns = { |
9a56493f | 23 | .ns.count = REFCOUNT_INIT(2), |
4865ecf1 SH |
24 | .name = { |
25 | .sysname = UTS_SYSNAME, | |
26 | .nodename = UTS_NODENAME, | |
27 | .release = UTS_RELEASE, | |
28 | .version = UTS_VERSION, | |
29 | .machine = UTS_MACHINE, | |
30 | .domainname = UTS_DOMAINNAME, | |
31 | }, | |
59607db3 | 32 | .user_ns = &init_user_ns, |
435d5f4b | 33 | .ns.inum = PROC_UTS_INIT_INO, |
33c42940 AV |
34 | #ifdef CONFIG_UTS_NS |
35 | .ns.ops = &utsns_operations, | |
36 | #endif | |
1da177e4 | 37 | }; |
4865ecf1 | 38 | EXPORT_SYMBOL_GPL(init_uts_ns); |
3eb3c740 | 39 | |
5a704629 DM |
40 | static int __init early_hostname(char *arg) |
41 | { | |
42 | size_t bufsize = sizeof(init_uts_ns.name.nodename); | |
43 | size_t maxlen = bufsize - 1; | |
44 | size_t arglen; | |
45 | ||
46 | arglen = strlcpy(init_uts_ns.name.nodename, arg, bufsize); | |
47 | if (arglen > maxlen) { | |
48 | pr_warn("hostname parameter exceeds %zd characters and will be truncated", | |
49 | maxlen); | |
50 | } | |
51 | return 0; | |
52 | } | |
53 | early_param("hostname", early_hostname); | |
54 | ||
c71551ad LT |
55 | /* FIXED STRINGS! Don't touch! */ |
56 | const char linux_banner[] = | |
3eb3c740 RZ |
57 | "Linux version " UTS_RELEASE " (" LINUX_COMPILE_BY "@" |
58 | LINUX_COMPILE_HOST ") (" LINUX_COMPILER ") " UTS_VERSION "\n"; | |
59 | ||
60 | const char linux_proc_banner[] = | |
61 | "%s version %s" | |
62 | " (" LINUX_COMPILE_BY "@" LINUX_COMPILE_HOST ")" | |
63 | " (" LINUX_COMPILER ") %s\n"; | |
9afb719e LA |
64 | |
65 | BUILD_SALT; | |
1fdd7433 | 66 | BUILD_LTO_INFO; |