14 Nov, 2015

4 commits

  • Pull btrfs fixes and cleanups from Chris Mason:
    "Some of this got cherry-picked from a github repo this week, but I
    verified the patches.

    We have three small scrub cleanups and a collection of fixes"

    * 'for-linus-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
    btrfs: Use fs_info directly in btrfs_delete_unused_bgs
    btrfs: Fix lost-data-profile caused by balance bg
    btrfs: Fix lost-data-profile caused by auto removing bg
    btrfs: Remove len argument from scrub_find_csum
    btrfs: Reduce unnecessary arguments in scrub_recheck_block
    btrfs: Use scrub_checksum_data and scrub_checksum_tree_block for scrub_recheck_block_checksum
    btrfs: Reset sblock->xxx_error stats before calling scrub_recheck_block_checksum
    btrfs: scrub: setup all fields for sblock_to_check
    btrfs: scrub: set error stats when tree block spanning stripes
    Btrfs: fix race when listing an inode's xattrs
    Btrfs: fix race leading to BUG_ON when running delalloc for nodatacow
    Btrfs: fix race leading to incorrect item deletion when dropping extents
    Btrfs: fix sleeping inside atomic context in qgroup rescan worker
    Btrfs: fix race waiting for qgroup rescan worker
    btrfs: qgroup: exit the rescan worker during umount
    Btrfs: fix extent accounting for partial direct IO writes

    Linus Torvalds
     
  • Pull Ceph updates from Sage Weil:
    "There are several patches from Ilya fixing RBD allocation lifecycle
    issues, a series adding a nocephx_sign_messages option (and associated
    bug fixes/cleanups), several patches from Zheng improving the
    (directory) fsync behavior, a big improvement in IO for direct-io
    requests when striping is enabled from Caifeng, and several other
    small fixes and cleanups"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
    libceph: clear msg->con in ceph_msg_release() only
    libceph: add nocephx_sign_messages option
    libceph: stop duplicating client fields in messenger
    libceph: drop authorizer check from cephx msg signing routines
    libceph: msg signing callouts don't need con argument
    libceph: evaluate osd_req_op_data() arguments only once
    ceph: make fsync() wait unsafe requests that created/modified inode
    ceph: add request to i_unsafe_dirops when getting unsafe reply
    libceph: introduce ceph_x_authorizer_cleanup()
    ceph: don't invalidate page cache when inode is no longer used
    rbd: remove duplicate calls to rbd_dev_mapping_clear()
    rbd: set device_type::release instead of device::release
    rbd: don't free rbd_dev outside of the release callback
    rbd: return -ENOMEM instead of pool id if rbd_dev_create() fails
    libceph: use local variable cursor instead of &msg->cursor
    libceph: remove con argument in handle_reply()
    ceph: combine as many iovec as possile into one OSD request
    ceph: fix message length computation
    ceph: fix a comment typo
    rbd: drop null test before destroy functions

    Linus Torvalds
     
  • Pull more documentation updates from Jon Corbet:
    "A few more documentation patches that wandered in and have no reason
    to wait; these include some improvements to the suggestions for email
    clients and patch submission"

    * tag '4.4-additional' of git://git.lwn.net/linux:
    Documentation: Add minimal Mutt config for using Gmail
    Documentation: Add note on sending files directly with Mutt
    Documentation: dontdiff: remove media from dontdiff
    Documentation/SubmittingPatches: discuss In-Reply-To
    Remove email address from Documentation/filesystems/overlayfs.txt
    can-doc: Add missing semicolon to example

    Linus Torvalds
     
  • Pull drm sti driver updates from Dave Airlie:
    "The sti driver had a requirement on some patches in Greg's tree, they
    are in, so I see no problems just merging this one now"

    * 'drm-next' of git://people.freedesktop.org/~airlied/linux:
    drm/sti: load HQVDP firmware the first time HQVDP's plane is used
    drm/sti: fix typo issue in sti_mode_config_init
    drm/sti: set mixer background color through module param
    drm/sti: Remove local fbdev emulation Kconfig option
    drm/sti: remove redundant sign extensions
    drm/sti: hdmi use of_get_i2c_adapter_by_node interface
    drm/sti: hdmi fix i2c adapter device refcounting
    drm/sti: Do not export symbols
    drm/sti: Build monolithic driver
    drm/sti: Use drm_crtc_vblank_*() API
    drm/sti: Store correct CRTC index in events
    drm/sti: Select FW_LOADER
    drm/sti: Constify function pointer structs

    Linus Torvalds
     

