1. 19 May, 2014 37 commits
  2. 09 May, 2014 3 commits
    • Linus Torvalds's avatar
      Linux 3.15-rc5 · d6d211db
      Linus Torvalds authored
      d6d211db
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 181da3c3
      Linus Torvalds authored
      Pull x86 fixes from Peter Anvin:
       "A somewhat unpleasantly large collection of small fixes.  The big ones
        are the __visible tree sweep and a fix for 'earlyprintk=efi,keep'.  It
        was using __init functions with predictably suboptimal results.
      
        Another key fix is a build fix which would produce output that simply
        would not decompress correctly in some configuration, due to the
        existing Makefiles picking up an unfortunate local label and mistaking
        it for the global symbol _end.
      
        Additional fixes include the handling of 64-bit numbers when setting
        the vdso data page (a latent bug which became manifest when i386
        started exporting a vdso with time functions), a fix to the new MSR
        manipulation accessors which would cause features to not get properly
        unblocked, a build fix for 32-bit userland, and a few new platform
        quirks"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, vdso, time: Cast tv_nsec to u64 for proper shifting in update_vsyscall()
        x86: Fix typo in MSR_IA32_MISC_ENABLE_LIMIT_CPUID macro
        x86: Fix typo preventing msr_set/clear_bit from having an effect
        x86/intel: Add quirk to disable HPET for the Baytrail platform
        x86/hpet: Make boot_hpet_disable extern
        x86-64, build: Fix stack protector Makefile breakage with 32-bit userland
        x86/reboot: Add reboot quirk for Certec BPC600
        asmlinkage: Add explicit __visible to drivers/*, lib/*, kernel/*
        asmlinkage, x86: Add explicit __visible to arch/x86/*
        asmlinkage: Revert "lto: Make asmlinkage __visible"
        x86, build: Don't get confused by local symbols
        x86/efi: earlyprintk=efi,keep fix
      181da3c3
    • Boris Ostrovsky's avatar
      x86, vdso, time: Cast tv_nsec to u64 for proper shifting in update_vsyscall() · 28b92e09
      Boris Ostrovsky authored
      With tk->wall_to_monotonic.tv_nsec being a 32-bit value on 32-bit
      systems, (tk->wall_to_monotonic.tv_nsec << tk->shift) in update_vsyscall()
      may lose upper bits or, worse, add them since compiler will do this:
      	(u64)(tk->wall_to_monotonic.tv_nsec << tk->shift)
      instead of
      	((u64)tk->wall_to_monotonic.tv_nsec << tk->shift)
      
      So if, for example, tv_nsec is 0x800000 and shift is 8 we will end up
      with 0xffffffff80000000 instead of 0x80000000. And then we are stuck in
      the subsequent 'while' loop.
      
      We need an explicit cast.
      Signed-off-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Link: http://lkml.kernel.org/r/1399648287-15178-1-git-send-email-boris.ostrovsky@oracle.comAcked-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: <stable@vger.kernel.org> # v3.14
      Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
      28b92e09