From: "Serge E. Hallyn" In some places, particularly drivers and __init code, the init utsns is the appropriate one to use. This patch replaces those with a the init_utsname helper. Changes: Removed several uses of init_utsname(). Hope I picked all the right ones in net/ipv4/ipconfig.c. These are now changed to utsname() (the per-process namespace utsname) in the previous patch (2/7) Signed-off-by: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin DESC cifs: use init_utsname() EDESC From: Andrew Morton Update recent CIFS changes for the utsname patches. Might be wrong. Cc: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Cc: Steven French DESC namespaces-utsname-use-init_utsname-when-appropriate-gmidi EDESC From: Andrew Morton DESC namespaces-utsname-use-init_utsname-when-appropriate-print_kernel_version EDESC From: Andrew Morton Signed-off-by: Andrew Morton --- arch/arm/kernel/setup.c | 2 +- arch/arm26/kernel/setup.c | 2 +- arch/cris/kernel/setup.c | 2 +- arch/i386/kernel/process.c | 6 +++--- arch/i386/kernel/traps.c | 6 +++--- arch/powerpc/kernel/process.c | 2 +- arch/powerpc/kernel/setup_64.c | 2 +- arch/powerpc/platforms/pseries/setup.c | 2 +- arch/sh/kernel/setup.c | 2 +- arch/um/kernel/um_arch.c | 6 +++--- arch/um/sys-x86_64/sysrq.c | 2 +- arch/x86_64/kernel/process.c | 6 +++--- drivers/infiniband/hw/ipath/ipath_verbs.c | 2 +- drivers/parisc/led.c | 2 +- drivers/scsi/lpfc/lpfc_ct.c | 8 ++++---- drivers/usb/core/hcd.c | 4 ++-- drivers/usb/gadget/ether.c | 2 +- drivers/usb/gadget/file_storage.c | 2 +- drivers/usb/gadget/gmidi.c | 2 +- drivers/usb/gadget/serial.c | 2 +- drivers/usb/gadget/zero.c | 2 +- fs/cifs/sess.c | 6 +++--- include/asm-i386/bugs.h | 2 +- include/asm-sh/bugs.h | 2 +- kernel/lockdep.c | 6 +++--- kernel/power/snapshot.c | 10 +++++----- sound/core/info_oss.c | 10 +++++----- 27 files changed, 51 insertions(+), 51 deletions(-) diff -puN arch/arm/kernel/setup.c~namespaces-utsname-use-init_utsname-when-appropriate arch/arm/kernel/setup.c --- a/arch/arm/kernel/setup.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/arm/kernel/setup.c @@ -348,7 +348,7 @@ static void __init setup_processor(void) cpu_name, processor_id, (int)processor_id & 15, proc_arch[cpu_architecture()], cr_alignment); - sprintf(system_utsname.machine, "%s%c", list->arch_name, ENDIANNESS); + sprintf(init_utsname()->machine, "%s%c", list->arch_name, ENDIANNESS); sprintf(elf_platform, "%s%c", list->elf_name, ENDIANNESS); elf_hwcap = list->elf_hwcap; #ifndef CONFIG_ARM_THUMB diff -puN arch/arm26/kernel/setup.c~namespaces-utsname-use-init_utsname-when-appropriate arch/arm26/kernel/setup.c --- a/arch/arm26/kernel/setup.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/arm26/kernel/setup.c @@ -143,7 +143,7 @@ static void __init setup_processor(void) dump_cpu_info(); - sprintf(system_utsname.machine, "%s", list->arch_name); + sprintf(init_utsname()->machine, "%s", list->arch_name); sprintf(elf_platform, "%s", list->elf_name); elf_hwcap = list->elf_hwcap; diff -puN arch/cris/kernel/setup.c~namespaces-utsname-use-init_utsname-when-appropriate arch/cris/kernel/setup.c --- a/arch/cris/kernel/setup.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/cris/kernel/setup.c @@ -160,7 +160,7 @@ setup_arch(char **cmdline_p) show_etrax_copyright(); /* Setup utsname */ - strcpy(system_utsname.machine, cris_machine_name); + strcpy(init_utsname()->machine, cris_machine_name); } static void *c_start(struct seq_file *m, loff_t *pos) diff -puN arch/i386/kernel/process.c~namespaces-utsname-use-init_utsname-when-appropriate arch/i386/kernel/process.c --- a/arch/i386/kernel/process.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/i386/kernel/process.c @@ -306,9 +306,9 @@ void show_regs(struct pt_regs * regs) if (user_mode_vm(regs)) printk(" ESP: %04x:%08lx",0xffff & regs->xss,regs->esp); printk(" EFLAGS: %08lx %s (%s %.*s)\n", - regs->eflags, print_tainted(), system_utsname.release, - (int)strcspn(system_utsname.version, " "), - system_utsname.version); + regs->eflags, print_tainted(), init_utsname()->release, + (int)strcspn(init_utsname()->version, " "), + init_utsname()->version); printk("EAX: %08lx EBX: %08lx ECX: %08lx EDX: %08lx\n", regs->eax,regs->ebx,regs->ecx,regs->edx); printk("ESI: %08lx EDI: %08lx EBP: %08lx", diff -puN arch/i386/kernel/traps.c~namespaces-utsname-use-init_utsname-when-appropriate arch/i386/kernel/traps.c --- a/arch/i386/kernel/traps.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/i386/kernel/traps.c @@ -358,9 +358,9 @@ void show_registers(struct pt_regs *regs KERN_EMERG "EIP: %04x:[<%08lx>] %s VLI\n" KERN_EMERG "EFLAGS: %08lx (%s %.*s)\n", smp_processor_id(), 0xffff & regs->xcs, regs->eip, - print_tainted(), regs->eflags, system_utsname.release, - (int)strcspn(system_utsname.version, " "), - system_utsname.version); + print_tainted(), regs->eflags, init_utsname()->release, + (int)strcspn(init_utsname()->version, " "), + init_utsname()->version); print_symbol(KERN_EMERG "EIP is at %s\n", regs->eip); printk(KERN_EMERG "eax: %08lx ebx: %08lx ecx: %08lx edx: %08lx\n", regs->eax, regs->ebx, regs->ecx, regs->edx); diff -puN arch/powerpc/kernel/process.c~namespaces-utsname-use-init_utsname-when-appropriate arch/powerpc/kernel/process.c --- a/arch/powerpc/kernel/process.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/powerpc/kernel/process.c @@ -424,7 +424,7 @@ void show_regs(struct pt_regs * regs) printk("NIP: "REG" LR: "REG" CTR: "REG"\n", regs->nip, regs->link, regs->ctr); printk("REGS: %p TRAP: %04lx %s (%s)\n", - regs, regs->trap, print_tainted(), system_utsname.release); + regs, regs->trap, print_tainted(), init_utsname()->release); printk("MSR: "REG" ", regs->msr); printbits(regs->msr, msr_bits); printk(" CR: %08lX XER: %08lX\n", regs->ccr, regs->xer); diff -puN arch/powerpc/kernel/setup_64.c~namespaces-utsname-use-init_utsname-when-appropriate arch/powerpc/kernel/setup_64.c --- a/arch/powerpc/kernel/setup_64.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/powerpc/kernel/setup_64.c @@ -419,7 +419,7 @@ void __init setup_system(void) smp_release_cpus(); #endif - printk("Starting Linux PPC64 %s\n", system_utsname.version); + printk("Starting Linux PPC64 %s\n", init_utsname()->version); printk("-----------------------------------------------------\n"); printk("ppc64_pft_size = 0x%lx\n", ppc64_pft_size); diff -puN arch/powerpc/platforms/pseries/setup.c~namespaces-utsname-use-init_utsname-when-appropriate arch/powerpc/platforms/pseries/setup.c --- a/arch/powerpc/platforms/pseries/setup.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/powerpc/platforms/pseries/setup.c @@ -342,7 +342,7 @@ static int __init pSeries_init_panel(voi { /* Manually leave the kernel version on the panel. */ ppc_md.progress("Linux ppc64\n", 0); - ppc_md.progress(system_utsname.release, 0); + ppc_md.progress(init_utsname()->version, 0); return 0; } diff -puN arch/sh/kernel/setup.c~namespaces-utsname-use-init_utsname-when-appropriate arch/sh/kernel/setup.c --- a/arch/sh/kernel/setup.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/sh/kernel/setup.c @@ -481,7 +481,7 @@ static int show_cpuinfo(struct seq_file seq_printf(m, "machine\t\t: %s\n", get_system_type()); seq_printf(m, "processor\t: %d\n", cpu); - seq_printf(m, "cpu family\t: %s\n", system_utsname.machine); + seq_printf(m, "cpu family\t: %s\n", init_utsname()->machine); seq_printf(m, "cpu type\t: %s\n", get_cpu_subtype()); show_cpuflags(m); diff -puN arch/um/kernel/um_arch.c~namespaces-utsname-use-init_utsname-when-appropriate arch/um/kernel/um_arch.c --- a/arch/um/kernel/um_arch.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/um/kernel/um_arch.c @@ -167,7 +167,7 @@ static char *usage_string = static int __init uml_version_setup(char *line, int *add) { - printf("%s\n", system_utsname.release); + printf("%s\n", init_utsname()->release); exit(0); return 0; @@ -278,7 +278,7 @@ static int __init Usage(char *line, int { const char **p; - printf(usage_string, system_utsname.release); + printf(usage_string, init_utsname()->release); p = &__uml_help_start; while (p < &__uml_help_end) { printf("%s", *p); @@ -403,7 +403,7 @@ int linux_main(int argc, char **argv) /* Reserve up to 4M after the current brk */ uml_reserved = ROUND_4M(brk_start) + (1 << 22); - setup_machinename(system_utsname.machine); + setup_machinename(init_utsname()->machine); #ifdef CONFIG_CMDLINE_ON_HOST argv1_begin = argv[1]; diff -puN arch/um/sys-x86_64/sysrq.c~namespaces-utsname-use-init_utsname-when-appropriate arch/um/sys-x86_64/sysrq.c --- a/arch/um/sys-x86_64/sysrq.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/um/sys-x86_64/sysrq.c @@ -16,7 +16,7 @@ void __show_regs(struct pt_regs * regs) printk("\n"); print_modules(); printk("Pid: %d, comm: %.20s %s %s\n", - current->pid, current->comm, print_tainted(), system_utsname.release); + current->pid, current->comm, print_tainted(), init_utsname()->release); printk("RIP: %04lx:[<%016lx>] ", PT_REGS_CS(regs) & 0xffff, PT_REGS_RIP(regs)); printk("\nRSP: %016lx EFLAGS: %08lx\n", PT_REGS_RSP(regs), diff -puN arch/x86_64/kernel/process.c~namespaces-utsname-use-init_utsname-when-appropriate arch/x86_64/kernel/process.c --- a/arch/x86_64/kernel/process.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/arch/x86_64/kernel/process.c @@ -302,9 +302,9 @@ void __show_regs(struct pt_regs * regs) print_modules(); printk("Pid: %d, comm: %.20s %s %s %.*s\n", current->pid, current->comm, print_tainted(), - system_utsname.release, - (int)strcspn(system_utsname.version, " "), - system_utsname.version); + init_utsname()->release, + (int)strcspn(init_utsname()->version, " "), + init_utsname()->version); printk("RIP: %04lx:[<%016lx>] ", regs->cs & 0xffff, regs->rip); printk_address(regs->rip); printk("RSP: %04lx:%016lx EFLAGS: %08lx\n", regs->ss, regs->rsp, diff -puN drivers/infiniband/hw/ipath/ipath_verbs.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/infiniband/hw/ipath/ipath_verbs.c --- a/drivers/infiniband/hw/ipath/ipath_verbs.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/infiniband/hw/ipath/ipath_verbs.c @@ -1585,7 +1585,7 @@ int ipath_register_ib_device(struct ipat dev->mmap = ipath_mmap; snprintf(dev->node_desc, sizeof(dev->node_desc), - IPATH_IDSTR " %s", system_utsname.nodename); + IPATH_IDSTR " %s", init_utsname()->nodename); ret = ib_register_device(dev); if (ret) diff -puN drivers/parisc/led.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/parisc/led.c --- a/drivers/parisc/led.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/parisc/led.c @@ -684,7 +684,7 @@ int __init led_init(void) int ret; snprintf(lcd_text_default, sizeof(lcd_text_default), - "Linux %s", system_utsname.release); + "Linux %s", init_utsname()->release); /* Work around the buggy PDC of KittyHawk-machines */ switch (CPU_HVERSION) { diff -puN drivers/scsi/lpfc/lpfc_ct.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/scsi/lpfc/lpfc_ct.c --- a/drivers/scsi/lpfc/lpfc_ct.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/scsi/lpfc/lpfc_ct.c @@ -933,8 +933,8 @@ lpfc_fdmi_cmd(struct lpfc_hba * phba, st ae = (ATTRIBUTE_ENTRY *) ((uint8_t *) rh + size); ae->ad.bits.AttrType = be16_to_cpu(OS_NAME_VERSION); sprintf(ae->un.OsNameVersion, "%s %s %s", - system_utsname.sysname, system_utsname.release, - system_utsname.version); + init_utsname()->sysname, init_utsname()->release, + init_utsname()->version); len = strlen(ae->un.OsNameVersion); len += (len & 3) ? (4 - (len & 3)) : 4; ae->ad.bits.AttrLen = be16_to_cpu(FOURBYTES + len); @@ -1052,7 +1052,7 @@ lpfc_fdmi_cmd(struct lpfc_hba * phba, st size); ae->ad.bits.AttrType = be16_to_cpu(HOST_NAME); sprintf(ae->un.HostName, "%s", - system_utsname.nodename); + init_utsname()->nodename); len = strlen(ae->un.HostName); len += (len & 3) ? (4 - (len & 3)) : 4; ae->ad.bits.AttrLen = @@ -1140,7 +1140,7 @@ lpfc_fdmi_tmo_handler(struct lpfc_hba *p ndlp = lpfc_findnode_did(phba, NLP_SEARCH_ALL, FDMI_DID); if (ndlp) { - if (system_utsname.nodename[0] != '\0') { + if (init_utsname()->nodename[0] != '\0') { lpfc_fdmi_cmd(phba, ndlp, SLI_MGMT_DHBA); } else { mod_timer(&phba->fc_fdmitmo, jiffies + HZ * 60); diff -puN drivers/usb/core/hcd.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/usb/core/hcd.c --- a/drivers/usb/core/hcd.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/usb/core/hcd.c @@ -318,8 +318,8 @@ static int rh_string ( // id 3 == vendor description } else if (id == 3) { - snprintf (buf, sizeof buf, "%s %s %s", system_utsname.sysname, - system_utsname.release, hcd->driver->description); + snprintf (buf, sizeof buf, "%s %s %s", init_utsname()->sysname, + init_utsname()->release, hcd->driver->description); // unsupported IDs --> "protocol stall" } else diff -puN drivers/usb/gadget/ether.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/usb/gadget/ether.c --- a/drivers/usb/gadget/ether.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/usb/gadget/ether.c @@ -2260,7 +2260,7 @@ eth_bind (struct usb_gadget *gadget) return -ENODEV; } snprintf (manufacturer, sizeof manufacturer, "%s %s/%s", - system_utsname.sysname, system_utsname.release, + init_utsname()->sysname, init_utsname()->release, gadget->name); /* If there's an RNDIS configuration, that's what Windows wants to diff -puN drivers/usb/gadget/file_storage.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/usb/gadget/file_storage.c --- a/drivers/usb/gadget/file_storage.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/usb/gadget/file_storage.c @@ -3982,7 +3982,7 @@ static int __init fsg_bind(struct usb_ga usb_gadget_set_selfpowered(gadget); snprintf(manufacturer, sizeof manufacturer, "%s %s with %s", - system_utsname.sysname, system_utsname.release, + init_utsname()->sysname, init_utsname()->release, gadget->name); /* On a real device, serial[] would be loaded from permanent diff -puN drivers/usb/gadget/gmidi.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/usb/gadget/gmidi.c --- a/drivers/usb/gadget/gmidi.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/usb/gadget/gmidi.c @@ -1189,7 +1189,7 @@ static int __devinit gmidi_bind(struct u strlcpy(manufacturer, iManufacturer, sizeof(manufacturer)); } else { snprintf(manufacturer, sizeof(manufacturer), "%s %s with %s", - system_utsname.sysname, system_utsname.release, + init_utsname()->sysname, init_utsname()->release, gadget->name); } if (iProduct) { diff -puN drivers/usb/gadget/serial.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/usb/gadget/serial.c --- a/drivers/usb/gadget/serial.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/usb/gadget/serial.c @@ -1434,7 +1434,7 @@ static int __init gs_bind(struct usb_gad return -ENOMEM; snprintf(manufacturer, sizeof(manufacturer), "%s %s with %s", - system_utsname.sysname, system_utsname.release, + init_utsname()->sysname, init_utsname()->release, gadget->name); memset(dev, 0, sizeof(struct gs_dev)); diff -puN drivers/usb/gadget/zero.c~namespaces-utsname-use-init_utsname-when-appropriate drivers/usb/gadget/zero.c --- a/drivers/usb/gadget/zero.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/drivers/usb/gadget/zero.c @@ -1242,7 +1242,7 @@ autoconf_fail: EP_OUT_NAME, EP_IN_NAME); snprintf (manufacturer, sizeof manufacturer, "%s %s with %s", - system_utsname.sysname, system_utsname.release, + init_utsname()->sysname, init_utsname()->release, gadget->name); return 0; diff -puN fs/cifs/sess.c~namespaces-utsname-use-init_utsname-when-appropriate fs/cifs/sess.c --- a/fs/cifs/sess.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/fs/cifs/sess.c @@ -111,7 +111,7 @@ static void unicode_ssetup_strings(char bytes_ret = cifs_strtoUCS((__le16 *)bcc_ptr, "Linux version ", 32, nls_cp); bcc_ptr += 2 * bytes_ret; - bytes_ret = cifs_strtoUCS((__le16 *) bcc_ptr, system_utsname.release, + bytes_ret = cifs_strtoUCS((__le16 *) bcc_ptr, init_utsname()->release, 32, nls_cp); bcc_ptr += 2 * bytes_ret; bcc_ptr += 2; /* trailing null */ @@ -158,8 +158,8 @@ static void ascii_ssetup_strings(char ** strcpy(bcc_ptr, "Linux version "); bcc_ptr += strlen("Linux version "); - strcpy(bcc_ptr, system_utsname.release); - bcc_ptr += strlen(system_utsname.release) + 1; + strcpy(bcc_ptr, init_utsname()->release); + bcc_ptr += strlen(init_utsname()->release) + 1; strcpy(bcc_ptr, CIFS_NETWORK_OPSYS); bcc_ptr += strlen(CIFS_NETWORK_OPSYS) + 1; diff -puN include/asm-i386/bugs.h~namespaces-utsname-use-init_utsname-when-appropriate include/asm-i386/bugs.h --- a/include/asm-i386/bugs.h~namespaces-utsname-use-init_utsname-when-appropriate +++ a/include/asm-i386/bugs.h @@ -189,6 +189,6 @@ static void __init check_bugs(void) check_fpu(); check_hlt(); check_popad(); - system_utsname.machine[1] = '0' + (boot_cpu_data.x86 > 6 ? 6 : boot_cpu_data.x86); + init_utsname()->machine[1] = '0' + (boot_cpu_data.x86 > 6 ? 6 : boot_cpu_data.x86); alternative_instructions(); } diff -puN include/asm-sh/bugs.h~namespaces-utsname-use-init_utsname-when-appropriate include/asm-sh/bugs.h --- a/include/asm-sh/bugs.h~namespaces-utsname-use-init_utsname-when-appropriate +++ a/include/asm-sh/bugs.h @@ -18,7 +18,7 @@ static void __init check_bugs(void) { extern char *get_cpu_subtype(void); extern unsigned long loops_per_jiffy; - char *p= &system_utsname.machine[2]; /* "sh" */ + char *p= &init_utsname()->machine[2]; /* "sh" */ cpu_data->loops_per_jiffy = loops_per_jiffy; diff -puN kernel/lockdep.c~namespaces-utsname-use-init_utsname-when-appropriate kernel/lockdep.c --- a/kernel/lockdep.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/kernel/lockdep.c @@ -518,9 +518,9 @@ print_circular_bug_entry(struct lock_lis static void print_kernel_version(void) { - printk("%s %.*s\n", system_utsname.release, - (int)strcspn(system_utsname.version, " "), - system_utsname.version); + printk("%s %.*s\n", init_utsname()->release, + (int)strcspn(init_utsname()->version, " "), + init_utsname()->version); } /* diff -puN kernel/power/snapshot.c~namespaces-utsname-use-init_utsname-when-appropriate kernel/power/snapshot.c --- a/kernel/power/snapshot.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/kernel/power/snapshot.c @@ -906,7 +906,7 @@ static void init_header(struct swsusp_in memset(info, 0, sizeof(struct swsusp_info)); info->version_code = LINUX_VERSION_CODE; info->num_physpages = num_physpages; - memcpy(&info->uts, &system_utsname, sizeof(system_utsname)); + memcpy(&info->uts, init_utsname(), sizeof(struct new_utsname)); info->cpus = num_online_cpus(); info->image_pages = nr_copy_pages; info->pages = nr_copy_pages + nr_meta_pages + 1; @@ -1050,13 +1050,13 @@ static inline int check_header(struct sw reason = "kernel version"; if (info->num_physpages != num_physpages) reason = "memory size"; - if (strcmp(info->uts.sysname,system_utsname.sysname)) + if (strcmp(info->uts.sysname,init_utsname()->sysname)) reason = "system type"; - if (strcmp(info->uts.release,system_utsname.release)) + if (strcmp(info->uts.release,init_utsname()->release)) reason = "kernel release"; - if (strcmp(info->uts.version,system_utsname.version)) + if (strcmp(info->uts.version,init_utsname()->version)) reason = "version"; - if (strcmp(info->uts.machine,system_utsname.machine)) + if (strcmp(info->uts.machine,init_utsname()->machine)) reason = "machine"; if (reason) { printk(KERN_ERR "swsusp: Resume mismatch: %s\n", reason); diff -puN sound/core/info_oss.c~namespaces-utsname-use-init_utsname-when-appropriate sound/core/info_oss.c --- a/sound/core/info_oss.c~namespaces-utsname-use-init_utsname-when-appropriate +++ a/sound/core/info_oss.c @@ -96,11 +96,11 @@ static void snd_sndstat_proc_read(struct { snd_iprintf(buffer, "Sound Driver:3.8.1a-980706 (ALSA v" CONFIG_SND_VERSION " emulation code)\n"); snd_iprintf(buffer, "Kernel: %s %s %s %s %s\n", - system_utsname.sysname, - system_utsname.nodename, - system_utsname.release, - system_utsname.version, - system_utsname.machine); + init_utsname()->sysname, + init_utsname()->nodename, + init_utsname()->release, + init_utsname()->version, + init_utsname()->machine); snd_iprintf(buffer, "Config options: 0\n"); snd_iprintf(buffer, "\nInstalled drivers: \n"); snd_iprintf(buffer, "Type 10: ALSA emulation\n"); _