* refs/heads/tmp-bb52bba:
Linux 4.9.88
PCI: dwc: Fix enumeration end when reaching root subordinate
earlycon: add reg-offset to physical address before mapping
serial: core: mark port as initialized in autoconfig
serial: 8250_pci: Add Brainboxes UC-260 4 port serial device
usb: gadget: f_fs: Fix use-after-free in ffs_fs_kill_sb()
usb: usbmon: Read text within supplied buffer size
usb: quirks: add control message delay for 1b1c:1b20
usbip: vudc: fix null pointer dereference on udc->lock
USB: storage: Add JMicron bridge 152d:2567 to unusual_devs.h
staging: android: ashmem: Fix lockdep issue during llseek
staging: comedi: fix comedi_nsamples_left.
uas: fix comparison for error code
tty/serial: atmel: add new version check for usart
serial: sh-sci: prevent lockup on full TTY buffers
ASoC: rt5651: Fix regcache sync errors on resume
ASoC: sgtl5000: Fix suspend/resume
x86: Treat R_X86_64_PLT32 as R_X86_64_PC32
x86/module: Detect and skip invalid relocations
NFS: Fix unstable write completion
NFS: Fix an incorrect type in struct nfs_direct_req
scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport
ubi: Fix race condition between ubi volume creation and udev
ext4: inplace xattr block update fails to deduplicate blocks
netfilter: x_tables: pack percpu counter allocations
netfilter: x_tables: pass xt_counters struct to counter allocator
netfilter: x_tables: pass xt_counters struct instead of packet counter
netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt
netfilter: bridge: ebt_among: add missing match size checks
netfilter: ebtables: CONFIG_COMPAT: don't trust userland offsets
netfilter: IDLETIMER: be syzkaller friendly
netfilter: nat: cope with negative port range
netfilter: x_tables: fix missing timer initialization in xt_LED
netfilter: add back stackpointer size checks
tc358743: fix register i2c_rd/wr function fix
Input: tca8418_keypad - remove double read of key event register
ARM: omap2: hide omap3_save_secure_ram on non-OMAP3 builds
watchdog: hpwdt: Remove legacy NMI sourcing.
watchdog: hpwdt: fix unused variable warning
watchdog: hpwdt: Check source of NMI
watchdog: hpwdt: SMBIOS check
x86/paravirt, objtool: Annotate indirect calls
x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP
x86/boot, objtool: Annotate indirect jump in secondary_startup_64()
x86/speculation, objtool: Annotate indirect calls/jumps for objtool
x86/retpoline: Support retpoline builds with Clang
x86/speculation: Use IBRS if available before calling into firmware
Revert "x86/retpoline: Simplify vmexit_fill_RSB()"
nospec: Include <asm/barrier.h> dependency
nospec: Kill array_index_nospec_mask_check()
ALSA: hda: add dock and led support for HP ProBook 640 G2
ALSA: hda: add dock and led support for HP EliteBook 820 G3
ALSA: seq: More protection for concurrent write and ioctl races
ALSA: seq: Don't allow resizing pool in use
ALSA: hda/realtek - Make dock sound work on ThinkPad L570
ALSA: hda/realtek - Fix dock line-out volume on Dell Precision 7520
ALSA: hda/realtek: Limit mic boost on T480
x86/spectre_v2: Don't check microcode versions when running under hypervisors
perf tools: Fix trigger class trigger_on()
x86/MCE: Serialize sysfs changes
bcache: don't attach backing with duplicate UUID
bcache: fix crashes in duplicate cache device register
IB/mlx5: Fix incorrect size of klms in the memory region
kbuild: Handle builtin dtb file names containing hyphens
KVM: s390: fix memory overwrites when not using SCA entries
virtio_ring: fix num_free handling in error case
loop: Fix lost writes caused by missing flag
Input: matrix_keypad - fix race when disabling interrupts
MIPS: OCTEON: irq: Check for null return on kzalloc allocation
MIPS: ath25: Check for kzalloc allocation failure
MIPS: BMIPS: Do not mask IPIs during suspend
drm/amdgpu:Always save uvd vcpu_bo in VM Mode
drm/amdgpu:Correct max uvd handles
drm/amdgpu: fix KV harvesting
drm/radeon: fix KV harvesting
drm/amdgpu: Notify sbios device ready before send request
drm/amdgpu: Fix deadlock on runtime suspend
drm/radeon: Fix deadlock on runtime suspend
drm/nouveau: Fix deadlock on runtime suspend
drm: Allow determining if current task is output poll worker
workqueue: Allow retrieval of current task's work struct
drm/i915: Always call to intel_display_set_init_power() in resume_early.
scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS
drm/i915: Try EDID bitbanging on HDMI after failed read
RDMA/mlx5: Fix integer overflow while resizing CQ
RDMA/ucma: Check that user doesn't overflow QP state
RDMA/ucma: Limit possible option size
ANDROID: sdcardfs: fix lock issue on 32 bit/SMP architectures
UPSTREAM: kasan: add functions for unpoisoning stack variables
UPSTREAM: kasan: add tests for alloca poisoning
UPSTREAM: kasan: support alloca() poisoning
UPSTREAM: kasan/Makefile: support LLVM style asan parameters
BACKPORT: kasan: add compiler support for clang
kbuild: fix --gc-sections
BACKPORT: fix "netfilter: xt_bpf: Fix XT_BPF_MODE_FD_PINNED mode of 'xt_bpf_info_v1'"
UPSTREAM: netfilter: xt_bpf: add overflow checks
UPSTREAM: netfilter: xt_bpf: Fix XT_BPF_MODE_FD_PINNED mode of 'xt_bpf_info_v1'
UPSTREAM: netfilter: xt_bpf: support ebpf
FROMLIST: f2fs: don't put dentry page in pagecache into highmem
Change-Id: I7f13fedc725fe5333e18e4e5b6639eee27ea1120
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAlquPRAACgkQONu9yGCS
aT6gpA/9GRBca/4SKY1Bdsqtw12mVa2iy/xl4tBhzZAxxMiEjam9vDFNd9Gw0r/J
iNGUFiZgWkN/dVMLnadPdtKbsg/MmD2CvXPtZY5LywgNyvTY6zZxMXExzjjI3h8n
bdC68g+qcolPsqwZHJL/wScSZH8Q2UZKwugRCoGkzt6dZmLoiVWMmb9RXc36hPek
cPyGne/uQMlanMOQYAVe2enJoC18JWeeOuPLzSvs3y8Rj1ZlzWM3aaAaTdKfiMWc
ewK/DDIu9a/pt5xmi2RgCuMZeU84qCvZMAt+v2e56LmAMqZ5MQHUcXscUDofyvrt
X3jSaXV5gvKGSGY+/U4JzDX+/B37z6mKUZF7b7ZTpdTfR6cgHFW7TGPkCkNQplfK
aVF1cCIy65Gjp62LZXSQI5rSAB5C72ryk4resFVZ+QcLRzPhYSS1H6aD5UzfdhkC
QhfKJU+6HfpGEWtjL5pUkNFOprP8f2mfFNNuzmo9Ev5f+qvyT35WCyWzSOz0a/E6
dQNhHCpUzykLI4YuUFIUaieNLIshhrGnNxo32CKzLqup8NMtyXsyyzGciSWSWNyw
f9tbULluWlimDx+hukrrnD8Hw5jzN0D7JlSy9WVjYNvBV6CLGz6ZalzhY0uUAjoT
IsgiN76klZ77fOr6FhnU+mErPBexuYgScWJW8TeqqmK+0gX4i0Y=
=X9zL
-----END PGP SIGNATURE-----
Merge 4.9.88 into android-4.9
Changes in 4.9.88
RDMA/ucma: Limit possible option size
RDMA/ucma: Check that user doesn't overflow QP state
RDMA/mlx5: Fix integer overflow while resizing CQ
drm/i915: Try EDID bitbanging on HDMI after failed read
scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS
drm/i915: Always call to intel_display_set_init_power() in resume_early.
workqueue: Allow retrieval of current task's work struct
drm: Allow determining if current task is output poll worker
drm/nouveau: Fix deadlock on runtime suspend
drm/radeon: Fix deadlock on runtime suspend
drm/amdgpu: Fix deadlock on runtime suspend
drm/amdgpu: Notify sbios device ready before send request
drm/radeon: fix KV harvesting
drm/amdgpu: fix KV harvesting
drm/amdgpu:Correct max uvd handles
drm/amdgpu:Always save uvd vcpu_bo in VM Mode
MIPS: BMIPS: Do not mask IPIs during suspend
MIPS: ath25: Check for kzalloc allocation failure
MIPS: OCTEON: irq: Check for null return on kzalloc allocation
Input: matrix_keypad - fix race when disabling interrupts
loop: Fix lost writes caused by missing flag
virtio_ring: fix num_free handling in error case
KVM: s390: fix memory overwrites when not using SCA entries
kbuild: Handle builtin dtb file names containing hyphens
IB/mlx5: Fix incorrect size of klms in the memory region
bcache: fix crashes in duplicate cache device register
bcache: don't attach backing with duplicate UUID
x86/MCE: Serialize sysfs changes
perf tools: Fix trigger class trigger_on()
x86/spectre_v2: Don't check microcode versions when running under hypervisors
ALSA: hda/realtek: Limit mic boost on T480
ALSA: hda/realtek - Fix dock line-out volume on Dell Precision 7520
ALSA: hda/realtek - Make dock sound work on ThinkPad L570
ALSA: seq: Don't allow resizing pool in use
ALSA: seq: More protection for concurrent write and ioctl races
ALSA: hda: add dock and led support for HP EliteBook 820 G3
ALSA: hda: add dock and led support for HP ProBook 640 G2
nospec: Kill array_index_nospec_mask_check()
nospec: Include <asm/barrier.h> dependency
Revert "x86/retpoline: Simplify vmexit_fill_RSB()"
x86/speculation: Use IBRS if available before calling into firmware
x86/retpoline: Support retpoline builds with Clang
x86/speculation, objtool: Annotate indirect calls/jumps for objtool
x86/boot, objtool: Annotate indirect jump in secondary_startup_64()
x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP
x86/paravirt, objtool: Annotate indirect calls
watchdog: hpwdt: SMBIOS check
watchdog: hpwdt: Check source of NMI
watchdog: hpwdt: fix unused variable warning
watchdog: hpwdt: Remove legacy NMI sourcing.
ARM: omap2: hide omap3_save_secure_ram on non-OMAP3 builds
Input: tca8418_keypad - remove double read of key event register
tc358743: fix register i2c_rd/wr function fix
netfilter: add back stackpointer size checks
netfilter: x_tables: fix missing timer initialization in xt_LED
netfilter: nat: cope with negative port range
netfilter: IDLETIMER: be syzkaller friendly
netfilter: ebtables: CONFIG_COMPAT: don't trust userland offsets
netfilter: bridge: ebt_among: add missing match size checks
netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt
netfilter: x_tables: pass xt_counters struct instead of packet counter
netfilter: x_tables: pass xt_counters struct to counter allocator
netfilter: x_tables: pack percpu counter allocations
ext4: inplace xattr block update fails to deduplicate blocks
ubi: Fix race condition between ubi volume creation and udev
scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport
NFS: Fix an incorrect type in struct nfs_direct_req
NFS: Fix unstable write completion
x86/module: Detect and skip invalid relocations
x86: Treat R_X86_64_PLT32 as R_X86_64_PC32
ASoC: sgtl5000: Fix suspend/resume
ASoC: rt5651: Fix regcache sync errors on resume
serial: sh-sci: prevent lockup on full TTY buffers
tty/serial: atmel: add new version check for usart
uas: fix comparison for error code
staging: comedi: fix comedi_nsamples_left.
staging: android: ashmem: Fix lockdep issue during llseek
USB: storage: Add JMicron bridge 152d:2567 to unusual_devs.h
usbip: vudc: fix null pointer dereference on udc->lock
usb: quirks: add control message delay for 1b1c:1b20
usb: usbmon: Read text within supplied buffer size
usb: gadget: f_fs: Fix use-after-free in ffs_fs_kill_sb()
serial: 8250_pci: Add Brainboxes UC-260 4 port serial device
serial: core: mark port as initialized in autoconfig
earlycon: add reg-offset to physical address before mapping
PCI: dwc: Fix enumeration end when reaching root subordinate
Linux 4.9.88
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
commit 25c058ccaf2ebbc3e250ec1e199e161f91fe27d4 upstream.
Introduce a helper to determine if the current task is an output poll
worker.
This allows us to fix a long-standing deadlock in several DRM drivers
wherein the ->runtime_suspend callback waits for the output poll worker
to finish and the worker in turn calls a ->detect callback which waits
for runtime suspend to finish. The ->detect callback is invoked from
multiple call sites and waiting for runtime suspend to finish is the
correct thing to do except if it's executing in the context of the
worker.
v2: Expand kerneldoc to specifically mention deadlock between
output poll worker and autosuspend worker as use case. (Lyude)
Cc: Dave Airlie <airlied@redhat.com>
Cc: Ben Skeggs <bskeggs@redhat.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Link: https://patchwork.freedesktop.org/patch/msgid/3549ce32e7f1467102e70d3e9cbf70c46bfe108e.1518593424.git.lukas@wunner.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Lukas Wunnerauthored and Greg Kroah-Hartmancommited 2018-03-18 11:18:48 +01:00
Add a private data member to drm_connector. This is needed
by some driver to keep its own driver specific data. For
example, when connector and bridge are created in different
modules, and the bridge driver will overwrite some ops of
the connector, so the these overwritten connector ops have
to access the bridge driver specific data in order for the
device specific implementation. In this case the private
member could be utilized.
CRs-Fixed: 2140653
Change-Id: Ib1f1d1c43a67ee4390a7f0451c315fd075601741
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
Ray Zhangauthored and Gerrit - the friendly Code Review servercommited 2018-02-04 21:39:53 -08:00
Add two more dsi mode_flags. MIPI_DSI_MODE_VIDEO_BLLP
means DSI is allowed to enter low power stop mode
during BLLP period, and MIPI_DSI_MODE_VIDEO_EOF_BLLP
means DSI is allowed to enter low power stop mode in
the BLLP area of the last line of a frame.
CRs-Fixed: 2140653
Change-Id: Idf1550a4d34be17e74301a65fdccf5a9e145598b
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
Add the connector_init callback so a bridge is allowed to
initialize the connector passed to itself. This is useful
in certain cases like, the connector and bridge are created
in two different modules, while the connector funcs need
access extra information of the bridge. This callback offers
the opportunity to override the connector's behavior.
CRs-Fixed: 2140653
Change-Id: Iee228dd610d2e72d0a9e0bd960b0715b4ea6c644
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
Add support for PHY CTS 1.4 tests by adding the definitions for
the new test patterns, and programming the DisplayPort controller
to generate the patterns.
CRs-Fixed: 2139669
Change-Id: Ia9ec33dfc83a3db9c87af81d347ee86cdd28350a
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Add support to group commands until last_command
bit is set in the dtsi commands packing array
and transfer the batch of commands in one dma kickoff.
Change-Id: I0b6d91f2e26553c37f1e6adfc44542312c18340f
Signed-off-by: Vara Reddy <varar@codeaurora.org>
Add the bandwidth codes and the related definitions to support
HBR3 link rate.
CRs-Fixed: 2096419
Change-Id: Id37e3faffd3431be82ad940eead83a2df4135a2f
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
Add the definitions for various DPCD register offsets and
corresponding parameter values for DP Link compliance tests
for PHY/audio/link training/link status tests.
Change-Id: If0dd5f7c95b8577aebeada3b225af7f7fde5210d
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
Current upstream parser only handles RGB deep color
modes.
Add support in the SDE EDID parser module to parse
HDMI VSDB block and indicate support for YUV 420
deep color modes in the sink.
Change-Id: If6c007263094e7716a29cae503d3e3471ae04306
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
* 4.9/tmp-75d78c7:
Linux 4.9.35
brcmfmac: fix uninitialized warning in brcmf_usb_probe_phase2()
jump label: fix passing kbuild_cflags when checking for asm goto support
net: phy: fix marvell phy status reading
spi: double time out tolerance
dmaengine: bcm2835: Fix cyclic DMA period splitting
net: phy: Initialize mdio clock at probe function
rt2x00: avoid introducing a USB dependency in the rt2x00lib module
usb: gadget: f_fs: avoid out of bounds access on comp_desc
mtd: spi-nor: fix spansion quad enable
of: Add check to of_scan_flat_dt() before accessing initial_boot_params
rxrpc: Fix several cases where a padded len isn't checked in ticket decode
drm/amdgpu: adjust default display clock
drm/amdgpu/atom: fix ps allocation size for EnableDispPowerGating
drm/radeon: add a quirk for Toshiba Satellite L20-183
drm/radeon: add a PX quirk for another K53TK variant
iscsi-target: Reject immediate data underflow larger than SCSI transfer length
iscsi-target: Fix delayed logout processing greater than SECONDS_FOR_LOGOUT_COMP
target: Fix kref->refcount underflow in transport_cmd_finish_abort
arm64/vdso: Fix nsec handling for CLOCK_MONOTONIC_RAW
time: Fix CLOCK_MONOTONIC_RAW sub-nanosecond accounting
time: Fix clock->read(clock) race around clocksource changes
brcmfmac: unbind all devices upon failure in firmware callback
brcmfmac: use firmware callback upon failure to load
brcmfmac: add parameter to pass error code in firmware callback
Input: i8042 - add Fujitsu Lifebook AH544 to notimeout list
powerpc/64s: Handle data breakpoints in Radix mode
powerpc/kprobes: Pause function_graph tracing during jprobes handling
signal: Only reschedule timers on signals timers have sent
HID: Add quirk for Dell PIXART OEM mouse
cxgb4: notify uP to route ctrlq compl to rdma rspq
CIFS: Improve readdir verbosity
KVM: PPC: Book3S HV: Context-switch EBB registers properly
KVM: PPC: Book3S HV: Preserve userspace HTM state properly
KVM: s390: gaccess: fix real-space designation asce handling for gmap shadows
perf/x86/intel: Add 1G DTLB load/store miss support for SKL
lib/cmdline.c: fix get_options() overflow while parsing ranges
autofs: sanity check status reported with AUTOFS_DEV_IOCTL_FAIL
powerpc/perf: Fix oops when kthread execs user process
fs/exec.c: account for argv/envp pointers
ALSA: pcm: Don't treat NULL chmap as a fatal error
ALSA: firewire-lib: Fix stall of process context at packet error
xen-blkback: don't leak stack data via response ring
xen/blkback: fix disconnect while I/Os in flight
clk: sunxi-ng: a31: Correct lcd1-ch1 clock register offset
Revert "ANDROID: hardlockup: detect hard lockups without NMIs using secondary cpus"
Revert "ANDROID: kernel/watchdog: fix unused variable warning"
UPSTREAM: usb: gadget: f_fs: avoid out of bounds access on comp_desc
Linux 4.9.34
mm: fix new crash in unmapped_area_topdown()
Allow stack to grow up to address space limit
mm: larger stack guard gap, between vmas
alarmtimer: Rate limit periodic intervals
crypto: Work around deallocated stack frame reference gcc bug on sparc.
vTPM: Fix missing NULL check
MIPS: .its targets depend on vmlinux
MIPS: Fix bnezc/jialc return address calculation
usb: dwc3: exynos fix axius clock error path to do cleanup
usb: gadget: composite: Fix function used to free memory
alarmtimer: Prevent overflow of relative timers
genirq: Release resources in __setup_irq() error path
sched/core: Idle_task_exit() shouldn't use switch_mm_irqs_off()
iio: imu: inv_mpu6050: add accel lpf setting for chip >= MPU6500
swap: cond_resched in swap_cgroup_prepare()
mm/memory-failure.c: use compound_head() flags for huge pages
USB: gadgetfs, dummy-hcd, net2280: fix locking for callbacks
USB: gadget: fix GPF in gadgetfs
usb: xhci: ASMedia ASM1042A chipset need shorts TX quirk
usb: xhci: Fix USB 3.1 supported protocol parsing
drivers/misc/c2port/c2port-duramar2150.c: checking for NULL instead of IS_ERR()
misc: mic: double free on ioctl error path
ath10k: fix napi crash during rmmod when probe firmware fails
usb: r8a66597-hcd: decrease timeout
usb: r8a66597-hcd: select a different endpoint on timeout
USB: gadget: dummy_hcd: fix hub-descriptor removable fields
pvrusb2: reduce stack usage pvr2_eeprom_analyze()
USB: usbip: fix nonconforming hub descriptor
usb: core: fix potential memory leak in error path during hcd creation
USB: hub: fix SS max number of ports
usb: gadget: udc: renesas_usb3: lock for PN_ registers access
usb: gadget: udc: renesas_usb3: fix deadlock by spinlock
usb: gadget: udc: renesas_usb3: fix pm_runtime functions calling
IB/mlx5: Fix kernel to user leak prevention logic
iio: adc: ti_am335x_adc: allocating too much in probe
iio: proximity: as3935: recalibrate RCO after resume
iio: st_pressure: Fix data sign
staging: iio: tsl2x7x_core: Fix standard deviation calculation
staging: rtl8188eu: prevent an underflow in rtw_check_beacon_data()
mfd: omap-usb-tll: Fix inverted bit use for USB TLL mode
x86/mm/32: Set the '__vmalloc_start_set' flag in initmem_init()
serial: sh-sci: Fix late enablement of AUTORTS
serial: efm32: Fix parity management in 'efm32_uart_console_get_options()'
drm/vc4: Fix OOPSes from trying to cache a partially constructed BO.
drm/mediatek: fix mtk_hdmi_setup_vendor_specific_infoframe mistake
mac80211: don't send SMPS action frame in AP mode when not needed
mac80211: fix dropped counter in multiqueue RX
mac80211: strictly check mesh address extension mode
mac80211: fix IBSS presp allocation size
mac80211: fix packet statistics for fast-RX
mac80211: fix CSA in IBSS mode
usb: musb: dsps: keep VBUS on for host-only mode
drm/i915: Fix GVT-g PVINFO version compatibility check
drm/amdgpu: Fix overflow of watermark calcs at > 4k resolutions.
mac80211/wpa: use constant time memory comparison for MACs
mac80211: don't look at the PM bit of BAR frames
vb2: Fix an off by one error in 'vb2_plane_vaddr'
cpufreq: conservative: Allow down_threshold to take values from 1 to 10
ila_xlat: add missing hash secret initialization
can: gs_usb: fix memory leak in gs_cmd_reset()
configfs: Fix race between create_link and configfs_rmdir
fs: pass on flags in compat_writev
ANDROID: sdcardfs: remove dead function open_flags_to_access_mode()
ANDROID: android-base.cfg: split out arm64-specific configs
Linux 4.9.33
sparc64: make string buffers large enough
drm/i915: Always recompute watermarks when distrust_bios_wm is set, v2.
drm/i915: Workaround VLV/CHV DSI scanline counter hardware fail
s390/kvm: do not rely on the ILC on kvm host protection fauls
xtensa: don't use linux IRQ #0
RDMA/qedr: Return max inline data in QP query result
RDMA/qedr: Don't spam dmesg if QP is in error state
RDMA/qedr: Don't reset QP when queues aren't flushed
RDMA/qedr: Fix and simplify memory leak in PD alloc
RDMA/qedr: Dispatch port active event from qedr_add
netfilter: nft_log: restrict the log prefix length to 127
netfilter: nf_tables: fix set->nelems counting with no NLM_F_EXCL
tipc: fix nametbl_lock soft lockup at node/link events
tipc: add subscription refcount to avoid invalid delete
tipc: fix connection refcount error
tipc: ignore requests when the connection state is not CONNECTED
ARCv2: smp-boot: wake_flag polling by non-Masters needs to be uncached
ARC: smp-boot: Decouple Non masters waiting API from jump to entry point
vhost/vsock: handle vhost_vq_init_access() error
kernel/watchdog: prevent false hardlockup on overloaded system
kernel/watchdog.c: move shared definitions to nmi.h
kernel/watchdog.c: move hardlockup detector to separate file
userfaultfd: fix SIGBUS resulting from false rwsem wakeups
proc: add a schedule point in proc_pid_readdir()
frv: add missing atomic64 operations
frv: add atomic64_add_unless()
romfs: use different way to generate fsid for BLOCK or MTD
mn10300: fix build error of missing fpu_save()
usb: musb: Fix external abort on non-linefetch for musb_irq_work()
sctp: sctp_addr_id2transport should verify the addr before looking up assoc
sctp: sctp gso should set feature with NETIF_F_SG when calling skb_segment
bnxt_en: Fix RTNL lock usage on bnxt_get_port_module_status().
bnxt_en: Fix RTNL lock usage on bnxt_update_link().
bnxt_en: Enhance autoneg support.
bnxt_en: Fix bnxt_reset() in the slow path task.
net-next: ethernet: mediatek: change the compatible string
r8152: avoid start_xmit to schedule napi when napi is disabled
r8152: fix rtl8152_post_reset function
r8152: re-schedule napi for tx
r8152: check rx after napi is enabled
r8152: avoid start_xmit to call napi_schedule during autosuspend
nvmet-rdma: Fix missing dma sync to nvme data structures
nfs: Fix "Don't increment lock sequence ID after NFS4ERR_MOVED"
ravb: unmap descriptors when freeing rings
drm/ast: Fixed system hanged if disable P2A
drm/nouveau: Fix drm poll_helper handling
drm/nouveau: Don't enabling polling twice on runtime resume
drm/nouveau: Handle fbcon suspend/resume in seperate worker
drm/nouveau: Rename acpi_work to hpd_work
drm/nouveau: Intercept ACPI_VIDEO_NOTIFY_PROBE
gtp: add genl family modules alias
net: phy: micrel: add support for KSZ8795
parisc, parport_gsc: Fixes for printk continuation lines
net/mlx5: Return EOPNOTSUPP when failing to get steering name-space
net/mlx5: E-Switch, Err when retrieving steering name-space fails
drm/i915: Check for NULL i915_vma in intel_unpin_fb_obj()
net: adaptec: starfire: add checks for dma mapping errors
pinctrl: berlin-bg4ct: fix the value for "sd1a" of pin SCRD0_CRD_PRES
drm: Don't race connector registration
drm: prevent double-(un)registration for connectors
cec: fix wrong last_la determination
pinctrl: baytrail: Rectify debounce support (part 2)
gianfar: synchronize DMA API usage by free_skb_rx_queue w/ gfar_new_page
net/mlx4_core: Avoid command timeouts during VF driver device shutdown
drm/nouveau/fence/g84-: protect against concurrent access to semaphore buffers
drm/nouveau: prevent userspace from deleting client object
ipv6: fix flow labels when the traffic class is non-0
FS-Cache: Initialise stores_lock in netfs cookie
fscache: Clear outstanding writes when disabling a cookie
fscache: Fix dead object requeue
net: fix ndo_features_check/ndo_fix_features comment ordering
net: phy: Fix PHY module checks and NULL deref in phy_attach_direct()
net: phy: Fix lack of reference count on PHY driver
ethtool: do not vzalloc(0) on registers dump
log2: make order_base_2() behave correctly on const input value zero
kasan: respect /proc/sys/kernel/traceoff_on_warning
shmem: fix sleeping from atomic context
jump label: pass kbuild_cflags when checking for asm goto support
PM / runtime: Avoid false-positive warnings from might_sleep_if()
ARM: defconfigs: make NF_CT_PROTO_SCTP and NF_CT_PROTO_UDPLITE built-in
ipv6: Fix IPv6 packet loss in scenarios involving roaming + snooping switches
vfio/spapr_tce: Set window when adding additional groups to container
ipv6: addrconf: fix generation of new temporary addresses
net: thunderx: Fix PHY autoneg for SGMII QLM mode
kernel/ucount.c: mark user_header with kmemleak_ignore()
powerpc/powernv: Properly set "host-ipi" on IPIs
i2c: piix4: Fix request_region size
i2c: piix4: Request the SMBUS semaphore inside the mutex
sierra_net: Add support for IPv6 and Dual-Stack Link Sense Indications
sierra_net: Skip validating irrelevant fields for IDLE LSIs
net: hns: Fix the device being used for dma mapping during TX
NET: mkiss: Fix panic
ibmvnic: Initialize completion variables before starting work
ibmvnic: Call napi_disable instead of napi_enable in failure path
NET: Fix /proc/net/arp for AX.25
gfs2: Use rhashtable walk interface in glock_hash_walk
tipc: Fix tipc_sk_reinit race conditions
ipv6: Inhibit IPv4-mapped src address on the wire.
ipv6: Handle IPv4-mapped src to in6addr_any dst.
tcp: tcp_probe: use spin_lock_bh()
net: xilinx_emaclite: fix receive buffer overflow
net: xilinx_emaclite: fix freezes due to unordered I/O
ibmvnic: Fix endian error when requesting device capabilities
ibmvnic: Fix endian errors in error reporting output
netfilter: nf_conntrack_sip: fix wrong memory initialisation
partitions/msdos: FreeBSD UFS2 file systems are not recognized
drm/i915: Prevent the system suspend complete optimization
PCI/PM: Add needs_resume flag to avoid suspend complete optimization
usb: gadget: f_fs: Fix possibe deadlock
FROMLIST: Remove the redundant skb->dev initialization in ip6_fragment
FROMLIST: bpf: Remove duplicate tcp_filter hook in ipv6
FROMLIST: ipv6: Initial skb->dev and skb->protocol in ip6_output
FROMLIST: bpf: cgroup skb progs cannot access ld_abs/ind
ANDROID: uid_sys_stats: check previous uid_entry before call find_or_register_uid
Conflicts:
drivers/usb/gadget/function/f_fs.c
kernel/watchdog.c
Change-Id: Ib91e6121cace8bcdc4dd8b1727792dd5bb6f1535
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAllEs4kACgkQONu9yGCS
aT4f0Q/9GqF8IGzm04f/KHJtuWleRAztioQbeHL1PRZdkxUBZGulXjjYIWwxuD8M
I4JWMNkI3KObU4xKPRa6kwjgMOTACBOFMKcosr3GByOIOkxxFuT57vWEtoB8sKJl
DUmQIi+uaeoCXvKIalp8pTZTrLSbKgJ7TsKEXTTJiN5HJ+d2BqsG27wjZshZjr9a
4Wr9qS76gxzFUo7ZtIoRSBPbXxYsbqgJwFc9x/QmGZua3BQepwwsbtlexhFRKB0E
QSrwyYSpDly2Y1V2flnO6BWBuTMfNw0Jwd42FOW1WvEulcrxhCPvv7+So/e40zWT
GoujyJaGqdcSxpa43QA3qUut1WiecxAX5iyiLFDcowhgnj0KRfjFrxWH5I3fGbxb
WWq78vrhq5h7zVm32XOTDzZ9R3M74GXUW9hL0uRYwsnG2pcBnHq1oe1SV3S2xv3G
v0c+T8DBxlxH5ostBzjnSs0cUDyT3i7jvKG7EJQoVebHj/2w87k3SkoUZ/x7saCM
4CdnT/ahuXAM/cmQBh/PXdVlj0f228n+GfNFqrd6YOxnDO9A6mmySAtMJS2Ovk4i
9fD2BQy3FzD8ygeCRyP8Px0BzZjuYBwhDbHlN8zJESqBR+7343u9z2xYV5MqYAO/
eWMLtIYAtzwZM0H4BNbLMd+QB2KBGm9tmd2UocufyAGmUj8Vx5A=
=1Dcl
-----END PGP SIGNATURE-----
Merge 4.9.33 into android-4.9
Changes in 4.9.33
PCI/PM: Add needs_resume flag to avoid suspend complete optimization
drm/i915: Prevent the system suspend complete optimization
partitions/msdos: FreeBSD UFS2 file systems are not recognized
netfilter: nf_conntrack_sip: fix wrong memory initialisation
ibmvnic: Fix endian errors in error reporting output
ibmvnic: Fix endian error when requesting device capabilities
net: xilinx_emaclite: fix freezes due to unordered I/O
net: xilinx_emaclite: fix receive buffer overflow
tcp: tcp_probe: use spin_lock_bh()
ipv6: Handle IPv4-mapped src to in6addr_any dst.
ipv6: Inhibit IPv4-mapped src address on the wire.
tipc: Fix tipc_sk_reinit race conditions
gfs2: Use rhashtable walk interface in glock_hash_walk
NET: Fix /proc/net/arp for AX.25
ibmvnic: Call napi_disable instead of napi_enable in failure path
ibmvnic: Initialize completion variables before starting work
NET: mkiss: Fix panic
net: hns: Fix the device being used for dma mapping during TX
sierra_net: Skip validating irrelevant fields for IDLE LSIs
sierra_net: Add support for IPv6 and Dual-Stack Link Sense Indications
i2c: piix4: Request the SMBUS semaphore inside the mutex
i2c: piix4: Fix request_region size
powerpc/powernv: Properly set "host-ipi" on IPIs
kernel/ucount.c: mark user_header with kmemleak_ignore()
net: thunderx: Fix PHY autoneg for SGMII QLM mode
ipv6: addrconf: fix generation of new temporary addresses
vfio/spapr_tce: Set window when adding additional groups to container
ipv6: Fix IPv6 packet loss in scenarios involving roaming + snooping switches
ARM: defconfigs: make NF_CT_PROTO_SCTP and NF_CT_PROTO_UDPLITE built-in
PM / runtime: Avoid false-positive warnings from might_sleep_if()
jump label: pass kbuild_cflags when checking for asm goto support
shmem: fix sleeping from atomic context
kasan: respect /proc/sys/kernel/traceoff_on_warning
log2: make order_base_2() behave correctly on const input value zero
ethtool: do not vzalloc(0) on registers dump
net: phy: Fix lack of reference count on PHY driver
net: phy: Fix PHY module checks and NULL deref in phy_attach_direct()
net: fix ndo_features_check/ndo_fix_features comment ordering
fscache: Fix dead object requeue
fscache: Clear outstanding writes when disabling a cookie
FS-Cache: Initialise stores_lock in netfs cookie
ipv6: fix flow labels when the traffic class is non-0
drm/nouveau: prevent userspace from deleting client object
drm/nouveau/fence/g84-: protect against concurrent access to semaphore buffers
net/mlx4_core: Avoid command timeouts during VF driver device shutdown
gianfar: synchronize DMA API usage by free_skb_rx_queue w/ gfar_new_page
pinctrl: baytrail: Rectify debounce support (part 2)
cec: fix wrong last_la determination
drm: prevent double-(un)registration for connectors
drm: Don't race connector registration
pinctrl: berlin-bg4ct: fix the value for "sd1a" of pin SCRD0_CRD_PRES
net: adaptec: starfire: add checks for dma mapping errors
drm/i915: Check for NULL i915_vma in intel_unpin_fb_obj()
net/mlx5: E-Switch, Err when retrieving steering name-space fails
net/mlx5: Return EOPNOTSUPP when failing to get steering name-space
parisc, parport_gsc: Fixes for printk continuation lines
net: phy: micrel: add support for KSZ8795
gtp: add genl family modules alias
drm/nouveau: Intercept ACPI_VIDEO_NOTIFY_PROBE
drm/nouveau: Rename acpi_work to hpd_work
drm/nouveau: Handle fbcon suspend/resume in seperate worker
drm/nouveau: Don't enabling polling twice on runtime resume
drm/nouveau: Fix drm poll_helper handling
drm/ast: Fixed system hanged if disable P2A
ravb: unmap descriptors when freeing rings
nfs: Fix "Don't increment lock sequence ID after NFS4ERR_MOVED"
nvmet-rdma: Fix missing dma sync to nvme data structures
r8152: avoid start_xmit to call napi_schedule during autosuspend
r8152: check rx after napi is enabled
r8152: re-schedule napi for tx
r8152: fix rtl8152_post_reset function
r8152: avoid start_xmit to schedule napi when napi is disabled
net-next: ethernet: mediatek: change the compatible string
bnxt_en: Fix bnxt_reset() in the slow path task.
bnxt_en: Enhance autoneg support.
bnxt_en: Fix RTNL lock usage on bnxt_update_link().
bnxt_en: Fix RTNL lock usage on bnxt_get_port_module_status().
sctp: sctp gso should set feature with NETIF_F_SG when calling skb_segment
sctp: sctp_addr_id2transport should verify the addr before looking up assoc
usb: musb: Fix external abort on non-linefetch for musb_irq_work()
mn10300: fix build error of missing fpu_save()
romfs: use different way to generate fsid for BLOCK or MTD
frv: add atomic64_add_unless()
frv: add missing atomic64 operations
proc: add a schedule point in proc_pid_readdir()
userfaultfd: fix SIGBUS resulting from false rwsem wakeups
kernel/watchdog.c: move hardlockup detector to separate file
kernel/watchdog.c: move shared definitions to nmi.h
kernel/watchdog: prevent false hardlockup on overloaded system
vhost/vsock: handle vhost_vq_init_access() error
ARC: smp-boot: Decouple Non masters waiting API from jump to entry point
ARCv2: smp-boot: wake_flag polling by non-Masters needs to be uncached
tipc: ignore requests when the connection state is not CONNECTED
tipc: fix connection refcount error
tipc: add subscription refcount to avoid invalid delete
tipc: fix nametbl_lock soft lockup at node/link events
netfilter: nf_tables: fix set->nelems counting with no NLM_F_EXCL
netfilter: nft_log: restrict the log prefix length to 127
RDMA/qedr: Dispatch port active event from qedr_add
RDMA/qedr: Fix and simplify memory leak in PD alloc
RDMA/qedr: Don't reset QP when queues aren't flushed
RDMA/qedr: Don't spam dmesg if QP is in error state
RDMA/qedr: Return max inline data in QP query result
xtensa: don't use linux IRQ #0
s390/kvm: do not rely on the ILC on kvm host protection fauls
drm/i915: Workaround VLV/CHV DSI scanline counter hardware fail
drm/i915: Always recompute watermarks when distrust_bios_wm is set, v2.
sparc64: make string buffers large enough
Linux 4.9.33
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
[ Upstream commit e6e7b48b295afa5a5ab440de0a94d9ad8b3ce2d0 ]
I was under the misconception that the sysfs dev stuff can be fully
set up, and then registered all in one step with device_add. That's
true for properties and property groups, but not for parents and child
devices. Those must be fully registered before you can register a
child.
Add a bit of tracking to make sure that asynchronous mst connector
hotplugging gets this right. For consistency we rely upon the implicit
barriers of the connector->mutex, which is taken anyway, to ensure
that at least either the connector or device registration call will
work out.
Mildly tested since I can't reliably reproduce this on my mst box
here.
Reported-by: Dave Hansen <dave.hansen@intel.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1484237756-2720-1-git-send-email-daniel.vetter@ffwll.ch
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Daniel Vetterauthored and Greg Kroah-Hartmancommited 2017-06-17 06:41:53 +02:00
[ Upstream commit e73ab00e9a0f1731f34d0620a9c55f5c30c4ad4e ]
If we're unlucky then the registration from a hotplugged connector
might race with the final registration step on driver load. And since
MST topology discover is asynchronous that's even somewhat likely.
v2: Also update the kerneldoc for @registered!
v3: Review from Chris:
- Improve kerneldoc for late_register/early_unregister callbacks.
- Use mutex_destroy.
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Reported-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20161218133545.2106-1-daniel.vetter@ffwll.ch
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Daniel Vetterauthored and Greg Kroah-Hartmancommited 2017-06-17 06:41:53 +02:00
* 4.9/tmp-951d823:
Linux 4.9.30
drm/i915/gvt: Disable access to stolen memory as a guest
drivers: char: mem: Check for address space wraparound with mmap()
nfsd: encoders mustn't use unitialized values in error cases
nfsd: fix undefined behavior in nfsd4_layout_verify
NFS: Use GFP_NOIO for two allocations in writeback
NFS: Fix use after free in write error path
NFSv4: Fix a hang in OPEN related to server reboot
drm/edid: Add 10 bpc quirk for LGD 764 panel in HP zBook 17 G2
mtd: nand: add ooblayout for old hamming layout
mtd: nand: omap2: Fix partition creation via cmdline mtdparts
mtd: nand: orion: fix clk handling
PCI: Freeze PME scan before suspending devices
PCI: Only allow WC mmap on prefetchable resources
PCI: Fix another sanity check bug in /proc/pci mmap
PCI: Fix pci_mmap_fits() for HAVE_PCI_RESOURCE_TO_USER platforms
PCI: hv: Specify CPU_AFFINITY_ALL for MSI affinity when >= 32 CPUs
PCI: hv: Allocate interrupt descriptors with GFP_ATOMIC
tracing/kprobes: Enforce kprobes teardown after testing
um: Fix to call read_initrd after init_bootmem
osf_wait4(): fix infoleak
MIPS: Loongson-3: Select MIPS_L1_CACHE_SHIFT_6
nvme: unmap CMB and remove sysfs file in reset path
genirq: Fix chained interrupt data ordering
uwb: fix device quirk on big-endian hosts
stackprotector: Increase the per-task stack canary's random range from 32 bits to 64 bits on 64-bit platforms
metag/uaccess: Check access_ok in strncpy_from_user
metag/uaccess: Fix access_ok()
iommu/vt-d: Flush the IOTLB to get rid of the initial kdump mappings
staging: rtl8192e: GetTs Fix invalid TID 7 warning.
staging: rtl8192e: rtl92e_get_eeprom_size Fix read size of EPROM_CMD.
staging: rtl8192e: fix 2 byte alignment of register BSSIDR.
staging: rtl8192e: rtl92e_fill_tx_desc fix write to mapped out memory.
arm64: documentation: document tagged pointer stack constraints
arm64: uaccess: ensure extension of access_ok() addr
arm64: armv8_deprecated: ensure extension of addr
arm64: ensure extension of smp_store_release value
arm64: xchg: hazard against entire exchange variable
arm64: dts: hi6220: Reset the mmc hosts
ARM: dts: imx6sx-sdb: Remove OPP override
ARM: dts: at91: sama5d3_xplained: not all ADC channels are available
ARM: dts: at91: sama5d3_xplained: fix ADC vref
ARM: 8670/1: V7M: Do not corrupt vector table around v7m_invalidate_l1 call
ARM: 8662/1: module: split core and init PLT sections
KVM: arm: plug potential guest hardware debug leakage
arm: KVM: Do not use stack-protector to compile HYP code
arm64: KVM: Do not use stack-protector to compile EL2 code
powerpc/tm: Fix FP and VMX register corruption
powerpc/64e: Fix hang when debugging programs with relocated kernel
powerpc/iommu: Do not call PageTransHuge() on tail pages
powerpc/pseries: Fix of_node_put() underflow during DLPAR remove
powerpc/book3s/mce: Move add_taint() later in virtual mode
powerpc/eeh: Avoid use after free in eeh_handle_special_event()
powerpc/mm: Ensure IRQs are off in switch_mm()
cx231xx-cards: fix NULL-deref at probe
cx231xx-audio: fix NULL-deref at probe
cx231xx-audio: fix init error path
dw2102: limit messages to buffer size
digitv: limit messages to buffer size
dvb-frontends/cxd2841er: define symbol_rate_min/max in T/C fe-ops
zr364xx: enforce minimum size when reading header
dib0700: fix NULL-deref at probe
s5p-mfc: Fix unbalanced call to clock management
gspca: konica: add missing endpoint sanity check
s5p-mfc: Fix race between interrupt routine and device functions
iio: hid-sensor: Store restore poll and hysteresis on S3
iio: proximity: as3935: fix as3935_write
ipx: call ipxitf_put() in ioctl error path
USB: hub: fix non-SS hub-descriptor handling
USB: hub: fix SS hub-descriptor handling
USB: serial: io_ti: fix div-by-zero in set_termios
USB: serial: mct_u232: fix big-endian baud-rate handling
USB: serial: qcserial: add more Lenovo EM74xx device IDs
usb: serial: option: add Telit ME910 support
USB: iowarrior: fix info ioctl on big-endian hosts
usb: musb: Fix trying to suspend while active for OTG configurations
usb: musb: tusb6010_omap: Do not reset the other direction's packet size
usb: dwc3: gadget: Prevent losing events in event cache
dvb-usb-dibusb-mc-common: Add MODULE_LICENSE
ttusb2: limit messages to buffer size
mceusb: fix NULL-deref at probe
usbvision: fix NULL-deref at probe
net: irda: irda-usb: fix firmware name on big-endian hosts
usb: host: xhci-mem: allocate zeroed Scratchpad Buffer
xhci: apply PME_STUCK_QUIRK and MISSING_CAS quirk for Denverton
usb: host: xhci-plat: propagate return value of platform_get_irq()
xhci: remove GFP_DMA flag from allocation
libnvdimm: fix clear length of nvdimm_forget_poison()
fscrypt: avoid collisions when presenting long encrypted filenames
f2fs: check entire encrypted bigname when finding a dentry
USB: chaoskey: fix Alea quirk on big-endian hosts
USB: serial: ftdi_sio: add Olimex ARM-USB-TINY(H) PIDs
USB: serial: ftdi_sio: fix setting latency for unprivileged users
pid_ns: Fix race between setns'ed fork() and zap_pid_ns_processes()
pid_ns: Sleep in TASK_INTERRUPTIBLE in zap_pid_ns_processes
IB/hfi1: Fix a subcontext memory leak
IB/hfi1: Return an error on memory allocation failure
IIO: bmp280-core.c: fix error in humidity calculation
iio: dac: ad7303: fix channel description
ibmvscsis: Do not send aborted task response
of: fdt: add missing allocation-failure check
of: fix "/cpus" reference leak in of_numa_parse_cpu_nodes()
of: fix sparse warning in of_pci_range_parser_one
proc: Fix unbalanced hard link numbers
cxl: Route eeh events to all drivers in cxl_pci_error_detected()
cxl: Force context lock during EEH flow
ohci-pci: add qemu quirk
cdc-acm: fix possible invalid access when processing notification
gpio: omap: return error if requested debounce time is not possible
drm/nouveau/tmr: handle races with hw when updating the next alarm time
drm/nouveau/tmr: avoid processing completed alarms when adding a new one
drm/nouveau/tmr: fix corruption of the pending list when rescheduling an alarm
drm/nouveau/tmr: ack interrupt before processing alarms
drm/nouveau/therm: remove ineffective workarounds for alarm bugs
drm/amdgpu: Add missing lb_vblank_lead_lines setup to DCE-6 path.
drm/amdgpu: Avoid overflows/divide-by-zero in latency_watermark calculations.
drm/amdgpu: Make display watermark calculations more accurate
ath9k_htc: fix NULL-deref at probe
ath9k_htc: Add support of AirTies 1eda:2315 AR9271 device
s390/cputime: fix incorrect system time
s390/kdump: Add final note
regulator: tps65023: Fix inverted core enable logic.
regulator: rk808: Fix RK818 LDO2
x86: fix 32-bit case of __get_user_asm_u64()
KVM: X86: Fix read out-of-bounds vulnerability in kvm pio emulation
KVM: x86: Fix potential preemption when get the current kvmclock timestamp
KVM: x86: Fix load damaged SSEx MXCSR register
ima: accept previously set IMA_NEW_FILE
mwifiex: pcie: fix cmd_buf use-after-free in remove/reset
mwifiex: MAC randomization should not be persistent
rtlwifi: rtl8821ae: setup 8812ae RFE according to device type
md: MD_CLOSING needs to be cleared after called md_set_readonly or do_md_stop
md: update slab_cache before releasing new stripes when stripes resizing
dm space map disk: fix some book keeping in the disk space map
dm thin metadata: call precommit before saving the roots
dm bufio: make the parameter "retain_bytes" unsigned long
dm cache metadata: fail operations if fail_io mode has been established
dm mpath: split and rename activate_path() to prepare for its expanded use
dm bufio: check new buffer allocation watermark every 30 seconds
dm bufio: avoid a possible ABBA deadlock
dm raid: select the Kconfig option CONFIG_MD_RAID0
dm btree: fix for dm_btree_find_lowest_key()
infiniband: call ipv6 route lookup via the stub interface
mlx5: Fix mlx5_ib_map_mr_sg mr length
ASoC: cs4271: configure reset GPIO as output
tpm_crb: check for bad response size
tpm: add sleep only for retry in i2c_nuvoton_write_status()
tpm: msleep() delays - replace with usleep_range() in i2c nuvoton driver
tpm_tis_spi: Add small delay after last transfer
tpm_tis_spi: Remove limitation of transfers to MAX_SPI_FRAMESIZE bytes
tpm_tis_spi: Check correct byte for wait state indicator
tpm_tis_spi: Abort transfer when too many wait states are signaled
tpm_tis_spi: Use single function to transfer data
fanotify: don't expose EOPENSTALE to userspace
ARM: tegra: paz00: Mark panel regulator as enabled on boot
ALSA: hda: Fix cpu lockup when stopping the cmd dmas
tpm_tis_core: Choose appropriate timeout for reading burstcount
USB: core: replace %p with %pK
char: lp: fix possible integer overflow in lp_setup()
watchdog: pcwd_usb: fix NULL-deref at probe
USB: ene_usb6250: fix DMA to the stack
usb: misc: legousbtower: Fix memory leak
usb: misc: legousbtower: Fix buffers on stack
UPSTREAM: drm/fb_cma_helper: Add missing forward declaration
ANDROID: uid_sys_stats: defer io stats calulation for dead tasks
BACKPORT: drm/fence: fix memory overwrite when setting out_fence fd
BACKPORT: drm/fence: add drm_crtc_create_fence()
UPSTREAM: drm/fences: add DOC: for explicit fencing
UPSTREAM: drm/atomic: Fix double free in drm_atomic_state_default_clear
BACKPORT: drm/fence: add out-fences support
BACKPORT: drm/fence: add fence timeline to drm_crtc
BACKPORT: drm/fence: add in-fences support
BACKPORT: dma-buf: Use fence_get_rcu_safe() for retrieving the exclusive fence
BACKPORT: drm/fb_cma_helper: Add drm_fb_cma_prepare_fb() helper
BACKPORT: drm/atomic: add drm_atomic_set_fence_for_plane()
UPSTREAM: dma-buf: Update kerneldoc for sync_file_create
UPSTREAM: Revert "dma-buf/sync-file: Avoid enable fence signaling if poll(.timeout=0)"
UPSTREAM: reservation: revert "wait only with non-zero timeout specified (v3)" v2
BACKPORT: dma-buf/fence: revert "don't wait when specified timeout is zero" (v2)
UPSTREAM: dma-buf/sw_sync: put fence reference from the fence creation
UPSTREAM: dma-buf/fence: add an lockdep_assert_held()
UPSTREAM: dma-buf/sync_file: hold reference to fence when creating sync_file
UPSTREAM: drm/fence: release fence reference when canceling event
UPSTREAM: dma-buf: Restart reservation_object_test_signaled_rcu() after writes
UPSTREAM: dma-buf: Restart reservation_object_wait_timeout_rcu() after writes
UPSTREAM: dma-buf: Restart reservation_object_get_fences_rcu() after writes
UPSTREAM: dma-buf: Introduce fence_get_rcu_safe()
ANDROID: sdcardfs: Check for NULL in revalidate
ANDROID: Add CGROUP_BPF to android base config
BACKPORT: UPSTREAM: bpf: pass sk to helper functions
BACKPORT: UPSTREAM: Add a eBPF helper function to retrieve socket uid
BACKPORT: UPSTREAM: Add a helper function to get socket cookie in eBPF
ANDROID: Fix missing uapi headers
UPSTREAM: cgroup: Fix CGROUP_BPF config
UPSTREAM: samples: bpf: add userspace example for attaching eBPF programs to cgroups
UPSTREAM: net: ipv4, ipv6: run cgroup eBPF egress programs
UPSTREAM: net: filter: run cgroup eBPF ingress programs
UPSTREAM: bpf: add BPF_PROG_ATTACH and BPF_PROG_DETACH commands
UPSTREAM: cgroup: add support for eBPF programs
UPSTREAM: bpf: add new prog type for cgroup socket filtering
Change-Id: Ic92b4df2a2fd08d1ec4bbcf6a5d6e100acfa5b61
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
Add missing forward declaration for struct drm_plane and drm_plane_state,
which causes the following warning in the VC4 driver (can be replicated
by building using bcm2835_defconfig):
In file included from drivers/gpu/drm/vc4/vc4_drv.c:18:0:
include/drm/drm_fb_cma_helper.h:45:13: warning: ‘struct drm_plane_state’ declared inside parameter list will not be visible outside of this definition or declaration
struct drm_plane_state *state);
^~~~~~~~~~~~~~~
include/drm/drm_fb_cma_helper.h:44:34: warning: ‘struct drm_plane’ declared inside parameter list will not be visible outside of this definition or declaration
int drm_fb_cma_prepare_fb(struct drm_plane *plane,
Change-Id: Ieffc4ce7b13044c323ef8ee0af683c46813eb34a
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20161115105529.3227-1-marex@denx.de
(cherry picked from commit 196594efc2b9)
Signed-off-by: Marissa Wall <marissaw@google.com>
Marek Vasutauthored and Marissa Wallcommited 2017-05-24 13:53:59 -07:00
Currently the DRM upstream EDID parser doesn't have support to
parse all EDID blocks such as extension tag blocks.
Add support for parsing these blocks and extract necessary info.
Change-Id: Iae92de79960f6f0e73a8e2ff7944c1bf101d90a6
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
Adds parsing for HDMI 2.0 'HDMI Forum Vendor
Specific Data Block'. This block is present in
some HDMI 2.0 EDID's and gives information about
scrambling support, SCDC, 3D Views, and others.
Parsed parameters are stored in drm_connector
structure.
Change-Id: I018cfefea2fd3827d5f83c8e5717ebd95e497519
Signed-off-by: Jose Abreu <joabreu@synopsys.com>
Cc: Carlos Palminha <palminha@synopsys.com>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-kernel@vger.kernel.org
Patch-mainline: dri-devel @ 10 Aug 2016 16:29
Signed-off-by: Jin Li <jinl@codeaurora.org>
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
Currently if the userspace declares a int variable to store the out_fence
fd and pass it to OUT_FENCE_PTR the kernel will overwrite the 32 bits
above the int variable on 64 bits systems.
Fix this by making the internal storage of out_fence in the kernel a s32
pointer.
Reported-by: Chad Versace <chadversary@chromium.org>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.com>
Fixes: beaf5af48034 ("drm/fence: add out-fences support")
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Rafael Antognolli <rafael.antognolli@intel.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-and-Tested-by: Chad Versace <chadversary@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1484317329-9293-1-git-send-email-gustavo@padovan.org
(cherry picked from commit 7e9081c5aac73b8a0bc22e0b3e7a12c3e9cf5256)
Signed-off-by: Marissa Wall <marissaw@google.com>
Change-Id: I67a3d3c27c46d454444c6f195407d6aad59f2343
Gustavo Padovanauthored and Marissa Wallcommited 2017-05-23 15:47:18 -07:00
Support DRM out-fences by creating a sync_file with a fence for each CRTC
that sets the OUT_FENCE_PTR property.
We use the out_fence pointer received in the OUT_FENCE_PTR prop to send
the sync_file fd back to userspace.
The sync_file and fd are allocated/created before commit, but the
fd_install operation only happens after we know that commit succeed.
v2: Comment by Rob Clark:
- Squash commit that adds DRM_MODE_ATOMIC_OUT_FENCE flag here.
Comment by Daniel Vetter:
- Add clean up code for out_fences
v3: Comments by Daniel Vetter:
- create DRM_MODE_ATOMIC_EVENT_MASK
- userspace should fill out_fences_ptr with the crtc_ids for which
it wants fences back.
v4: Create OUT_FENCE_PTR properties and remove old approach.
v5: Comments by Brian Starkey:
- Remove extra fence_get() in atomic_ioctl()
- Check ret before iterating on the crtc_state
- check ret before fd_install
- set fence_state to NULL at the beginning
- check fence_state->out_fence_ptr before put_user()
- change order of fput() and put_unused_fd() on failure
- Add access_ok() check to the out_fence_ptr received
- Rebase after fence -> dma_fence rename [removed in backport
to Android common kernel 4.9]
- Store out_fence_ptr in the drm_atomic_state
- Split crtc_setup_out_fence()
- return -1 as out_fence with TEST_ONLY flag
v6: Comments by Daniel Vetter
- Add prepare/unprepare_crtc_signaling()
- move struct drm_out_fence_state to drm_atomic.c
- mark get_crtc_fence() as static
Comments by Brian Starkey
- proper set fence_ptr fence_state array
- isolate fence_idx increment
- improve error handling
v7: Comments by Daniel Vetter
- remove prefix from internal functions
- make out_fence_ptr an s64 pointer
- degrade DRM_INFO to DRM_DEBUG_ATOMIC when put_user fail
- fix doc issues
- filter out OUT_FENCE_PTR == NULL and do not fail in this case
- add complete_crtc_signalling()
- krealloc fence_state on demand
Comment by Brian Starkey
- remove unused crtc_state arg from get_out_fence()
v8: Comment by Brian Starkey
- cancel events before check for !fence_state
- convert a few lefovers u64 types for out_fence_ptr
- fix memleak by assign fence_state earlier after realloc
- proper accout num_fences in case of error
v9: Comment by Brian Starkey
- memset last position of fence_state after krealloc
Comments by Sean Paul
- pass install_fds in complete_crtc_signaling() instead of ret
- put_user(-1, fence_ptr) when decoding props
v10: Comment by Brian Starkey
- remove unneeded num_fences increment on error path
- kfree fence_state after installing fences fd
v11: rebase against latest drm-misc
v12: rebase again against latest drm-misc
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Reviewed-by: Brian Starkey <brian.starkey@arm.com> (v10)
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Tested-by: Robert Foss <robert.foss@collabora.com> (v10)
[danvet: Appease checkpatch.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1479301221-13056-1-git-send-email-gustavo@padovan.org
(cherry picked from commit beaf5af48034c9e2ebb8b2b1fb12dc4d8aeba99e)
Signed-off-by: Marissa Wall <marissaw@google.com>
Change-Id: I5fed59f7358aaf3f3acd7a4ca9c85091f23cdbf5
Gustavo Padovanauthored and Marissa Wallcommited 2017-05-23 15:47:18 -07:00
Create one timeline context for each CRTC to be able to handle out-fences
and signal them. It adds a few members to struct drm_crtc: fence_context,
where we store the context we get from fence_context_alloc(), the
fence seqno and the fence lock, that we pass in fence_init() to be
used by the fence.
v2: Comment by Daniel Stone:
- add BUG_ON() to fence_to_crtc() macro
v3: Comment by Ville Syrjälä
- Use more meaningful name as crtc timeline name
v4: Comments by Brian Starkey
- Use even more meaninful name for the crtc timeline
- add doc for timeline_name
Comment by Daniel Vetter
- use in-line style for comments
- rebase after fence -> dma_fence rename [removed in
backport to Android common kernel 4.9]
v5: Comment by Daniel Vetter
- Add doc for drm_crtc_fence_ops
v6: Comment by Chris Wilson
- Move fence_to_crtc to drm_crtc.c
- Move export of drm_crtc_fence_ops to drm_crtc_internal.h
- rebase against latest drm-misc
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> (v5)
Reviewed-by: Sean Paul <seanpaul@chromium.org> (v5)
Tested-by: Robert Foss <robert.foss@collabora.com> (v5)
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1479220628-10204-1-git-send-email-gustavo@padovan.org
(cherry picked from commit 6d6003c4b613c93973e4e870d83f4bed2ad9ac34)
Signed-off-by: Marissa Wall <marissaw@google.com>
Change-Id: Id1722e5611757509ec311b56c70fa985a2d5035a
Gustavo Padovanauthored and Marissa Wallcommited 2017-05-23 15:47:18 -07:00
There is now a new property called IN_FENCE_FD attached to every plane
state that receives sync_file fds from userspace via the atomic commit
IOCTL.
The fd is then translated to a fence (that may be a fence_array
subclass or just a normal fence) and then used by DRM to fence_wait() for
all fences in the sync_file to signal. So it only commits when all
framebuffers are ready to scanout.
v2: Comments by Daniel Vetter:
- remove set state->fence = NULL in destroy phase
- accept fence -1 as valid and just return 0
- do not call fence_get() - sync_file_fences_get() already calls it
- fence_put() if state->fence is already set, in case userspace
set the property more than once.
v3: WARN_ON if fence is set but state has no FB
v4: Comment from Maarten Lankhorst
- allow set fence with no related fb
v5: rename FENCE_FD to IN_FENCE_FD
v6: Comments by Daniel Vetter:
- rename plane_state->in_fence back to "fence"
- re-introduce WARN_ON if fence set but no fb
- rebase after fence -> dma_fence rename
v7: Comments by Brian Starkey
- set state->fence to NULL when duplicating the state
- fail if IN_FENCE_FD was already set
v8: rebase against latest drm-misc
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Reviewed-by: Brian Starkey <brian.starkey@arm.com>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Tested-by: Robert Foss <robert.foss@collabora.com>
[danvet: Rebase onto extracted drm_mode_config.[hc].]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 9626014258a5957ff120b3987ee72decdbe0c798)
Signed-off-by: Marissa Wall <marissaw@google.com>
Change-Id: I1a4e7395bc7709b457544c5086611122d4602a61
Gustavo Padovanauthored and Marissa Wallcommited 2017-05-23 15:47:18 -07:00
Add new drm_fb_cma_prepare_fb() helper function extracted from the
imx-drm driver. This function checks if the plane has DMABUF attached
to it, extracts the exclusive fence from it and attaches it to the
plane state for the atomic helper to wait on it.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20161114100732.3446-1-marex@denx.de
(cherry picked from commit 14d7f96f90fb65c2ca0e0ac7df237e06ff001c29)
Signed-off-by: Marissa Wall <marissaw@google.com>
Change-Id: I3b7adb3c3217eed72e45c53c5c749f6218611df0
Marek Vasutauthored and Marissa Wallcommited 2017-05-23 15:47:18 -07:00
This new function should be used by drivers when setting a implicit
fence for the plane. It abstracts the fact that the user might have
chosen explicit fencing instead.
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1478513013-3221-1-git-send-email-gustavo@padovan.org
(cherry picked from commit 13b55664eec7b85607c4ab9d26a62b4af413a771)
Signed-off-by: Marissa Wall <marissaw@google.com>
Change-Id: If364103f7e85d915e13b84c0cb8ce37202c6f9b9
Gustavo Padovanauthored and Marissa Wallcommited 2017-05-23 15:47:18 -07:00
* tmp-44e63be:
Linux 4.9.22
x86/reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk
usb-storage: Add ignore-residue quirk for Initio INIC-3619
x86/reboot/quirks: Add ASUS EeeBook X205TA/W reboot quirk
x86/reboot/quirks: Add ASUS EeeBook X205TA reboot quirk
platform/x86: asus-wmi: Detect quirk_no_rfkill from the DSDT
platform/x86: asus-wmi: Set specified XUSB2PR value for X550LB
watchdog: s3c2410: Fix infinite interrupt in soft mode
PCI: Add ACS quirk for Qualcomm QDF2400 and QDF2432
PCI: Sort the list of devices with D3 delay quirk by ID
mmc: sdhci-of-esdhc: remove default broken-cd for ARM
PCI: Disable MSI for HiSilicon Hip06/Hip07 Root Ports
PCI: Add Broadcom Northstar2 PAXC quirk for device class and MPSS
ARM: smccc: Update HVC comment to describe new quirk parameter
drm/msm/adreno: move function declarations to header file
firmware: qcom: scm: Fix interrupted SCM calls
arm: kernel: Add SMC structure parameter
HID: wacom: don't apply generic settings to old devices
ASoC: sun4i-i2s: Add quirks to handle a31 compatible
ACPI: save NVS memory for Lenovo G50-45
ASoC: Intel: cht_bsw_rt5645: add Baytrail MCLK support
ASoC: Intel: cht_bsw_rt5645: harden ACPI device detection
ASoC: Intel: Baytrail: add quirk for Lenovo Thinkpad 10
ASoC: codecs: rt5670: add quirk for Lenovo Thinkpad 10
ASoC: rt5670: Add missing 10EC5072 ACPI ID
ACPI / button: Change default behavior to lid_init_state=open
sata: ahci-da850: implement a workaround for the softreset quirk
PCI: Add ACS quirk for Intel Union Point
ARM: dts: STiH407-family: set snps,dis_u3_susphy_quirk
drm/mga: remove device_is_agp callback
usb: dwc3: host: pass quirk-broken-port-ped property for known broken revisions
usb: host: xhci-plat: enable BROKEN_PED quirk if platform requested
usb: xhci: add quirk flag for broken PED bits
ARM: davinci: PM: support da8xx DT platforms
Input: gpio_keys - add support for GPIO descriptors
serial: 8250_omap: Add OMAP_DMA_TX_KICK quirk for AM437x
usb: chipidea: msm: Rely on core to override AHBBURST
scsi: ufs: issue link starup 2 times if device isn't active
scsi: ufs: introduce a new ufshcd_statea UFSHCD_STATE_EH_SCHEDULED
ASoC: Intel: bytcr_rt5640: quirks for Insyde devices
drm/i915: actually drive the BDW reserved IDs
drm/i915: more .is_mobile cleanups for BDW
drm/i915: fix INTEL_BDW_IDS definition
drm/edid: constify edid quirk list
HID: usbhid: Add quirk for Mayflash/Dragonrise DolphinBar.
HID: usbhid: Add quirk for the Futaba TOSD-5711BB VFD
ACPI / sysfs: Provide quirk mechanism to prevent GPE flooding
nvme: simplify stripe quirk
platform/x86: acer-wmi: Only supports AMW0_GUID1 on acer family
ALSA: usb-audio: Add native DSD support for TEAC 501/503 DAC
PCI: Expand "VPD access disabled" quirk message
ALSA: usb-audio: add implicit fb quirk for Axe-Fx II
scsi: ufs: add quirk to increase host PA_SaveConfigTime
PCI: thunder-pem: Factor out resource lookup
arm64: PCI: Add local struct device pointers
arm64: PCI: Manage controller-specific data on per-controller basis
x86/intel_idle: Add CPU model 0x4a (Atom Z34xx series)
svcauth_gss: Close connection when dropping an incoming message
scsi: ufs: ensure that host pa_tactivate is higher than device
mmc: sdhci-msm: Enable few quirks
HID: multitouch: do not retrieve all reports for all devices
HID: multitouch: enable the Surface 3 Type Cover to report multitouch data
HID: sensor-hub: add quirk for Microchip MM7150
HID: sensor-hub add quirk for Microsoft Surface 3
scsi: ufs: introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk
clocksource/drivers/arm_arch_timer: Don't assume clock runs in suspend
net/mlx4_core: Use device ID defines
arm64: dts: hisi: fix hip06 sas am-max-trans quirk
ASoC: Intel: bytct_rt5640: change default capture settings
usb: dwc3: gadget: delay unmap of bounced requests
HID: i2c-hid: add a simple quirk to fix device defects
HID: usbhid: Add quirks for Mayflash/Dragonrise GameCube and PS3 adapters
clk: lpc32xx: add a quirk for PWM and MS clock dividers
drm/sun4i: Add compatible string for A31/A31s TCON (timing controller)
drm/sun4i: Add compatible strings for A31/A31s display pipelines
drm/sun4i: tcon: Move SoC specific quirks to a DT matched data structure
random: use chacha20 for get_random_int/long
mm/mempolicy.c: fix error handling in set_mempolicy and mbind.
Documentation: stable-kernel-rules: fix stable-tag format
MIPS: c-r4k: Fix Loongson-3's vcache/scache waysize calculation
MIPS: Flush wrong invalid FTLB entry for huge page
MIPS: Add MIPS_CPU_FTLB for Loongson-3A R2
MIPS: Check TLB before handle_ri_rdhwr() for Loongson-3
MIPS: Lantiq: fix missing xbar kernel panic
MIPS: End spinlocks with .insn
MIPS: ralink: Fix typos in rt3883 pinctrl
MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels
s390/uaccess: get_user() should zero on failure (again)
s390/decompressor: fix initrd corruption caused by bss clear
xtensa: make __pa work with uncached KSEG addresses
nios2: reserve boot memory for device tree
dm raid: fix NULL pointer dereference for raid1 without bitmap
powerpc/crypto/crc32c-vpmsum: Fix missing preempt_disable()
powerpc: Don't try to fix up misaligned load-with-reservation instructions
powerpc/64: Fix flush_(d|i)cache_range() called from modules
powerpc/mm: Add missing global TLB invalidate if cxl is active
powerpc: Disable HFSCR[TM] if TM is not supported
metag/usercopy: Add missing fixups
metag/usercopy: Fix src fixup in from user rapf loops
metag/usercopy: Set flags before ADDZ
metag/usercopy: Zero rest of buffer from copy_from_user
metag/usercopy: Add early abort to copy_to_user
metag/usercopy: Fix alignment error checking
metag/usercopy: Drop unused macros
brcmfmac: use local iftype avoiding use-after-free of virtual interface
mac80211: unconditionally start new netdev queues with iTXQ support
ring-buffer: Fix return value check in test_ringbuffer()
xfs: Honor FALLOC_FL_KEEP_SIZE when punching ends of files
orangefs: move features validation to fix filesystem hang
Kbuild: use cc-disable-warning consistently for maybe-uninitialized
ACPI / gpio: do not fall back to parsing _CRS when we get a deferral
dm verity fec: fix bufio leaks
dm verity fec: limit error correction recursion
ptrace: fix PTRACE_LISTEN race corrupting task->state
mm/page_alloc.c: fix print order in show_free_areas()
Reset TreeId to zero on SMB2 TREE_CONNECT
cfg80211: check rdev resume callback only for registered wiphy
arm64: mm: unaligned access by user-land should be received as SIGBUS
iio: bmg160: reset chip when probing
kvm: arm/arm64: Fix locking for kvm_free_stage2_pgd
arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region
arm/arm64: KVM: Take mmap_sem in stage2_unmap_vm
staging: android: ashmem: lseek failed due to no FMODE_LSEEK.
sysfs: be careful of error returns from ops->show()
drm/vmwgfx: fix integer overflow in vmw_surface_define_ioctl()
drm/vmwgfx: Remove getparam error message
drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces
drm/vmwgfx: avoid calling vzalloc with a 0 size in vmw_get_cap_3d_ioctl()
drm/vmwgfx: NULL pointer dereference in vmw_surface_define_ioctl()
drm/vmwgfx: Type-check lookups of fence objects
ppdev: fix registering same device name
ppdev: check before attaching port
ANDROID: sched/walt: make walt_ktime_suspended __read_mostly
UPSTREAM: checkpatch: special audit for revert commit line
ANDROID: sdcardfs: Directly pass lower file for mmap
staging: android: ashmem: lseek failed due to no FMODE_LSEEK.
Conflicts:
arch/arm64/kernel/arm64ksyms.c
drivers/mmc/host/sdhci-msm.c
drivers/scsi/ufs/ufs-qcom.c
drivers/scsi/ufs/ufs-qcom.h
drivers/scsi/ufs/ufshcd.c
drivers/scsi/ufs/ufshcd.h
drivers/usb/dwc3/gadget.c
drivers/usb/host/xhci-plat.c
Change-Id: I076ac28168908623e0b1861e72d6b9e48e8f5dac
Signed-off-by: Channagoud Kadabi <ckadabi@codeaurora.org>
Add support into the drm_mipi_dsi framework to support
unicasting DCS commands to specific DSI controls within a panel.
This is required for partial update where distinct page/col
commands need to be sent to each panel in cases where the region
of interest on the panels is different.
Change-Id: I42aa10feaf345d4bbbd8afa7a9325c90d7f2bfbd
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
[ Upstream commit 0784bc624ae9be4269f8129572ee164ca680ca7c ]
Commit 8d9c20e1d1 ("drm/i915: Remove .is_mobile field from platform
struct") removed mobile vs desktop differences for HSW+, but forgot
the Broadwell reserved IDs, so do it now.
It's interesting to notice that these IDs are used by early-quirks.c
but are *not* used by i915_pci.c.
Cc: Carlos Santa <carlos.santa@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1483473860-17644-2-git-send-email-paulo.r.zanoni@intel.com
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Paulo Zanoniauthored and Greg Kroah-Hartmancommited 2017-04-12 12:41:18 +02:00
[ Upstream commit 7fbd995ce4241e98d30859405504c3fb279c4ccb ]
Remove duplicated IDs from the list. Currently, this definition is
only used by early-quirks.c. From my understanding of the code, having
duplicated IDs shouldn't be causing any bugs.
Fixes: 8d9c20e1d1 ("drm/i915: Remove .is_mobile field from platform struct")
Cc: Carlos Santa <carlos.santa@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1483473860-17644-1-git-send-email-paulo.r.zanoni@intel.com
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Paulo Zanoniauthored and Greg Kroah-Hartmancommited 2017-04-12 12:41:18 +02:00
commit fe25deb7737ce6c0879ccf79c99fa1221d428bf2 upstream.
Previously, when a surface was opened using a legacy (non prime) handle,
it was verified to have been created by a client in the same master realm.
Relax this so that opening is also allowed recursively if the client
already has the surface open.
This works around a regression in svga mesa where opening of a shared
surface is used recursively to obtain surface information.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Sinclair Yeh <syeh@vmware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Thomas Hellstromauthored and Greg Kroah-Hartmancommited 2017-04-12 12:41:10 +02:00
* 4.9/tmp-c96f651:
Linux 4.9.20
usb: musb: fix possible spinlock deadlock
sched/rt: Add a missing rescheduling point
fscrypt: remove broken support for detecting keyring key revocation
metag/ptrace: Reject partial NT_METAG_RPIPE writes
metag/ptrace: Provide default TXSTATUS for short NT_PRSTATUS
metag/ptrace: Preserve previous registers for short regset write
sparc/ptrace: Preserve previous registers for short regset write
mips/ptrace: Preserve previous registers for short regset write
h8300/ptrace: Fix incorrect register transfer count
c6x/ptrace: Remove useless PTRACE_SETREGSET implementation
pinctrl: qcom: Don't clear status bit on irq_unmask
virtio_balloon: init 1st buffer in stats vq
KVM: x86: cleanup the page tracking SRCU instance
xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder
xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window
xfrm: policy: init locks early
ANDROID: ARM64: Allow to choose appended kernel image
Linux 4.9.19
crypto: algif_hash - avoid zero-sized array
fbcon: Fix vc attr at deinit
drm: reference count event->completion
nl80211: fix dumpit error path RTNL deadlocks
drm/bridge: analogix dp: Fix runtime PM state on driver bind
device-dax: fix pmd/pte fault fallback handling
libceph: don't set weight to IN when OSD is destroyed
Drivers: hv: vmbus: Don't leak memory when a channel is rescinded
Drivers: hv: vmbus: Don't leak channel ids
intel_th: Don't leak module refcount on failure to activate
jbd2: don't leak memory if setting up journal fails
auxdisplay: img-ascii-lcd: add missing sentinel entry in img_ascii_lcd_matches
drm/amdgpu: reinstate oland workaround for sclk
blk-mq: don't complete un-started request in timeout handler
cgroup, net_cls: iterate the fds of only the tasks which are being migrated
cpufreq: Restore policy min/max limits on CPU online
arm64: kaslr: Fix up the kernel image alignment
ARM: at91: pm: cpu_idle: switch DDR to power-down mode
Revert "ARM: at91/dt: sama5d2: Use new compatible for ohci node"
iommu/vt-d: Fix NULL pointer dereference in device_to_iommu
xen/acpi: upload PM state from init-domain to Xen
crypto: ccp - Assign DMA commands to the channel's CCP
mwifiex: pcie: don't leak DMA buffers when removing
clk: sunxi-ng: mp: Adjust parent rate for pre-dividers
clk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module clock
hwrng: geode - Revert managed API changes
hwrng: amd - Revert managed API changes
mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power
mmc: sdhci: Do not disable interrupts while waiting for clock
mmc: sdhci-of-arasan: fix incorrect timeout clock
mmc: sdhci-of-at91: Support external regulators
powerpc/64s: Fix idle wakeup potential to clobber registers
ext4: lock the xattr block before checksuming it
ext4: mark inode dirty after converting inline directory
parport: fix attempt to write duplicate procfiles
iio: magnetometer: ak8974: remove incorrect __exit markups
iio: hid-sensor-trigger: Change get poll value function order to avoid sensor properties losing after resume from S3
iio: sw-device: Fix config group initialization
iio: adc: ti_am335x_adc: fix fifo overrun recovery
mmc: ushc: fix NULL-deref at probe
uwb: hwa-rc: fix NULL-deref at probe
uwb: i1480-dfu: fix NULL-deref at probe
USB: usbtmc: fix probe error path
USB: usbtmc: add missing endpoint sanity check
usb: hub: Fix crash after failure to read BOS descriptor
usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer
USB: wusbcore: fix NULL-deref at probe
USB: idmouse: fix NULL-deref at probe
USB: lvtest: fix NULL-deref at probe
USB: uss720: fix NULL-deref at probe
usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk
usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's wBytesPerInterval
ACM gadget: fix endianness in notifications
USB: serial: qcserial: add Dell DW5811e
USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems
ALSA: hda - Adding a group of pin definition to fix headset problem
ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call
ALSA: seq: Fix racy cell insertions during snd_seq_pool_done()
Input: sur40 - validate number of endpoints before using them
Input: kbtab - validate number of endpoints before using them
Input: cm109 - validate number of endpoints before using them
Input: yealink - validate number of endpoints before using them
Input: hanwang - validate number of endpoints before using them
Input: ims-pcu - validate number of endpoints before using them
Input: iforce - validate number of endpoints before using them
Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000
Input: elan_i2c - add ASUS EeeBook X205TA special touchpad fw
Input: ALPS - fix trackstick button handling on V8 devices
Input: ALPS - fix V8+ protocol handling (73 03 28)
tcp: initialize icsk_ack.lrcvtime at session start time
socket, bpf: fix sk_filter use after free in sk_clone_lock
ipv4: provide stronger user input validation in nl_fib_input()
net: bcmgenet: remove bcmgenet_internal_phy_setup()
ipv6: make sure to initialize sockc.tsflags before first use
net/mlx5e: Count LRO packets correctly
net/mlx5e: Count GSO packets correctly
net/mlx5: Increase number of max QPs in default profile
net/mlx5e: Use the proper UAPI values when offloading TC vlan actions
net/mlx5: Add missing entries for set/query rate limit commands
net: vrf: Reset rt6i_idev in local dst after put
qmi_wwan: add Dell DW5811e
net: unix: properly re-increment inflight counter of GC discarded candidates
openvswitch: Add missing case OVS_TUNNEL_KEY_ATTR_PAD
amd-xgbe: Fix jumbo MTU processing on newer hardware
net: properly release sk_frag.page
net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled
net/openvswitch: Set the ipv6 source tunnel key address attribute correctly
Change-Id: I83a11caf9ef417ddfc78b8ed688d10d8e3c9cb1a
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
commit 24835e442f289813aa568d142a755672a740503c upstream.
When writing the generic nonblocking commit code I assumed that
through clever lifetime management I can assure that the completion
(stored in drm_crtc_commit) only gets freed after it is completed. And
that worked.
I also wanted to make nonblocking helpers resilient against driver
bugs, by having timeouts everywhere. And that worked too.
Unfortunately taking boths things together results in oopses :( Well,
at least sometimes: What seems to happen is that the drm event hangs
around forever stuck in limbo land. The nonblocking helpers eventually
time out, move on and release it. Now the bug I tested all this
against is drivers that just entirely fail to deliver the vblank
events like they should, and in those cases the event is simply
leaked. But what seems to happen, at least sometimes, on i915 is that
the event is set up correctly, but somohow the vblank fails to fire in
time. Which means the event isn't leaked, it's still there waiting for
eventually a vblank to fire. That tends to happen when re-enabling the
pipe, and then the trap springs and the kernel oopses.
The correct fix here is simply to refcount the crtc commit to make
sure that the event sticks around even for drivers which only
sometimes fail to deliver vblanks for some arbitrary reasons. Since
crtc commits are already refcounted that's easy to do.
References: https://bugs.freedesktop.org/show_bug.cgi?id=96781
Cc: Jim Rees <rees@umich.edu>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20161221102331.31033-1-daniel.vetter@ffwll.ch
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Daniel Vetterauthored and Greg Kroah-Hartmancommited 2017-03-30 09:41:28 +02:00
The maximum number of properties that can be created for a DRM
object needs to be increased.
Change-Id: Ic0f6d9ec73a6071dbb397b924a4389a9afb81bdc
Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
We don't want all planes to be added to the state whenever a
plane with fixed zpos gets enabled/disabled. This is true
especially for eg. cursor planes on i915, as we want cursor
updates to go through w/o throttling. Same holds for drivers
that don't support zpos at all (i915 actually falls into this
category right now since we've not yet added zpos support).
Allow drivers more freedom by letting them deal with zpos
themselves instead of doing it in drm_atomic_helper_check_planes()
unconditionally. Let's just inline the required calls into all
the driver that currently depend on this.
v2: Inline the stuff into the drivers instead of adding another
helper, document things better (Daniel)
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org>
Cc: Vincent Abriou <vincent.abriou@st.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Inki Dae <inki.dae@samsung.com>
Cc: Joonyoung Shim <jy0922.shim@samsung.com>
Cc: Seung-Woo Kim <sw0312.kim@samsung.com>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Lyude <cpaul@redhat.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: stable@vger.kernel.org
Fixes: 44d1240d00 ("drm: add generic zpos property")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Acked-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1476111056-12734-1-git-send-email-ville.syrjala@linux.intel.com
Ville Syrjäläauthored and Daniel Vettercommited 2016-10-26 18:48:05 +02:00
dma_buf may live a long time, longer than the last direct user of the
driver. We already hold a reference to the owner module (that prevents
the object code from disappearing), but there is no reference to the
drm_dev - so the pointers to the driver backend themselves may vanish.
v2: Resist temptation to fix the bug in armada_gem.c not setting the
correct flags on the exported dma-buf (it should pass the flags through
and not be arbitrarily setting O_RDWR).
Use a common wrapper for exporting the dmabuf and acquiring the
reference to the drm_device.
Testcase: igt/vgem_basic/unload
Suggested-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: stable@vger.kernel.org
Tested-by: Petri Latvala <petri.latvala@intel.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20161005122145.1507-2-chris@chris-wilson.co.uk
Chris Wilsonauthored and Daniel Vettercommited 2016-10-05 15:30:32 +02:00
dma_buf_export() adds a reference to the owning module to the dmabuf (to
prevent the driver from being unloaded whilst a third party still refers
to the dmabuf). However, drm_gem_prime_export() was passing its own
THIS_MODULE (i.e. drm.ko) rather than the driver. Extract the right
owner from the device->fops instead.
v2: Use C99 initializers to zero out unset elements of
dma_buf_export_info
v3: Extract the right module from dev->fops.
Testcase: igt/vgem_basic/unload
Reported-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Christian König <christian.koenig@amd.com>
Cc: stable@vger.kernel.org
Tested-by: Petri Latvala <petri.latvala@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20161005122145.1507-1-chris@chris-wilson.co.uk
Chris Wilsonauthored and Daniel Vettercommited 2016-10-05 15:29:08 +02:00
Add .prepare_fb and .cleanup_fb plane hooks into the drm_simple_kms.
These can be used by drivers to call ie. the drm_fb_cma_setup_fence()
helper.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Noralf Trønnes <noralf@tronnes.org>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: David Airlie <airlied@linux.ie>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20161002170124.6099-1-marex@denx.de
Marek Vasutauthored and Daniel Vettercommited 2016-10-05 15:18:02 +02:00
The define DRM_FB_HELPER_DEFAULT_OPS provides the drm_fb_helper default
implementations for functions in struct fb_ops. A drm driver can use it
like:
static struct fb_ops drm_fbdev_cma_ops = {
.owner = THIS_MODULE,
DRM_FB_HELPER_DEFAULT_OPS,
/* driver specific implementations */
};
Suggested-by: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: Stefan Christ <contact@stefanchrist.eu>
Reviewed-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1475182136-15191-2-git-send-email-contact@stefanchrist.eu
Stefan Christauthored and Daniel Vettercommited 2016-10-04 08:23:16 +02:00
It's not that obvious how a driver can all race the atomic commit with
handling the completion event. And there's unfortunately a pile of
drivers with rather bad event handling which misdirect people into the
wrong direction.
Try to remedy this by documenting everything better.
v2: Type fixes Alex spotted.
v3: More typos Alex spotted.
Cc: Andrzej Hajda <a.hajda@samsung.com>
Cc: Alex Deucher <alexdeucher@gmail.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1475229896-6047-1-git-send-email-daniel.vetter@ffwll.ch
Remove function name and special " *ERROR*" from argument list
$ size drivers/gpu/drm/built-in.o* (x86-32 defconfig, most drm selected)
text data bss dec hex filename
5635366 182579 14328 5832273 58fe51 drivers/gpu/drm/built-in.o.new
5779552 182579 14328 5976459 5b318b drivers/gpu/drm/built-in.o.old
Using "%ps", __builtin_return_address(0) is the same as "%s", __func__
except for static inlines, but it's more or less the same output.
Miscellanea:
o Convert args... to ##__VA_ARGS__
o The equivalent DRM_DEV_<FOO> macros are rarely used and not
worth conversion
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/01f976d5ab93c985756fc1b2e83656fb0a2a28c8.1474856262.git.joe@perches.com
Joe Perchesauthored and Daniel Vettercommited 2016-10-04 08:23:14 +02:00
We have the drm_display_info for storing information about the sink, so
let's move dvi_dual and max_tmds_clock in there.
v2: Deal with superfluous code shuffling
Document dvi_dual and max_tmds_clock too
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: "Christian König" <christian.koenig@amd.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Christian König <christian.koenig@amd.com> (v1)
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1475070703-6435-5-git-send-email-ville.syrjala@linux.intel.com
Ville Syrjäläauthored and Daniel Vettercommited 2016-10-04 08:23:10 +02:00
We generally store clocks in kHz, so let's do that for the
HDMI max TMDS clock value as well. Less surpising.
v2: Deal with superfluous code shuffling
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: "Christian König" <christian.koenig@amd.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Christian König <christian.koenig@amd.com> (v1)
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1475070703-6435-4-git-send-email-ville.syrjala@linux.intel.com
Ville Syrjäläauthored and Daniel Vettercommited 2016-10-04 08:23:09 +02:00