13 Nov, 2015

12 commits

  • Pull drm fixes from Dave Airlie:
    "One urgent fix for an oops under console lock in some drivers, one
    uapi fix, and one revert to fix rockchip regression"

    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    Revert "drm/rockchip: Convert the probe function to the generic drm_of_component_probe()"
    drm: Don't oops in drm_calc_timestamping_constants() if drm_vblank_init() wasn't called
    drm: Use userspace compatible type in fourcc_mod_code macro

    Linus Torvalds
     
  • Pull trace cleanups from Steven Rostedt:
    "This contains three more clean up patches.

    One patch is needed to make tracing work without debugfs now that
    tracing uses its own tracefs.

    The second is removing an unused variable.

    The third is fixing a warning about unused variables when MAX_TRACER
    is not configured. Note, this warning shows up in gcc 6.0, but does
    not show up in gcc 4.9, as it seems that gcc does not complain about
    constants not being used"

    * tag 'trace-v4.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
    tracing: #ifdef out uses of max trace when CONFIG_TRACER_MAX_TRACE is not set
    tracing: Remove unused ftrace_cpu_disabled per cpu variable
    tracing: Make tracing work when debugfs is not configured in

    Linus Torvalds
     
  • …gaignard/kernel into drm-next

    sti/drm changes

    Add better support for firmware loading
    lots of fixes.

    * 'drm-sti-next-2015-11-03' of http://git.linaro.org/people/benjamin.gaignard/kernel:
    drm/sti: load HQVDP firmware the first time HQVDP's plane is used
    drm/sti: fix typo issue in sti_mode_config_init
    drm/sti: set mixer background color through module param
    drm/sti: Remove local fbdev emulation Kconfig option
    drm/sti: remove redundant sign extensions
    drm/sti: hdmi use of_get_i2c_adapter_by_node interface
    drm/sti: hdmi fix i2c adapter device refcounting
    drm/sti: Do not export symbols
    drm/sti: Build monolithic driver
    drm/sti: Use drm_crtc_vblank_*() API
    drm/sti: Store correct CRTC index in events
    drm/sti: Select FW_LOADER
    drm/sti: Constify function pointer structs

    Dave Airlie
     
  • This reverts commit 52f5eb60940de889ce98a876f6933b574ead3225.

    Rockchip drm can't work with generic drm_of_component_probe now

    Signed-off-by: Mark Yao
    Acked-by: Liviu Dudau
    Signed-off-by: Dave Airlie

    Mark Yao
     
  • Seems the crtc helpers call drm_calc_timestamping_constants()
    unconditionally even if the driver didn't initialize vblank support by
    calling drm_vblank_init(). That used to be OK since the constants were
    stored under drm_crtc.

    However I broke this with
    commit eba1f35dfe14 ("drm: Move timestamping constants into drm_vblank_crtc")
    when I moved the constants to live inside the drm_vblank_crtc struct
    instead. If drm_vblank_init() isn't called, we don't allocate these
    structures, and so drm_calc_timestamping_constants() will oops.

    Fix it by adding a check into drm_calc_timestamping_constants() to see
    if vblank support was initialized at all. And to keep in line with other
    such checks, also toss in a check and warn for the case where vblank
    support was initialized, but the wrong number of crtcs was specified.

    Fixes the following sort of oops:
    BUG: unable to handle kernel NULL pointer dereference at 00000000000000b0
    IP: [] drm_calc_timestamping_constants+0x86/0x130 [drm]
    PGD 0
    Oops: 0002 [#1] SMP
    Modules linked in: sr_mod cdrom mgag200(+) i2c_algo_bit drm_kms_helper ahci syscopyarea sysfillrect sysimgblt libahci fb_sys_fops bnx2x ttm tg3(+) mdio drm ptp sd_mod libata i2c_core pps_core libcrc32c hpsa dm_mirror dm_region_hash dm_log dm_mod
    CPU: 0 PID: 418 Comm: kworker/0:2 Not tainted 4.3.0+ #1
    Hardware name: HP ProLiant DL380 Gen9, BIOS P89 06/09/2015
    Workqueue: events work_for_cpu_fn
    task: ffff88046ca95500 ti: ffff88007830c000 task.ti: ffff88007830c000
    RIP: 0010:[] [] drm_calc_timestamping_constants+0x86/0x130 [drm]
    RSP: 0018:ffff88007830f4e8 EFLAGS: 00010246
    RAX: 0000000000fe4c00 RBX: ffff88006a849160 RCX: 0000000000000540
    RDX: 0000000000000000 RSI: 000000000000fde8 RDI: ffff88006a849000
    RBP: ffff88007830f518 R08: ffff88007830c000 R09: 00000001b87e3712
    R10: 00000000000050c4 R11: 0000000000000000 R12: 0000000000fe4c00
    R13: ffff88006a849000 R14: 0000000000000000 R15: 000000000000fde8
    FS: 0000000000000000(0000) GS:ffff88046f800000(0000) knlGS:0000000000000000
    CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 00000000000000b0 CR3: 00000000019d6000 CR4: 00000000001406f0
    Stack:
    ffff88007830f518 ffff88006a849000 ffff880c69b90340 ffff880c69b90000
    ffff880c69b90348 ffff880c69b90340 ffff88007830f748 ffffffffa042f7e7
    ffff88006a849090 0000000000000000 ffff88006a849160 0000000000000000
    Call Trace:
    [] drm_crtc_helper_set_mode+0x3d7/0x4b0 [drm_kms_helper]
    [] drm_crtc_helper_set_config+0x8d4/0xb10 [drm_kms_helper]
    [] drm_mode_set_config_internal+0x64/0x100 [drm]
    [] drm_fb_helper_pan_display+0xa2/0x280 [drm_kms_helper]
    [] fb_pan_display+0xbb/0x170
    [] bit_update_start+0x20/0x50
    [] fbcon_switch+0x39b/0x590
    [] redraw_screen+0x1a0/0x240
    [] do_bind_con_driver+0x2ee/0x310
    [] do_take_over_console+0x141/0x1b0
    [] do_fbcon_takeover+0x57/0xb0
    [] fbcon_event_notify+0x60b/0x750
    [] notifier_call_chain+0x49/0x70
    [] __blocking_notifier_call_chain+0x4d/0x70
    [] blocking_notifier_call_chain+0x16/0x20
    [] fb_notifier_call_chain+0x1b/0x20
    [] register_framebuffer+0x1f1/0x330
    [] drm_fb_helper_initial_config+0x27a/0x3d0 [drm_kms_helper]
    [] mgag200_fbdev_init+0xdd/0xf0 [mgag200]
    [] mgag200_modeset_init+0x176/0x1e0 [mgag200]
    [] mgag200_driver_load+0x3f9/0x580 [mgag200]
    [] drm_dev_register+0xa7/0xb0 [drm]
    [] drm_get_pci_dev+0x8f/0x1e0 [drm]
    [] mga_pci_probe+0x9b/0xc0 [mgag200]
    [] local_pci_probe+0x45/0xa0
    [] work_for_cpu_fn+0x14/0x20
    [] process_one_work+0x14c/0x3c0
    [] worker_thread+0x244/0x470
    [] ? __schedule+0x2aa/0x760
    [] ? rescuer_thread+0x310/0x310
    [] kthread+0xd8/0xf0
    [] ? kthread_park+0x60/0x60
    [] ret_from_fork+0x3f/0x70
    [] ? kthread_park+0x60/0x60
    Code: f6 31 d2 41 89 c2 8b 83 b4 00 00 00 0f af c1 48 98 48 69 c0 40 42 0f 00 48 f7 f6 f6 43 74 10 41 89 c4 75 26 f6 05 9a 6f 03 00 01 89 96 b0 00 00 00 45 89 a6 ac 00 00 00 75 35 48 83 c4 08 5b
    RIP [] drm_calc_timestamping_constants+0x86/0x130 [drm]
    RSP
    CR2: 00000000000000b0

    Cc: Jeff Moyer
    Reported-by: Jeff Moyer
    References: http://lists.freedesktop.org/archives/dri-devel/2015-November/094217.html
    Fixes: eba1f35dfe14 ("drm: Move timestamping constants into drm_vblank_crtc")
    Signed-off-by: Ville Syrjälä
    Signed-off-by: Dave Airlie

    Ville Syrjälä
     
  • Single fix for uapi.

    * tag 'topic/drm-fixes-2015-11-11' of git://anongit.freedesktop.org/drm-intel:
    drm: Use userspace compatible type in fourcc_mod_code macro

    Dave Airlie
     
  • Pull misc block fixes from Jens Axboe:
    "Stuff that got collected after the merge window opened. This
    contains:

    - NVMe:
    - Fix for non-striped transfer size setting for NVMe from
    Sathyavathi.
    - (Some) support for the weird Apple nvme controller in the
    macbooks. From Stephan Günther.

    - The error value leak for dax from Al.

    - A few minor blk-mq tweaks from me.

    - Add the new linux-block@vger.kernel.org mailing list to the
    MAINTAINERS file.

    - Discard fix for brd, from Jan.

    - A kerneldoc warning for block core from Randy.

    - An older fix from Vivek, converting a WARN_ON() to a rate limited
    printk when a device is hot removed with dirty inodes"

    * 'for-linus' of git://git.kernel.dk/linux-block:
    block: don't hardcode blk_qc_t -> tag mask
    dax_io(): don't let non-error value escape via retval instead of EFAULT
    block: fix blk-core.c kernel-doc warning
    fs/block_dev.c: Remove WARN_ON() when inode writeback fails
    NVMe: add support for Apple NVMe controller
    NVMe: use split lo_hi_{read,write}q
    blk-mq: mark __blk_mq_complete_request() static
    MAINTAINERS: add reference to new linux-block list
    NVMe: Increase the max transfer size when mdts is 0
    brd: Refuse improperly aligned discard requests

    Linus Torvalds
     
  • Pull security subsystem fixes from James Morris:
    "This includes several fixes for TPM, as well as a fix for the x.509
    certificate parser to address CVE-2015-5327"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
    X.509: Fix the time validation [ver #2]
    tpm: fix compat 'ppi' link handling in tpm_chip_register()
    tpm: fix missing migratable flag in sealing functionality for TPM2
    TPM: revert the list handling logic fixed in 398a1e7
    TPM: Avoid reference to potentially freed memory
    tpm_tis: restore IRQ vector in IO memory after failed probing
    tpm_tis: free irq after probing

    Linus Torvalds
     
  • Pull arm64 fixes and clean-ups from Catalin Marinas:
    "Here's a second pull request for this merging window with some
    fixes/clean-ups:

    - __cmpxchg_double*() return type fix to avoid truncation of a long
    to int and subsequent logical "not" in cmpxchg_double()
    misinterpreting the operation success/failure

    - BPF fixes for mod and div by zero

    - Fix compilation with STRICT_MM_TYPECHECKS enabled

    - VDSO build fix without libgcov

    - Some static and __maybe_unused annotations

    - Kconfig clean-up (FRAME_POINTER)

    - defconfig update for CRYPTO_CRC32_ARM64"

    * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
    arm64: suspend: make hw_breakpoint_restore static
    arm64: mmu: make split_pud and fixup_executable static
    arm64: smp: make of_parse_and_init_cpus static
    arm64: use linux/types.h in kvm.h
    arm64: build vdso without libgcov
    arm64: mark cpus_have_hwcap as __maybe_unused
    arm64: remove redundant FRAME_POINTER kconfig option and force to select it
    arm64: fix R/O permissions of FDT mapping
    arm64: fix STRICT_MM_TYPECHECKS issue in PTE_CONT manipulation
    arm64: bpf: fix mod-by-zero case
    arm64: bpf: fix div-by-zero case
    arm64: Enable CRYPTO_CRC32_ARM64 in defconfig
    arm64: cmpxchg_dbl: fix return value type

    Linus Torvalds
     
  • Pull h8300 updates from Yoshinori Sato:
    "Some bug fixes"

    * tag 'for-4.4' of git://git.osdn.jp/gitroot/uclinux-h8/linux:
    h8300: enable CLKSRC_OF
    h8300: Don't set CROSS_COMPILE unconditionally
    asm-generic: {get,put}_user ptr argument evaluate only 1 time
    h8300: bit io fix
    h8300: zImage fix
    h8300: register address fix
    h8300: Fix alignment for .data
    h8300: unaligned divcr register support.

    Linus Torvalds
     
  • Pull second batch of kvm updates from Paolo Bonzini:
    "Four changes:

    - x86: work around two nasty cases where a benign exception occurs
    while another is being delivered. The endless stream of exceptions
    causes an infinite loop in the processor, which not even NMIs or
    SMIs can interrupt; in the virt case, there is no possibility to
    exit to the host either.

    - x86: support for Skylake per-guest TSC rate. Long supported by
    AMD, the patches mostly move things from there to common
    arch/x86/kvm/ code.

    - generic: remove local_irq_save/restore from the guest entry and
    exit paths when context tracking is enabled. The patches are a few
    months old, but we discussed them again at kernel summit. Andy
    will pick up from here and, in 4.5, try to remove it from the user
    entry/exit paths.

    - PPC: Two bug fixes, see merge commit 370289756becc for details"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (21 commits)
    KVM: x86: rename update_db_bp_intercept to update_bp_intercept
    KVM: svm: unconditionally intercept #DB
    KVM: x86: work around infinite loop in microcode when #AC is delivered
    context_tracking: avoid irq_save/irq_restore on guest entry and exit
    context_tracking: remove duplicate enabled check
    KVM: VMX: Dump TSC multiplier in dump_vmcs()
    KVM: VMX: Use a scaled host TSC for guest readings of MSR_IA32_TSC
    KVM: VMX: Setup TSC scaling ratio when a vcpu is loaded
    KVM: VMX: Enable and initialize VMX TSC scaling
    KVM: x86: Use the correct vcpu's TSC rate to compute time scale
    KVM: x86: Move TSC scaling logic out of call-back read_l1_tsc()
    KVM: x86: Move TSC scaling logic out of call-back adjust_tsc_offset()
    KVM: x86: Replace call-back compute_tsc_offset() with a common function
    KVM: x86: Replace call-back set_tsc_khz() with a common function
    KVM: x86: Add a common TSC scaling function
    KVM: x86: Add a common TSC scaling ratio field in kvm_vcpu_arch
    KVM: x86: Collect information for setting TSC scaling ratio
    KVM: x86: declare a few variables as __read_mostly
    KVM: x86: merge handle_mmio_page_fault and handle_mmio_page_fault_common
    KVM: PPC: Book3S HV: Don't dynamically split core when already split
    ...

    Linus Torvalds
     
  • Pull more power management and ACPI updates from Rafael Wysocki:
    "The only new feature in this batch is support for the ACPI _CCA device
    configuration object, which it a pre-requisite for future ACPI PCI
    support on ARM64, but should not affect the other architectures.

    The rest is fixes and cleanups, mostly in cpufreq (including
    intel_pstate), the Operating Performace Points (OPP) framework and
    tools (cpupower and turbostat).

    Specifics:

    - Support for the ACPI _CCA configuration object intended to tell the
    OS whether or not a bus master device supports hardware managed
    cache coherency and a new set of functions to allow drivers to
    check the cache coherency support for devices in a platform
    firmware interface agnostic way (Suravee Suthikulpanit, Jeremy
    Linton).

    - ACPI backlight quirks for ESPRIMO Mobile M9410 and Dell XPS L421X
    (Aaron Lu, Hans de Goede).

    - Fixes for the arm_big_little and s5pv210-cpufreq cpufreq drivers
    (Jon Medhurst, Nicolas Pitre).

    - kfree()-related fixup for the recently introduced CPPC cpufreq
    frontend (Markus Elfring).

    - intel_pstate fix reducing kernel log noise on systems where
    P-states are managed by hardware (Prarit Bhargava).

    - intel_pstate maintainers information update (Srinivas Pandruvada).

    - cpufreq core optimization related to the handling of delayed work
    items used by governors (Viresh Kumar).

    - Locking fixes and cleanups of the Operating Performance Points
    (OPP) framework (Viresh Kumar).

    - Generic power domains framework cleanups (Lina Iyer).

    - cpupower tool updates (Jacob Tanenbaum, Sriram Raghunathan, Thomas
    Renninger).

    - turbostat tool updates (Len Brown)"

    * tag 'pm+acpi-4.4-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (32 commits)
    PCI: ACPI: Add support for PCI device DMA coherency
    PCI: OF: Move of_pci_dma_configure() to pci_dma_configure()
    of/pci: Fix pci_get_host_bridge_device leak
    device property: ACPI: Remove unused DMA APIs
    device property: ACPI: Make use of the new DMA Attribute APIs
    device property: Adding DMA Attribute APIs for Generic Devices
    ACPI: Adding DMA Attribute APIs for ACPI Device
    device property: Introducing enum dev_dma_attr
    ACPI: Honor ACPI _CCA attribute setting
    cpufreq: CPPC: Delete an unnecessary check before the function call kfree()
    PM / OPP: Add opp_rcu_lockdep_assert() to _find_device_opp()
    PM / OPP: Hold dev_opp_list_lock for writers
    PM / OPP: Protect updates to list_dev with mutex
    PM / OPP: Propagate error properly from dev_pm_opp_set_sharing_cpus()
    cpufreq: s5pv210-cpufreq: fix wrong do_div() usage
    MAINTAINERS: update for intel P-state driver
    Creating a common structure initialization pattern for struct option
    cpupower: Enable disabled Cstates if they are below max latency
    cpupower: Remove debug message when using cpupower idle-set -D switch
    cpupower: cpupower monitor reports uninitialized values for offline cpus
    ...

    Linus Torvalds
     

12 Nov, 2015

24 commits

  • hw_breakpoint_restore is only used within suspend.c, so it can be
    declared static.

    Signed-off-by: Jisheng Zhang
    Signed-off-by: Catalin Marinas

    Jisheng Zhang
     
  • split_pud and fixup_executable are only called from within mmu.c, so
    they can be declared static.

    Signed-off-by: Jisheng Zhang
    Signed-off-by: Catalin Marinas

    Jisheng Zhang
     
  • of_parse_and_init_cpus is only called from within smp.c, so it can be
    declared static.

    Signed-off-by: Jisheng Zhang
    Signed-off-by: Catalin Marinas

    Jisheng Zhang
     
  • We should always use linux/types.h instead of asm/types.h for
    consistency, and Kbuild actually warns about it:

    ./usr/include/asm/kvm.h:35: include of is preferred over

    This patch does as Kbuild asks us.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Catalin Marinas

    Arnd Bergmann
     
  • On a cross-toolchain without glibc support, libgcov may not be
    available, and attempting to build an arm64 kernel with GCOV
    enabled then results in a build error:

    /home/arnd/cross-gcc/lib/gcc/aarch64-linux/5.2.1/../../../../aarch64-linux/bin/ld: cannot find -lgcov

    We don't really want to link libgcov into the vdso anyway, so
    this patch just disables GCOV in the vdso directory, just as
    we do for most other architectures.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Catalin Marinas

    Arnd Bergmann
     
  • cpus_have_hwcap() is defined as a 'static' function an only used in
    one place that is inside of an #ifdef, so we get a warning when
    the only user is disabled:

    arch/arm64/kernel/cpufeature.c:699:13: warning: 'cpus_have_hwcap' defined but not used [-Wunused-function]

    This marks the function as __maybe_unused, so the compiler knows that
    it can drop the function definition without warning about it.

    Signed-off-by: Arnd Bergmann
    Fixes: 37b01d53ceef ("arm64/HWCAP: Use system wide safe values")
    Signed-off-by: Catalin Marinas

    Arnd Bergmann
     
  • This fixes CVE-2015-5327. It affects kernels from 4.3-rc1 onwards.

    Fix the X.509 time validation to use month number-1 when looking up the
    number of days in that month. Also put the month number validation before
    doing the lookup so as not to risk overrunning the array.

    This can be tested by doing the following:

    cat <
    Signed-off-by: David Howells
    Tested-by: Mimi Zohar
    Acked-by: David Woodhouse
    Signed-off-by: James Morris

    David Howells
     
  • James Morris
     
  • …ulus/powerpc into HEAD

    "Paolo,

    I have two fixes for HV KVM which I would like to have included in
    v4.4-rc1. The first one is a fix for a bug identified by Red Hat
    which causes occasional guest crashes. The second one fixes a bug
    which causes host stalls and timeouts under certain circumstances when
    the host is configured for static 2-way micro-threading mode."

    Paolo Bonzini
     
  • Pull xfs updates from Dave Chinner:
    "There is nothing really major here - the only significant addition is
    the per-mount operation statistics infrastructure. Otherwises there's
    various ACL, xattr, DAX, AIO and logging fixes, and a smattering of
    small cleanups and fixes elsewhere.

    Summary:

    - per-mount operational statistics in sysfs
    - fixes for concurrent aio append write submission
    - various logging fixes
    - detection of zeroed logs and invalid log sequence numbers on v5 filesystems
    - memory allocation failure message improvements
    - a bunch of xattr/ACL fixes
    - fdatasync optimisation
    - miscellaneous other fixes and cleanups"

    * tag 'xfs-for-linus-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs: (39 commits)
    xfs: give all workqueues rescuer threads
    xfs: fix log recovery op header validation assert
    xfs: Fix error path in xfs_get_acl
    xfs: optimise away log forces on timestamp updates for fdatasync
    xfs: don't leak uuid table on rmmod
    xfs: invalidate cached acl if set via ioctl
    xfs: Plug memory leak in xfs_attrmulti_attr_set
    xfs: Validate the length of on-disk ACLs
    xfs: invalidate cached acl if set directly via xattr
    xfs: xfs_filemap_pmd_fault treats read faults as write faults
    xfs: add ->pfn_mkwrite support for DAX
    xfs: DAX does not use IO completion callbacks
    xfs: Don't use unwritten extents for DAX
    xfs: introduce BMAPI_ZERO for allocating zeroed extents
    xfs: fix inode size update overflow in xfs_map_direct()
    xfs: clear PF_NOFREEZE for xfsaild kthread
    xfs: fix an error code in xfs_fs_fill_super()
    xfs: stats are no longer dependent on CONFIG_PROC_FS
    xfs: simplify /proc teardown & error handling
    xfs: per-filesystem stats counter implementation
    ...

    Linus Torvalds
     
  • Pull nfsd updates from Bruce Fields:
    "Apologies for coming a little late in the merge window. Fortunately
    this is another fairly quiet one:

    Mainly smaller bugfixes and cleanup. We're still finding some bugs
    from the breakup of the big NFSv4 state lock in 3.17 -- thanks
    especially to Andrew Elble and Jeff Layton for tracking down some of
    the remaining races"

    * tag 'nfsd-4.4' of git://linux-nfs.org/~bfields/linux:
    svcrpc: document lack of some memory barriers
    nfsd: fix race with open / open upgrade stateids
    nfsd: eliminate sending duplicate and repeated delegations
    nfsd: remove recurring workqueue job to clean DRC
    SUNRPC: drop stale comment in svc_setup_socket()
    nfsd: ensure that seqid morphing operations are atomic wrt to copies
    nfsd: serialize layout stateid morphing operations
    nfsd: improve client_has_state to check for unused openowners
    nfsd: fix clid_inuse on mount with security change
    sunrpc/cache: make cache flushing more reliable.
    nfsd: move include of state.h from trace.c to trace.h
    sunrpc: avoid warning in gss_key_timeout
    lockd: get rid of reference-counted NSM RPC clients
    SUNRPC: Use MSG_SENDPAGE_NOTLAST when calling sendpage()
    lockd: create NSM handles per net namespace
    nfsd: switch unsigned char flags in svc_fh to bools
    nfsd: move svc_fh->fh_maxsize to just after fh_handle
    nfsd: drop null test before destroy functions
    nfsd: serialize state seqid morphing operations

    Linus Torvalds
     
  • Pull DeviceTree fixes from Rob Herring:

    - Add empty of_translate_address needed for HiSilicon network driver.

    - Fix alignment requirements for CMA regions in DT.

    - Fix booting on PPC systems which can't do WARN() early.

    - Rename ak4554 binding doc from .c to .txt.

    * tag 'devicetree-fixes-for-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
    of: Provide static inline function for of_translate_address if needed
    drivers: of: of_reserved_mem: fixup the alignment with CMA setup
    of: Print rather than WARN'ing when overlap check fails
    dt-bindings: ak4554: extension should be .txt

    Linus Torvalds
     
  • Missing a include file caused compile error.

    drivers/thermal/rockchip_thermal.c: In function 'rockchip_thermal_suspend':
    drivers/thermal/rockchip_thermal.c:720:2: error: implicit declaration of function 'pinctrl_pm_select_sleep_state' [-Werror=implicit-function-declaration]
    ...

    Fixes: 7e38a5b1daa1 ("thermal: rockchip: support the sleep pinctrl state
    to avoid glitches")

    Reported-by: Stephen Rothwell
    Reported-by: kbuild test robot
    Signed-off-by: Caesar Wang
    Signed-off-by: Eduardo Valentin
    Signed-off-by: Linus Torvalds

    Caesar Wang
     
  • Signed-off-by: Yoshinori Sato

    Yoshinori Sato
     
  • * pm-tools:
    Creating a common structure initialization pattern for struct option
    cpupower: Enable disabled Cstates if they are below max latency
    cpupower: Remove debug message when using cpupower idle-set -D switch
    cpupower: cpupower monitor reports uninitialized values for offline cpus
    tools/power turbostat: bugfix: print MAX_NON_TURBO_RATIO
    tools/power turbostat: simplify Bzy_MHz calculation

    Rafael J. Wysocki
     
  • * pm-domains:
    PM / Domains: Allocate memory outside domain locks
    PM / Domains: Remove dev->driver check for runtime PM

    Rafael J. Wysocki
     
  • Pull firewire fix from Stefan Richter:
    "Work around JMicron initialization quirk, which ffected isochronous
    transmission, e.g. audio via FFADO or ALSA"

    * tag 'firewire-update' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
    firewire: ohci: fix JMicron JMB38x IT context discovery

    Linus Torvalds
     
  • This patch provides a minimal configuration to set up Mutt for
    submitting plain text patches using Gmail.

    Signed-off-by: Eddie Kovsky
    Reviewed-by: Darren Hart
    Signed-off-by: Jonathan Corbet

    Eddie Kovsky
     
  • Like 'git send-email', Mutt can also be used to send patches generated
    with 'git format-patch'. This works regardless of the editor the
    contributor has set up to use with Mutt.

    Signed-off-by: Eddie Kovsky
    Reviewed-by: Darren Hart
    Signed-off-by: Jonathan Corbet

    Eddie Kovsky
     
  • Pull vfs update from Al Viro:

    - misc stable fixes

    - trivial kernel-doc and comment fixups

    - remove never-used block_page_mkwrite() wrapper function, and rename
    the function that is _actually_ used to not have double underscores.

    * 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    fs: 9p: cache.h: Add #define of include guard
    vfs: remove stale comment in inode_operations
    vfs: remove unused wrapper block_page_mkwrite()
    binfmt_elf: Correct `arch_check_elf's description
    fs: fix writeback.c kernel-doc warnings
    fs: fix inode.c kernel-doc warning
    fs/pipe.c: return error code rather than 0 in pipe_write()
    fs/pipe.c: preserve alloc_file() error code
    binfmt_elf: Don't clobber passed executable's file header
    FS-Cache: Handle a write to the page immediately beyond the EOF marker
    cachefiles: perform test on s_blocksize when opening cache file.
    FS-Cache: Don't override netfs's primary_index if registering failed
    FS-Cache: Increase reference of parent after registering, netfs success
    debugfs: fix refcount imbalance in start_creating

    Linus Torvalds
     
  • Pull crypto fix from Herbert Xu:
    "This fixes a bug in the algif_hash interface that may lead to crashes
    when used with certain algorithms such as HMAC"

    * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
    crypto: algif_hash - Only export and import on sockets with data

    Linus Torvalds
     
  • …erry.reding/linux-pwm

    Pull pwm updates from Thierry Reding:
    "This round contains a couple of new drivers for the Marvell Berlin
    family of SoCs, various SoCs from Renesas and Broadcom as well as the
    backlight PWM present on MediaTek SoCs.

    Further existing drivers are extended to support a wider range of
    hardware.

    The remaining patches are minor fixes and cleanups across the board.

    Note that one of the patches included in this pull request is against
    arch/unicore32. I've included it here because I couldn't get a
    response from Guan Xuetao and I consider the change low-risk.
    Equivalent patches have been merged and tested in Samsung and PXA
    trees. The goal is to finally get rid of legacy code paths that have
    repeatedly been causing headaches"

    * tag 'pwm/for-4.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (24 commits)
    pwm: sunxi: Fix whitespace issue
    pwm: sysfs: Make use of the DEVICE_ATTR_[RW][WO] macro's
    pwm: sysfs: Remove unnecessary temporary variable
    unicore32: nb0916: Use PWM lookup table
    pwm: pwm-rcar: Revise the device tree binding document about compatible
    pwm: Return -ENODEV if no PWM lookup match is found
    pwm: sun4i: Add support for PWM controller on sun5i SoCs
    pwm: Set enable state properly on failed call to enable
    pwm: lpss: Add support for runtime PM
    pwm: lpss: Add more Intel Broxton IDs
    pwm: lpss: Support all four PWMs on Intel Broxton
    pwm: lpss: Add support for multiple PWMs
    pwm-pca9685: enable ACPI device found on Galileo Gen2
    pwm: Add MediaTek display PWM driver support
    dt-bindings: pwm: Add MediaTek display PWM bindings
    pwm: tipwmss: Enable on TI DRA7x and AM437x
    pwm: atmel-hlcdc: add sama5d2 SoC support.
    pwm: Add Broadcom BCM7038 PWM controller support
    Documentation: dt: add Broadcom BCM7038 PWM controller binding
    pwm: Add support for R-Car PWM Timer
    ...

    Linus Torvalds
     
  • media will hide all the changes in drivers/media.

    Signed-off-by: Wang YanQing
    Signed-off-by: Jonathan Corbet

    Wang YanQing
     
  • Add a paragraph suggesting best practices for when to link patches
    to previous LKML messages via In-Reply-To.

    Signed-off-by: Chris Metcalf
    [jc: moved the added text to a separate section]
    Signed-off-by: Jonathan Corbet

    Chris Metcalf