26 Jan, 2015

3 commits

  • Pull x86 fixes from Thomas Gleixner:
    "Hopefully the last round of fixes for 3.19

    - regression fix for the LDT changes
    - regression fix for XEN interrupt handling caused by the APIC
    changes
    - regression fixes for the PAT changes
    - last minute fixes for new the MPX support
    - regression fix for 32bit UP
    - fix for a long standing relocation issue on 64bit tagged for stable
    - functional fix for the Hyper-V clocksource tagged for stable
    - downgrade of a pr_err which tends to confuse users

    Looks a bit on the large side, but almost half of it are valuable
    comments"

    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/tsc: Change Fast TSC calibration failed from error to info
    x86/apic: Re-enable PCI_MSI support for non-SMP X86_32
    x86, mm: Change cachemode exports to non-gpl
    x86, tls: Interpret an all-zero struct user_desc as "no segment"
    x86, tls, ldt: Stop checking lm in LDT_empty
    x86, mpx: Strictly enforce empty prctl() args
    x86, mpx: Fix potential performance issue on unmaps
    x86, mpx: Explicitly disable 32-bit MPX support on 64-bit kernels
    x86, hyperv: Mark the Hyper-V clocksource as being continuous
    x86: Don't rely on VMWare emulating PAT MSR correctly
    x86, irq: Properly tag virtualization entry in /proc/interrupts
    x86, boot: Skip relocs when load address unchanged
    x86/xen: Override ACPI IRQ management callback __acpi_unregister_gsi
    ACPI: pci: Do not clear pci_dev->irq in acpi_pci_irq_disable()
    x86/xen: Treat SCI interrupt as normal GSI interrupt

    Linus Torvalds
     
  • Pull ARM SoC fixes from Olof Johansson:
    "A week's worth of fixes for various ARM platforms. Diff wise, the
    largest fix is for OMAP to deal with how GIC now registers interrupts
    (irq_domain_add_legacy() -> irq_domain_add_linear() changes).

    Besides this, a few more renesas platforms needed the GIC instatiation
    done for legacy boards. There's also a fix that disables coherency of
    mvebu due to issues, and a few other smaller fixes"

    * tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    arm64: dts: add baud rate to Juno stdout-path
    ARM: dts: imx25: Fix PWM "per" clocks
    bus: mvebu-mbus: fix support of MBus window 13
    Merge tag 'mvebu-fixes-3.19-3' of git://git.infradead.org/linux-mvebu into fixes
    ARM: mvebu: completely disable hardware I/O coherency
    ARM: OMAP: Work around hardcoded interrupts
    ARM: shmobile: r8a7779: Instantiate GIC from C board code in legacy builds
    ARM: shmobile: r8a7778: Instantiate GIC from C board code in legacy builds
    arm: boot: dts: dra7: enable dwc3 suspend PHY quirk

    Linus Torvalds
     
  • Pull vfs fixes from Al Viro:
    "A couple of fixes - deadlock in CIFS and build breakage in cris serial
    driver (resurfaced f_dentry in there)"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    VFS: Convert file->f_dentry->d_inode to file_inode()
    fix deadlock in cifs_ioctl_clone()

    Linus Torvalds
     

24 Jan, 2015

