From: Stephen Rothwell Date: Sun, 17 Feb 2013 23:27:44 +0000 (+1100) Subject: Merge remote-tracking branch 'ia64/next' X-Git-Tag: next-20130218~113 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=8d4ee13bb9583619abb0108efeb8661d8d90159b;p=karo-tx-linux.git Merge remote-tracking branch 'ia64/next' Conflicts: drivers/firmware/efivars.c init/Kconfig --- 8d4ee13bb9583619abb0108efeb8661d8d90159b diff --cc drivers/firmware/efivars.c index f5596db0cf58,69225115304d..fed08b661711 --- a/drivers/firmware/efivars.c +++ b/drivers/firmware/efivars.c @@@ -790,10 -798,9 +798,10 @@@ static ssize_t efivarfs_file_write(stru } else if (status == EFI_NOT_FOUND) { list_del(&var->list); - spin_unlock(&efivars->lock); + spin_unlock_irq(&efivars->lock); efivar_unregister(var); drop_nlink(inode); + d_delete(file->f_dentry); dput(file->f_dentry); } else { @@@ -993,9 -1000,9 +1001,9 @@@ static int efivarfs_unlink(struct inod if (status == EFI_SUCCESS || status == EFI_NOT_FOUND) { list_del(&var->list); - spin_unlock(&efivars->lock); + spin_unlock_irq(&efivars->lock); efivar_unregister(var); - drop_nlink(dir); + drop_nlink(dentry->d_inode); dput(dentry); return 0; } @@@ -1823,7 -1906,9 +1907,9 @@@ err_put static void __exit efivars_exit(void) { + cancel_work_sync(&efivar_work); + - if (efi_enabled) { + if (efi_enabled(EFI_RUNTIME_SERVICES)) { unregister_efivars(&__efivars); kobject_put(efi_kobj); } diff --cc init/Kconfig index 01180da49add,523bee15fb44..cab5a6c0506d --- a/init/Kconfig +++ b/init/Kconfig @@@ -1232,14 -1232,13 +1232,21 @@@ config SYSCTL_EXCEPTION_TRAC help Enable support for /proc/sys/debug/exception-trace. +config SYSCTL_ARCH_UNALIGN_ALLOW + bool + help + Enable support for /proc/sys/kernel/unaligned-trap + Allows arches to define/use @unaligned_enabled to runtime toggle + the unaligned access emulation. + see arch/parisc/kernel/unaligned.c for reference + + config SYSCTL_ARCH_UNALIGN_NO_WARN + bool + help + Enable support for /proc/sys/kernel/ignore-unaligned-usertrap + Allows arch to define/use @no_unaligned_warning to possibly warn + about unaligned access emulation going on under the hood. + config KALLSYMS bool "Load all symbols for debugging/ksymoops" if EXPERT default y