1. 13 5月, 2014 10 次提交
    • R
    • A
      MIPS/loongson2_cpufreq: Fix CPU clock rate setting · 8e8acb32
      Aaro Koskinen 提交于
      Loongson2 has been using (incorrectly) kHz for cpu_clk rate. This has
      been unnoticed, as loongson2_cpufreq was the only place where the rate
      was set/get. After commit 652ed95d
      (cpufreq: introduce cpufreq_generic_get() routine) things however broke,
      and now loops_per_jiffy adjustments are incorrect (1000 times too long).
      The patch fixes this by changing cpu_clk rate to Hz.
      Signed-off-by: NAaro Koskinen <aaro.koskinen@iki.fi>
      Cc: stable@vger.kernel.org
      Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
      Cc: Viresh Kumar <viresh.kumar@linaro.org>
      Cc: linux-mips@linux-mips.org
      Cc: linux-kernel@vger.kernel.org
      Cc: cpufreq@vger.kernel.org
      Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
      Patchwork: https://patchwork.linux-mips.org/patch/6678/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      8e8acb32
    • P
      MIPS: Loongson: No need to select GENERIC_HARDIRQS_NO__DO_IRQ · 3deff253
      Paul Bolle 提交于
      Commit 0e476d91 ("MIPS: Loongson: Add Loongson-3 Kconfig options")
      added "select GENERIC_HARDIRQS_NO__DO_IRQ". But the Kconfig symbol
      GENERIC_HARDIRQS_NO__DO_IRQ was already removed in v2.6.38, so that
      select is a nop. Drop it.
      Signed-off-by: NPaul Bolle <pebolle@tiscali.nl>
      Cc: linux-mips@linux-mips.org
      Cc: linux-kernel@vger.kernel.org
      Patchwork: https://patchwork.linux-mips.org/patch/6677/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      3deff253
    • M
      MIPS: csum_partial.S CPU_DADDI_WORKAROUNDS bug fix · 44ba138f
      Maciej W. Rozycki 提交于
      This change reverts most of commit
      60724ca5 [MIPS: IP checksums: Remove
      unncessary .set pseudos] that introduced warnings with the
      CPU_DADDI_WORKAROUNDS option set:
      
      arch/mips/lib/csum_partial.S: Assembler messages:
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:467: Warning: used $3 with ".set at=$3"
      [...]
      arch/mips/lib/csum_partial.S:577: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:577: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:577: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:601: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:601: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:601: Warning: used $3 with ".set at=$3"
      arch/mips/lib/csum_partial.S:601: Warning: used $3 with ".set at=$3"
      [and so on, and so on...]
      
      The warnings are benign and good code is produced regardless because no
      macros that'd use the assembler's temporary register are involved, however
      the `.set noat' directives removed by the commit referred are crucial to
      guarantee this is still going to be the case after any changes in the
      future.  Therefore they need to be brought back to place which this
      change does.
      Signed-off-by: NMaciej W. Rozycki <macro@linux-mips.org>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/6686/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      44ba138f
    • M
      MIPS: __strncpy_from_user_asm CPU_DADDI_WORKAROUNDS bug fix · 465ca5d6
      Maciej W. Rozycki 提交于
      This corrects assembler warnings and broken code generated in
      __strncpy_from_user_asm:
      
      arch/mips/lib/strncpy_user.S: Assembler messages:
      arch/mips/lib/strncpy_user.S:52: Warning: Macro instruction expanded into
      multiple instructions in a branch delay slot
      
      with the CPU_DADDI_WORKAROUNDS option set.  The function schedules delay
      slots manually where there is really no need to as GAS is happy to do it
      all itself, so undo it all and remove `.set noreorder'.
      Signed-off-by: NMaciej W. Rozycki <macro@linux-mips.org>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/6685/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      465ca5d6
    • M
      MIPS: __delay CPU_DADDI_WORKAROUNDS bug fix · 2db4bc34
      Maciej W. Rozycki 提交于
      With CPU_DADDI_WORKAROUNDS enabled __delay assembles with a macro in a
      branch delay slot:
      
      {standard input}: Assembler messages:
      {standard input}:18: Warning: Macro instruction expanded into multiple
      instructions in a branch delay slot
      
      and broken code results:
      
      0000000000000000 <__delay>:
         0:	1480ffff 	bnez	a0,0 <__delay>
         4:	24010001 	li	at,1
         8:	0081202f 	dsubu	a0,a0,at
         c:	03e00008 	jr	ra
        10:	00000000 	nop
        14:	00000000 	nop
      
      Consequently the function loops indefinitely, showing up prominently as a
      hang in the delay loop calibration at bootstrap.
      
      This change corrects the problem by forcing the immediate 1 into a
      register while keeping code produced identical where CPU_DADDI_WORKAROUNDS
      is disabled.
      Signed-off-by: NMaciej W. Rozycki <macro@linux-mips.org>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/6669/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      2db4bc34
    • M
      MIPS: DEC/SNI: O32 wrapper stack switching fixes · 824122a3
      Maciej W. Rozycki 提交于
      Commit 231a35d3 [[MIPS] RM: Collected
      changes] broke DECstation support by introducing an incompatible copy of
      arch/mips/dec/prom/call_o32.S in arch/mips/fw/lib/, built unconditionally.
      The copy happens to land earlier of the two among the modules used in the
      link and is therefore chosen for the DECstation rather than the intended
      original.  As a result random kernel data is corrupted because a pointer
      to the "%s" formatted output template is used as a temporary stack pointer
      rather than being passed down to prom_printf.  This also explains why
      prom_printf still works, up to a point -- the next argument is the actual
      string to output so it works just fine as the output template until enough
      kernel data has been corrupted to cause a crash.
      
      This change adjusts the modified wrapper in arch/mips/fw/lib/call_o32.S to
      let callers request no stack switching by passing a null temporary stack
      pointer in $a1, reworks the DECstation callers to work with the updated
      interface and removes the old copy from arch/mips/dec/prom/call_o32.S.  A
      few minor readability adjustments are included as well, most importantly
      O32_SZREG is now used throughout where applicable rather than hardcoded
      multiplies of 4 and $fp is used to access the argument save area as a more
      usual register to operate the stack with rather than $s0.
      
      Finally an update is made to the temporary stack space used by the SNI
      platform to guarantee 8-byte alignment as per o32 requirements.
      Signed-off-by: NMaciej W. Rozycki <macro@linux-mips.org>
      Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/6668/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      824122a3
    • M
      MIPS: DEC: Bus error handler <asm/cpu-type.h> fixes · af37530b
      Maciej W. Rozycki 提交于
      Commit 69f24d17 [MIPS: Optimize
      current_cpu_type() for better code.] missed an update for two DECstation
      bus error support files that now do not build, this is a fix.
      Signed-off-by: NMaciej W. Rozycki <macro@linux-mips.org>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/6667/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      af37530b
    • R
      MAINTAINERS: TURBOchannel: Update entry · c406339c
      Ralf Baechle 提交于
      Add mailing list and patchwork URL so patches now have a defined path.
      Also add myself as a TURBOchannel maintainer.  However Maciej is going
      to the the resident TURBOchannel guru.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      Acked-by: N"Maciej W. Rozycki" <macro@linux-mips.org>
      c406339c
    • R
      Revert "MIPS: MT: proc: Add support for printing VPE and TC ids" · 5508d456
      Ralf Baechle 提交于
      Reverts commit 795038a6 because
      d6d3c9af provides the same functionality
      in a more generic way.  Both patches applied however means that the
      VPE and TC IDs get printed twice currently.
      5508d456
  2. 10 5月, 2014 2 次提交
    • L
      Linux 3.15-rc5 · d6d211db
      Linus Torvalds 提交于
      d6d211db
    • L
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 181da3c3
      Linus Torvalds 提交于
      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
  3. 09 5月, 2014 8 次提交
  4. 08 5月, 2014 10 次提交
  5. 07 5月, 2014 10 次提交
    • C
      x86/reboot: Add reboot quirk for Certec BPC600 · aadca6fa
      Christian Gmeiner 提交于
      Certec BPC600 needs reboot=pci to actually reboot.
      Signed-off-by: NChristian Gmeiner <christian.gmeiner@gmail.com>
      Cc: Matthew Garrett <mjg59@srcf.ucam.org>
      Cc: Li Aubrey <aubrey.li@linux.intel.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Dave Jones <davej@redhat.com>
      Cc: Fenghua Yu <fenghua.yu@intel.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Link: http://lkml.kernel.org/r/1399446114-2147-1-git-send-email-christian.gmeiner@gmail.comSigned-off-by: NIngo Molnar <mingo@kernel.org>
      aadca6fa
    • D
      Merge branch 'mullins' of git://people.freedesktop.org/~deathsimple/linux into drm-fixes · 995c376e
      Dave Airlie 提交于
      Add Mullins chips support.
      
      * 'mullins' of git://people.freedesktop.org/~deathsimple/linux:
        drm/radeon: add pci ids for Mullins
        drm/radeon: add Mullins VCE support
        drm/radeon: modesetting updates for Mullins.
        drm/radeon: dpm updates for KV/KB
        drm/radeon: add Mullins dpm support.
        drm/radeon: add Mullins UVD support.
        drm/radeon: update cik init for Mullins.
        drm/radeon: add Mullins chip family
      995c376e
    • D
      Merge branch 'drm-nouveau-next' of... · 2a1235e5
      Dave Airlie 提交于
      Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-fixes
      
      nouveau fixes.
      
      * 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6:
        drm/gm107/gr: bump attrib cb size quite a bit
        drm/nouveau: fix another lock unbalance in nouveau_crtc_page_flip
        drm/nouveau/bios: fix shadowing from PROM on big-endian systems
        drm/nouveau/acpi: allow non-optimus setups to load vbios from acpi
      2a1235e5
    • D
      Merge tag 'topc/core-stuff-2014-05-05' of git://anongit.freedesktop.org/drm-intel into drm-fixes · 508200c5
      Dave Airlie 提交于
      Some more i915 fixes. There's still some DP issues we are looking into,
      but wanted to get these moving.
      
      * tag 'topc/core-stuff-2014-05-05' of git://anongit.freedesktop.org/drm-intel:
        drm/i915: don't try DP_LINK_BW_5_4 on HSW ULX
        drm/i915: Sanitize the enable_ppgtt module option once
        drm/i915: Break encoder->crtc link separately in intel_sanitize_crtc()
      508200c5
    • D
      Merge branch 'drm-fixes-3.15' of git://people.freedesktop.org/~deathsimple/linux into drm-fixes · 9eabb911
      Dave Airlie 提交于
      this is the next pull quested for stashed up radeon fixes for 3.15. As discussed support for Mullins was separated out and will get it's own pull request. Remaining highlights are:
      1. Some more patches to better handle PLL limits.
      2. Making use of the PFLIP additional to the VBLANK interrupt, otherwise we sometimes miss page flip events.
      3. Fix for the UVD command stream parser.
      4. Fix for bootup UVD clocks on RV7xx systems.
      5. Adding missing error check on dpcd reads.
      6. Fixes number of banks calculation on SI.
      
      * 'drm-fixes-3.15' of git://people.freedesktop.org/~deathsimple/linux:
        drm/radeon: lower the ref * post PLL maximum
        drm/radeon: check that we have a clock before PLL setup
        drm/radeon: drm/radeon: add missing radeon_semaphore_free to error path
        drm/radeon: Fix num_banks calculation for SI
        drm/radeon/dp: check for errors in dpcd reads
        drm/radeon: avoid high jitter with small frac divs
        drm/radeon: check buffer relocation offset
        drm/radeon: use pflip irq on R600+ v2
        drm/radeon/uvd: use lower clocks on old UVD to boot v2
      9eabb911
    • L
      Merge branch 'akpm' (incoming from Andrew) · 38583f09
      Linus Torvalds 提交于
      Merge misc fixes from Andrew Morton:
       "13 fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        agp: info leak in agpioc_info_wrap()
        fs/affs/super.c: bugfix / double free
        fanotify: fix -EOVERFLOW with large files on 64-bit
        slub: use sysfs'es release mechanism for kmem_cache
        revert "mm: vmscan: do not swap anon pages just because free+file is low"
        autofs: fix lockref lookup
        mm: filemap: update find_get_pages_tag() to deal with shadow entries
        mm/compaction: make isolate_freepages start at pageblock boundary
        MAINTAINERS: zswap/zbud: change maintainer email address
        mm/page-writeback.c: fix divide by zero in pos_ratio_polynom
        hugetlb: ensure hugepage access is denied if hugepages are not supported
        slub: fix memcg_propagate_slab_attrs
        drivers/rtc/rtc-pcf8523.c: fix month definition
      38583f09
    • D
      agp: info leak in agpioc_info_wrap() · 3ca9e5d3
      Dan Carpenter 提交于
      On 64 bit systems the agp_info struct has a 4 byte hole between
      ->agp_mode and ->aper_base.  We need to clear it to avoid disclosing
      stack information to userspace.
      Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3ca9e5d3
    • F
      fs/affs/super.c: bugfix / double free · d353efd0
      Fabian Frederick 提交于
      Commit 842a859d ("affs: use ->kill_sb() to simplify ->put_super()
      and failure exits of ->mount()") adds .kill_sb which frees sbi but
      doesn't remove sbi free in case of parse_options error causing double
      free+random crash.
      Signed-off-by: NFabian Frederick <fabf@skynet.be>
      Cc: Alexander Viro <viro@zeniv.linux.org.uk>
      Cc: <stable@vger.kernel.org>	[3.14.x]
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d353efd0
    • W
      fanotify: fix -EOVERFLOW with large files on 64-bit · 1e2ee49f
      Will Woods 提交于
      On 64-bit systems, O_LARGEFILE is automatically added to flags inside
      the open() syscall (also openat(), blkdev_open(), etc).  Userspace
      therefore defines O_LARGEFILE to be 0 - you can use it, but it's a
      no-op.  Everything should be O_LARGEFILE by default.
      
      But: when fanotify does create_fd() it uses dentry_open(), which skips
      all that.  And userspace can't set O_LARGEFILE in fanotify_init()
      because it's defined to 0.  So if fanotify gets an event regarding a
      large file, the read() will just fail with -EOVERFLOW.
      
      This patch adds O_LARGEFILE to fanotify_init()'s event_f_flags on 64-bit
      systems, using the same test as open()/openat()/etc.
      
      Addresses https://bugzilla.redhat.com/show_bug.cgi?id=696821Signed-off-by: NWill Woods <wwoods@redhat.com>
      Acked-by: NEric Paris <eparis@redhat.com>
      Reviewed-by: NJan Kara <jack@suse.cz>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      1e2ee49f
    • C
      slub: use sysfs'es release mechanism for kmem_cache · 41a21285
      Christoph Lameter 提交于
      debugobjects warning during netfilter exit:
      
          ------------[ cut here ]------------
          WARNING: CPU: 6 PID: 4178 at lib/debugobjects.c:260 debug_print_object+0x8d/0xb0()
          ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x20
          Modules linked in:
          CPU: 6 PID: 4178 Comm: kworker/u16:2 Tainted: G        W 3.11.0-next-20130906-sasha #3984
          Workqueue: netns cleanup_net
          Call Trace:
            dump_stack+0x52/0x87
            warn_slowpath_common+0x8c/0xc0
            warn_slowpath_fmt+0x46/0x50
            debug_print_object+0x8d/0xb0
            __debug_check_no_obj_freed+0xa5/0x220
            debug_check_no_obj_freed+0x15/0x20
            kmem_cache_free+0x197/0x340
            kmem_cache_destroy+0x86/0xe0
            nf_conntrack_cleanup_net_list+0x131/0x170
            nf_conntrack_pernet_exit+0x5d/0x70
            ops_exit_list+0x5e/0x70
            cleanup_net+0xfb/0x1c0
            process_one_work+0x338/0x550
            worker_thread+0x215/0x350
            kthread+0xe7/0xf0
            ret_from_fork+0x7c/0xb0
      
      Also during dcookie cleanup:
      
          WARNING: CPU: 12 PID: 9725 at lib/debugobjects.c:260 debug_print_object+0x8c/0xb0()
          ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x20
          Modules linked in:
          CPU: 12 PID: 9725 Comm: trinity-c141 Not tainted 3.15.0-rc2-next-20140423-sasha-00018-gc4ff6c4 #408
          Call Trace:
            dump_stack (lib/dump_stack.c:52)
            warn_slowpath_common (kernel/panic.c:430)
            warn_slowpath_fmt (kernel/panic.c:445)
            debug_print_object (lib/debugobjects.c:262)
            __debug_check_no_obj_freed (lib/debugobjects.c:697)
            debug_check_no_obj_freed (lib/debugobjects.c:726)
            kmem_cache_free (mm/slub.c:2689 mm/slub.c:2717)
            kmem_cache_destroy (mm/slab_common.c:363)
            dcookie_unregister (fs/dcookies.c:302 fs/dcookies.c:343)
            event_buffer_release (arch/x86/oprofile/../../../drivers/oprofile/event_buffer.c:153)
            __fput (fs/file_table.c:217)
            ____fput (fs/file_table.c:253)
            task_work_run (kernel/task_work.c:125 (discriminator 1))
            do_notify_resume (include/linux/tracehook.h:196 arch/x86/kernel/signal.c:751)
            int_signal (arch/x86/kernel/entry_64.S:807)
      
      Sysfs has a release mechanism.  Use that to release the kmem_cache
      structure if CONFIG_SYSFS is enabled.
      
      Only slub is changed - slab currently only supports /proc/slabinfo and
      not /sys/kernel/slab/*.  We talked about adding that and someone was
      working on it.
      
      [akpm@linux-foundation.org: fix CONFIG_SYSFS=n build]
      [akpm@linux-foundation.org: fix CONFIG_SYSFS=n build even more]
      Signed-off-by: NChristoph Lameter <cl@linux.com>
      Reported-by: NSasha Levin <sasha.levin@oracle.com>
      Tested-by: NSasha Levin <sasha.levin@oracle.com>
      Acked-by: NGreg KH <greg@kroah.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Pekka Enberg <penberg@kernel.org>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Bart Van Assche <bvanassche@acm.org>
      Cc: Al Viro <viro@ZenIV.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      41a21285