7 commits

  • Pull PCI fixes from Bjorn Helgaas:
    "These are fixes for:

    - a resource management problem that causes a Radeon "Fatal error
    during GPU init" on machines where the BIOS programmed an invalid
    Root Port window. This was a regression in v3.16.

    - an Atheros AR93xx device that doesn't handle PCI bus resets
    correctly. This was a regression in v3.14.

    - an out-of-date email address"

    * tag 'pci-v3.19-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
    MAINTAINERS: Update Richard Zhu's email address
    sparc/PCI: Clip bridge windows to fit in upstream windows
    powerpc/PCI: Clip bridge windows to fit in upstream windows
    parisc/PCI: Clip bridge windows to fit in upstream windows
    mn10300/PCI: Clip bridge windows to fit in upstream windows
    microblaze/PCI: Clip bridge windows to fit in upstream windows
    ia64/PCI: Clip bridge windows to fit in upstream windows
    frv/PCI: Clip bridge windows to fit in upstream windows
    alpha/PCI: Clip bridge windows to fit in upstream windows
    x86/PCI: Clip bridge windows to fit in upstream windows
    PCI: Add pci_claim_bridge_resource() to clip window if necessary
    PCI: Add pci_bus_clip_resource() to clip to fit upstream window
    PCI: Pass bridge device, not bus, when updating bridge windows
    PCI: Mark Atheros AR93xx to avoid bus reset
    PCI: Add flag for devices where we can't use bus reset

    Linus Torvalds
     
  • Pull devicetree bug fixes and documentation updates from Grant Likely:
    "A few bugfixes for the new DT overlay feature, documentation updates,
    spelling corrections, and changes to MAINTAINERS. Nothing earth
    shattering here"

    * tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux:
    of/unittest: Overlays with sub-devices tests
    of/platform: Handle of_populate drivers in notifier
    of/overlay: Do not generate duplicate nodes
    devicetree: document the "qemu" and "virtio" vendor prefixes
    devicetree: document ARM bindings for QEMU's Firmware Config interface
    Documentation: of: fix typo in graph bindings
    dma-mapping: fix debug print to display correct dma_pfn_offset
    of: replace Asahi Kasei Corp vendor prefix
    ARM: dt: GIC: Spelling s/specific/specifier/, s/flaggs/flags/
    dt/bindings: arm-boards: Spelling s/pointong/pointing/
    MAINTAINERS: Update DT website and git repository
    MAINTAINERS: drop DT regex matching on of_get_property and of_match_table

    Linus Torvalds
     
  • …awnguo/linux into fixes

    Merge "ARM: imx: fixes for 3.19, 2nd round" from Shawn Guo:

    The i.MX fixes for 3.19, 2nd round:
    - Correct pwm clock assignment in i.MX25 device tree to fix the broken
    pwm support on i.MX25

    * tag 'imx-fixes-3.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
    ARM: dts: imx25: Fix PWM "per" clocks

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     
  • Without explicit command-line parameters, the Juno UART ends up running
    at 57600 baud in the kernel, which is at odds with the 115200 baud used
    by the rest of the firmware. Since commit 7914a7c5651a5161 now lets us
    fix this by specifying default options in stdout-path, do so.

    Acked-by: Mark Rutland
    Signed-off-by: Robin Murphy
    Signed-off-by: Olof Johansson

    Robin Murphy
     
  • Pull kvm fixes from Paolo Bonzini:
    "Three small fixes.

    Two for x86 and one avoids that sparse bails out"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
    KVM: x86: SYSENTER emulation is broken
    KVM: x86: Fix of previously incomplete fix for CVE-2014-8480
    KVM: fix sparse warning in include/trace/events/kvm.h

    Linus Torvalds
     
  • Pull ARM fixes from Russell King:
    "Another round of small ARM fixes.

    restore_user_regs early stack deallocation is buggy in the presence of
    FIQs which switch to SVC mode, and could lead to corrupted registers
    being returned to a user process given an inopportune FIQ event.

    Another bug was spotted in the ARM perf code where it could lose track
    of perf counter overflows, leading to incorrect perf results.

    Lastly, a bug in arm_add_memory() was spotted where the memory sizes
    aren't properly rounded. As most people pass properly rounded sizes,
    this hasn't been noticed"

    * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
    ARM: 8292/1: mm: fix size rounding-down of arm_add_memory() function
    ARM: 8255/1: perf: Prevent wraparound during overflow
    ARM: 8266/1: Remove early stack deallocation from restore_user_regs

    Linus Torvalds
     
  • Pull two arm64 fixes from Will Deacon:
    "Arm64 fixes seem to come in pairs recently. We've got a fix for
    removing device-tree blobs when doing a make clean and another one
    addressing a missing include, which fixes build failures in -next for
    allmodconfig (spotted by Mark's buildbot).

    Summary from signed tag:

    - fix cleaning of .dtbs following directory restructuring
    - fix allmodconfig build breakage in -next due to missing include"

    * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
    arm64: dump: Fix implicit inclusion of definition for PCI_IOBASE
    arm64: Add dtb files to archclean rule

    Linus Torvalds
     

23 Jan, 2015

13 commits

  • SYSENTER emulation is broken in several ways:
    1. It misses the case of 16-bit code segments completely (CVE-2015-0239).
    2. MSR_IA32_SYSENTER_CS is checked in 64-bit mode incorrectly (bits 0 and 1 can
    still be set without causing #GP).
    3. MSR_IA32_SYSENTER_EIP and MSR_IA32_SYSENTER_ESP are not masked in
    legacy-mode.
    4. There is some unneeded code.

    Fix it.

    Cc: stable@vger.linux.org
    Signed-off-by: Nadav Amit
    Signed-off-by: Paolo Bonzini

    Nadav Amit
     
  • STR and SLDT with rip-relative operand can cause a host kernel oops.
    Mark them as DstMem as well.

    Cc: stable@vger.linux.org
    Signed-off-by: Nadav Amit
    Signed-off-by: Paolo Bonzini

    Nadav Amit
     
  • Since c9465b4ec37a68425 (arm64: add support to dump the kernel page tables)
    allmodconfig has failed to build on arm64 as a result of:

    ../arch/arm64/mm/dump.c:55:20: error: 'PCI_IOBASE' undeclared here (not in a function)

    Fix this by explicitly including io.h to ensure that a definition is
    present.

    Signed-off-by: Mark Brown
    Signed-off-by: Will Deacon

    Mark Brown
     
  • Many users see this message when booting without knowning that it is
    of no importance and that TSC calibration may have succeeded by
    another way.

    As explained by Paul Bolle in
    http://lkml.kernel.org/r/1348488259.1436.22.camel@x61.thuisdomein

    "Fast TSC calibration failed" should not be considered as an error
    since other calibration methods are being tried afterward. At most,
    those send a warning if they fail (not an error). So let's change
    the message from error to warning.

    [ tglx: Make if pr_info. It's really not important at all ]

    Fixes: c767a54ba065 x86/debug: Add KERN_ to bare printks, convert printks to pr_
    Signed-off-by: Alexandre Demers
    Cc: stable@vger.kernel.org
    Link: http://lkml.kernel.org/r/1418106470-6906-1-git-send-email-alexandre.f.demers@gmail.com
    Signed-off-by: Thomas Gleixner

    Alexandre Demers
     
  • Commit 0dbc6078c06bc0 ('x86, build, pci: Fix PCI_MSI build on !SMP')
    introduced the dependency that X86_UP_APIC is only available when
    PCI_MSI is false. This effectively prevents PCI_MSI support on 32bit
    UP systems because it disables both APIC and IO-APIC. But APIC support
    is architecturally required for PCI_MSI.

    The intention of the patch was to enforce APIC support when PCI_MSI is
    enabled, but failed to do so.

    Remove the !PCI_MSI dependency from X86_UP_APIC and enforce
    X86_UP_APIC when PCI_MSI support is enabled on 32bit UP systems.

    [ tglx: Massaged changelog ]

    Fixes 0dbc6078c06bc0 'x86, build, pci: Fix PCI_MSI build on !SMP'
    Signed-off-by: Bryan O'Donoghue
    Suggested-by: Thomas Gleixner
    Reviewed-by: Andy Shevchenko
    Cc: Thomas Petazzoni
    Cc: stable@vger.kernel.org
    Link: http://lkml.kernel.org/r/1421967529-9037-1-git-send-email-pure.logic@nexus-software.ie
    Signed-off-by: Thomas Gleixner

    Bryan O'Donoghue
     
  • Commit 281d4078bec3 ("x86: Make page cache mode a real type")
    introduced the symbols __cachemode2pte_tbl and __pte2cachemode_tbl and
    exported them via EXPORT_SYMBOL_GPL. The exports are part of a
    replacement of code which has been EXPORT_SYMBOL before these changes
    resulting in build breakage of out-of-tree non-gpl modules.

    Change EXPORT_SYMBOL_GPL to EXPORT-SYMBOL for these two symbols.

    Fixes: 281d4078bec3 "x86: Make page cache mode a real type"
    Reported-and-tested-by: Steven Noonan
    Signed-off-by: Juergen Gross
    Reviewed-by: Toshi Kani
    Link: http://lkml.kernel.org/r/1421926997-28615-1-git-send-email-jgross@suse.com
    Signed-off-by: Thomas Gleixner

    Juergen Gross
     
  • The Witcher 2 did something like this to allocate a TLS segment index:

    struct user_desc u_info;
    bzero(&u_info, sizeof(u_info));
    u_info.entry_number = (uint32_t)-1;

    syscall(SYS_set_thread_area, &u_info);

    Strictly speaking, this code was never correct. It should have set
    read_exec_only and seg_not_present to 1 to indicate that it wanted
    to find a free slot without putting anything there, or it should
    have put something sensible in the TLS slot if it wanted to allocate
    a TLS entry for real. The actual effect of this code was to
    allocate a bogus segment that could be used to exploit espfix.

    The set_thread_area hardening patches changed the behavior, causing
    set_thread_area to return -EINVAL and crashing the game.

    This changes set_thread_area to interpret this as a request to find
    a free slot and to leave it empty, which isn't *quite* what the game
    expects but should be close enough to keep it working. In
    particular, using the code above to allocate two segments will
    allocate the same segment both times.

    According to FrostbittenKing on Github, this fixes The Witcher 2.

    If this somehow still causes problems, we could instead allocate
    a limit==0 32-bit data segment, but that seems rather ugly to me.

    Fixes: 41bdc78544b8 x86/tls: Validate TLS entries to protect espfix
    Signed-off-by: Andy Lutomirski
    Cc: stable@vger.kernel.org
    Cc: torvalds@linux-foundation.org
    Link: http://lkml.kernel.org/r/0cb251abe1ff0958b8e468a9a9a905b80ae3a746.1421954363.git.luto@amacapital.net
    Signed-off-by: Thomas Gleixner

    Andy Lutomirski
     
  • 32-bit programs don't have an lm bit in their ABI, so they can't
    reliably cause LDT_empty to return true without resorting to memset.
    They shouldn't need to do this.

    This should fix a longstanding, if minor, issue in all 64-bit kernels
    as well as a potential regression in the TLS hardening code.

    Fixes: 41bdc78544b8 x86/tls: Validate TLS entries to protect espfix
    Cc: stable@vger.kernel.org
    Signed-off-by: Andy Lutomirski
    Cc: torvalds@linux-foundation.org
    Link: http://lkml.kernel.org/r/72a059de55e86ad5e2935c80aa91880ddf19d07c.1421954363.git.luto@amacapital.net
    Signed-off-by: Thomas Gleixner

    Andy Lutomirski
     
  • The 3.19 merge window saw some TLB modifications merged which caused a
    performance regression. They were fixed in commit 045bbb9fa.

    Once that fix was applied, I also noticed that there was a small
    but intermittent regression still present. It was not present
    consistently enough to bisect reliably, but I'm fairly confident
    that it came from (my own) MPX patches. The source was reading
    a relatively unused field in the mm_struct via arch_unmap.

    I also noted that this code was in the main instruction flow of
    do_munmap() and probably had more icache impact than we want.

    This patch does two things:
    1. Adds a static (via Kconfig) and dynamic (via cpuid) check
    for MPX with cpu_feature_enabled(). This keeps us from
    reading that cacheline in the mm and trades it for a check
    of the global CPUID variables at least on CPUs without MPX.
    2. Adds an unlikely() to ensure that the MPX call ends up out
    of the main instruction flow in do_munmap(). I've added
    a detailed comment about why this was done and why we want
    it even on systems where MPX is present.

    Signed-off-by: Dave Hansen
    Cc: luto@amacapital.net
    Cc: Dave Hansen
    Link: http://lkml.kernel.org/r/20150108223021.AEEAB987@viggo.jf.intel.com
    Signed-off-by: Thomas Gleixner

    Dave Hansen
     
  • We had originally planned on submitting MPX support in one patch
    set. We eventually broke it up in to two pieces for easier
    review. One of the features that didn't make the first round
    was supporting 32-bit binaries on 64-bit kernels.

    Once we split the set up, we never added code to restrict 32-bit
    binaries from _using_ MPX on 64-bit kernels.

    The 32-bit bounds tables are a different format than the 64-bit
    ones. Without this patch, the kernel will try to read a 32-bit
    binary's tables as if they were the 64-bit version. They will
    likely be noticed as being invalid rather quickly and the app
    will get killed, but that's kinda mean.

    This patch adds an explicit check, and will make a 64-bit kernel
    essentially behave as if it has no MPX support when called from
    a 32-bit binary.

    Signed-off-by: Dave Hansen
    Cc: Andy Lutomirski
    Cc: Dave Hansen
    Link: http://lkml.kernel.org/r/20150108223020.9E9AA511@viggo.jf.intel.com
    Signed-off-by: Thomas Gleixner

    Dave Hansen
     
  • Pull s390 fixes from Martin Schwidefsky:
    "Five more bug fixes from Michael for the s390 BPF jit"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
    s390/bpf: Zero extend parameters before calling C function
    s390/bpf: Fix sk_load_byte_msh()
    s390/bpf: Fix offset parameter for skb_copy_bits()
    s390/bpf: Fix skb_copy_bits() parameter passing
    s390/bpf: Fix JMP_JGE_K (A >= K) and JMP_JGT_K (A > K)

    Linus Torvalds
     
  • Pull one arch/nios2 fix from Ley Foon Tan:
    "Fix kuser trampoline address"

    * tag 'nios2-fixes-v3.19-rc6' of git://git.rocketboards.org/linux-socfpga-next:
    nios2: fix kuser trampoline address

    Linus Torvalds
     
  • Pull module and param fixes from Rusty Russell:
    "Surprising number of fixes this merge window :(

    The first two are minor fallout from the param rework which went in
    this merge window.

    The next three are a series which fixes a longstanding (but never
    previously reported and unlikely , so no CC stable) race between
    kallsyms and freeing the init section.

    Finally, a minor cleanup as our module refcount will now be -1 during
    unload"

    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
    module: make module_refcount() a signed integer.
    module: fix race in kallsyms resolution during module load success.
    module: remove mod arg from module_free, rename module_memfree().
    module_arch_freeing_init(): new hook for archs before module->module_init freed.
    param: fix uninitialized read with CONFIG_DEBUG_LOCK_ALLOC
    param: initialize store function to NULL if not available.

    Linus Torvalds
     

22 Jan, 2015

2 commits


21 Jan, 2015

1 commit


20 Jan, 2015

13 commits

  • The Hyper-V clocksource is continuous; mark it accordingly.

    Signed-off-by: K. Y. Srinivasan
    Acked-by: jasowang@redhat.com
    Cc: gregkh@linuxfoundation.org
    Cc: devel@linuxdriverproject.org
    Cc: olaf@aepfle.de
    Cc: apw@canonical.com
    Cc: stable@vger.kernel.org
    Link: http://lkml.kernel.org/r/1421108762-3331-1-git-send-email-kys@microsoft.com
    Signed-off-by: Thomas Gleixner

    K. Y. Srinivasan
     
  • VMWare seems not to emulate the PAT MSR correctly: reaeding
    MSR_IA32_CR_PAT returns 0 even after writing another value to it.

    Commit bd809af16e3ab triggers this VMWare bug when the kernel is
    booted as a VMWare guest.

    Detect this bug and don't use the read value if it is 0.

    Fixes: bd809af16e3ab "x86: Enable PAT to use cache mode translation tables"
    Reported-and-tested-by: Jongman Heo
    Acked-by: Alok N Kataria
    Signed-off-by: Juergen Gross
    Link: http://lkml.kernel.org/r/1421039745-14335-1-git-send-email-jgross@suse.com
    Signed-off-by: Thomas Gleixner

    Juergen Gross
     
  • The mis-naming likely was a copy-and-paste effect.

    Signed-off-by: Jan Beulich
    Cc: stable@vger.kernel.org
    Link: http://lkml.kernel.org/r/54B9408B0200007800055E8B@mail.emea.novell.com
    Signed-off-by: Thomas Gleixner

    Jan Beulich
     
  • On 64-bit, relocation is not required unless the load address gets
    changed. Without this, relocations do unexpected things when the kernel
    is above 4G.

    Reported-by: Baoquan He
    Signed-off-by: Kees Cook
    Tested-by: Thomas D.
    Cc: Vivek Goyal
    Cc: Jan Beulich
    Cc: Junjie Mao
    Cc: Andi Kleen
    Cc: stable@vger.kernel.org
    Link: http://lkml.kernel.org/r/20150116005146.GA4212@www.outflux.net
    Signed-off-by: Thomas Gleixner

    Kees Cook
     
  • As dts files have been reorganised under vendor subdirs, dtb files
    cannot be removed with "make distclean" now. Thus, this patch moves
    dtb files under archclean rule and removes unnecessary entries.

    Cc: Robert Richter
    Cc: Catalin Marinas
    Cc: Will Deacon
    Signed-off-by: Jungseok Lee
    Signed-off-by: Will Deacon

    Jungseok Lee
     
  • Xen overrides __acpi_register_gsi and leaves __acpi_unregister_gsi as is.
    That means, an IRQ allocated by acpi_register_gsi_xen_hvm() or
    acpi_register_gsi_xen() will be freed by acpi_unregister_gsi_ioapic(),
    which may cause undesired effects. So override __acpi_unregister_gsi to
    NULL for safety.

    Signed-off-by: Jiang Liu
    Tested-by: Sander Eikelenboom
    Cc: Tony Luck
    Cc: xen-devel@lists.xenproject.org
    Cc: Konrad Rzeszutek Wilk
    Cc: David Vrabel
    Cc: Bjorn Helgaas
    Cc: Graeme Gregory
    Cc: Lv Zheng
    Link: http://lkml.kernel.org/r/1421720467-7709-4-git-send-email-jiang.liu@linux.intel.com
    Signed-off-by: Thomas Gleixner

    Jiang Liu
     
  • Currently Xen Domain0 has special treatment for ACPI SCI interrupt,
    that is initialize irq for ACPI SCI at early stage in a special way as:
    xen_init_IRQ()
    ->pci_xen_initial_domain()
    ->xen_setup_acpi_sci()
    Allocate and initialize irq for ACPI SCI

    Function xen_setup_acpi_sci() calls acpi_gsi_to_irq() to get an irq
    number for ACPI SCI. But unfortunately acpi_gsi_to_irq() depends on
    IOAPIC irqdomains through following path
    acpi_gsi_to_irq()
    ->mp_map_gsi_to_irq()
    ->mp_map_pin_to_irq()
    ->check IOAPIC irqdomain

    For PV domains, it uses Xen event based interrupt manangement and
    doesn't make uses of native IOAPIC, so no irqdomains created for IOAPIC.
    This causes Xen domain0 fail to install interrupt handler for ACPI SCI
    and all ACPI events will be lost. Please refer to:
    https://lkml.org/lkml/2014/12/19/178

    So the fix is to get rid of special treatment for ACPI SCI, just treat
    ACPI SCI as normal GSI interrupt as:
    acpi_gsi_to_irq()
    ->acpi_register_gsi()
    ->acpi_register_gsi_xen()
    ->xen_register_gsi()

    With above change, there's no need for xen_setup_acpi_sci() anymore.
    The above change also works with bare metal kernel too.

    Signed-off-by: Jiang Liu
    Tested-by: Sander Eikelenboom
    Cc: Tony Luck
    Cc: xen-devel@lists.xenproject.org
    Cc: Konrad Rzeszutek Wilk
    Cc: David Vrabel
    Cc: Rafael J. Wysocki
    Cc: Len Brown
    Cc: Pavel Machek
    Cc: Bjorn Helgaas
    Link: http://lkml.kernel.org/r/1421720467-7709-2-git-send-email-jiang.liu@linux.intel.com
    Signed-off-by: Thomas Gleixner

    Jiang Liu
     
  • Convert file->f_dentry->d_inode to file_inode() so as to get layered
    filesystems right.

    Found with: git grep '[.>]f_dentry'

    Signed-off-by: David Howells
    Signed-off-by: Al Viro

    David Howells
     
  • Currently PWM functionality is broken on mx25 due to the wrong assignment of the
    PWM "per" clock.

    According to Documentation/devicetree/bindings/clock/imx25-clock.txt:
    pwm_ipg_per 52

    ,so update the pwm "per" to use 'pwm_ipg_per' instead of 'per10' clock.

    With this change PWM can work fine on mx25.

    Cc:
    Reported-by: Carlos Soto
    Signed-off-by: Fabio Estevam
    Signed-off-by: Shawn Guo

    Fabio Estevam
     
  • Pull crypto fix from Herbert Xu:
    "This fixes a regression that arose from the change to add a crypto
    prefix to module names which was done to prevent the loading of
    arbitrary modules through the Crypto API.

    In particular, a number of modules were missing the crypto prefix
    which meant that they could no longer be autoloaded"

    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
    crypto: add missing crypto module aliases

    Linus Torvalds
     
  • Nothing needs the module pointer any more, and the next patch will
    call it from RCU, where the module itself might no longer exist.
    Removing the arg is the safest approach.

    This just codifies the use of the module_alloc/module_free pattern
    which ftrace and bpf use.

    Signed-off-by: Rusty Russell
    Acked-by: Alexei Starovoitov
    Cc: Mikael Starvik
    Cc: Jesper Nilsson
    Cc: Ralf Baechle
    Cc: Ley Foon Tan
    Cc: Benjamin Herrenschmidt
    Cc: Chris Metcalf
    Cc: Steven Rostedt
    Cc: x86@kernel.org
    Cc: Ananth N Mavinakayanahalli
    Cc: Anil S Keshavamurthy
    Cc: Masami Hiramatsu
    Cc: linux-cris-kernel@axis.com
    Cc: linux-kernel@vger.kernel.org
    Cc: linux-mips@linux-mips.org
    Cc: nios2-dev@lists.rocketboards.org
    Cc: linuxppc-dev@lists.ozlabs.org
    Cc: sparclinux@vger.kernel.org
    Cc: netdev@vger.kernel.org

    Rusty Russell
     
  • Archs have been abusing module_free() to clean up their arch-specific
    allocations. Since module_free() is also (ab)used by BPF and trace code,
    let's keep it to simple allocations, and provide a hook called before
    that.

    This means that avr32, ia64, parisc and s390 no longer need to implement
    their own module_free() at all. avr32 doesn't need module_finalize()
    either.

    Signed-off-by: Rusty Russell
    Cc: Chris Metcalf
    Cc: Haavard Skinnemoen
    Cc: Hans-Christian Egtvedt
    Cc: Tony Luck
    Cc: Fenghua Yu
    Cc: "James E.J. Bottomley"
    Cc: Helge Deller
    Cc: Martin Schwidefsky
    Cc: Heiko Carstens
    Cc: linux-kernel@vger.kernel.org
    Cc: linux-ia64@vger.kernel.org
    Cc: linux-parisc@vger.kernel.org
    Cc: linux-s390@vger.kernel.org

    Rusty Russell
     
  • …ux/kernel/git/tmlind/linux-omap into fixes

    Merge "Urgent omap4 legacy interrupt regression fix for v3.19-rc series" from
    Tony Lindgren:

    A rather urgent pull request to fix omap4 legacy interrupts.

    The legacy interrupts on omap4 got broken when gic got changed to
    use irq_domain_add_linear() instead of the irq_domain_add_legacy(). We
    still have the hardcoded legacy IRQ numbers in use in several places,
    most notably the in the legacy DMA. It took a while to figure out
    what the problem was and how it should be fixed for the -rc series.

    Also include is a regression fix for the dra7 dwc3 suspend.

    * tag 'omap-for-v3.19/gic-regression-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    ARM: OMAP: Work around hardcoded interrupts
    arm: boot: dts: dra7: enable dwc3 suspend PHY quirk

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     

19 Jan, 2015

1 commit