This change migrates all the relevant files and updates made
to the dvb/demux framework, required for mpq demux driver.
The snapshot is taken as of msm-4.4,
'commit a74dd0fdc772 ("mmc: core: retune after un-gating the clocks")'
In addition, introduce a few code changes to reduce checkpatch
warnings, typos and other style issues.
Change-Id: Ifb50d730ff8bd245f5f96cd880dfe5c9a0a75fd2
Signed-off-by: Udaya Bhaskara Reddy Mallavarapu <udaym@codeaurora.org>
This change adds support for UBWC CR stats extradata, so that HW
can write UBWC stats into Extradata buffer. This information is
exchanged to consumers through extradata. This information is
useful for optimal run-time bus BW voting.
CRs-Fixed: 2012520
Change-Id: I62c53bd43da0a94cfb7fff6b02f5d449c0f216a6
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
add support on wan-driver to query modem or
wlan-fw to get the total data usage for all
tethered clients.
Change-Id: I56f40f1c0f6b2ec4279e78b3aeb81c687d08bf2e
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Add the ADSP event data definition used to pass the event registration
information to ADSP or get event payload from ADSP.
Change-Id: I05259ee1fe1faf72f90a1a56f8485cf8b1281e01
Signed-off-by: Kuirong Wang <kuirongw@codeaurora.org>
Kuirong Wangauthored and Banajit Goswamicommited 2017-06-13 09:25:13 -07:00
IPAv4 presents multi PDN support. This change provides backward
compatibility towards user space and allows setting NAT rules
for several PDNs. Metadata replacement is also supported as part
of this feature.
CRs-Fixed: 2040674
Change-Id: If0ee3cb1da5b40a4d0887aaec276e5b78e947337
Signed-off-by: Amir Levy <alevy@codeaurora.org>
* 4.9/tmp-77d3588:
Linux 4.9.31
xfs: Fix off-by-in in loop termination in xfs_find_get_desired_pgoff()
xfs: fix unaligned access in xfs_btree_visit_blocks
xfs: avoid mount-time deadlock in CoW extent recovery
xfs: xfs_trans_alloc_empty
xfs: bad assertion for delalloc an extent that start at i_size
xfs: BMAPX shouldn't barf on inline-format directories
xfs: fix indlen accounting error on partial delalloc conversion
xfs: fix use-after-free in xfs_finish_page_writeback
xfs: reserve enough blocks to handle btree splits when remapping
xfs: wait on new inodes during quotaoff dquot release
xfs: update ag iterator to support wait on new inodes
xfs: support ability to wait on new inodes
xfs: fix up quotacheck buffer list error handling
xfs: prevent multi-fsb dir readahead from reading random blocks
xfs: handle array index overrun in xfs_dir2_leaf_readbuf()
xfs: fix integer truncation in xfs_bmap_remap_alloc
xfs: drop iolock from reclaim context to appease lockdep
xfs: actually report xattr extents via iomap
xfs: fix over-copying of getbmap parameters from userspace
xfs: use dedicated log worker wq to avoid deadlock with cil wq
xfs: fix kernel memory exposure problems
xfs: rework the inline directory verifiers
xfs: verify inline directory data forks
xfs: fix off-by-one on max nr_pages in xfs_find_get_desired_pgoff()
xfs: use ->b_state to fix buffer I/O accounting release race
xfs: Fix missed holes in SEEK_HOLE implementation
drm/gma500/psb: Actually use VBT mode when it is found
mm/slub.c: trace free objects at KERN_INFO
slub/memcg: cure the brainless abuse of sysfs attributes
ksm: prevent crash after write_protect_page fails
x86/boot: Use CROSS_COMPILE prefix for readelf
RDMA/qib,hfi1: Fix MR reference count leak on write with immediate
mm: consider memblock reservations for deferred memory initialization sizing
mlock: fix mlock count can not decrease in race condition
mm/migrate: fix refcount handling when !hugepage_migration_supported()
ALSA: hda - apply STAC_9200_DELL_M22 quirk for Dell Latitude D430
pcmcia: remove left-over %Z format
drm/radeon: Fix vram_size/visible values in DRM_RADEON_GEM_INFO ioctl
drm/radeon: Unbreak HPD handling for r600+
drm/radeon/ci: disable mclk switching for high refresh rates (v2)
scsi: mpt3sas: Force request partial completion alignment
nvme: avoid to use blk_mq_abort_requeue_list()
nvme: use blk_mq_start_hw_queues() in nvme_kill_queues()
nvme-rdma: support devices with queue size < 32
HID: wacom: Have wacom_tpc_irq guard against possible NULL dereference
ibmvscsis: Fix the incorrect req_lim_delta
ibmvscsis: Clear left-over abort_cmd pointers
iscsi-target: Always wait for kthread_should_stop() before kthread exit
mmc: sdhci-iproc: suppress spurious interrupt with Multiblock read
Revert "ACPI / button: Change default behavior to lid_init_state=open"
acpi, nfit: Fix the memory error check in nfit_handle_mce()
x86/MCE: Export memory_error()
crypto: skcipher - Add missing API setkey checks
i2c: i2c-tiny-usb: fix buffer not being DMA capable
drivers/tty: 8250: only call fintek_8250_probe when doing port I/O
powerpc/spufs: Fix hash faults for kernel regions
fs/ufs: Set UFS default maximum bytes per file
sparc/ftrace: Fix ftrace graph time measurement
sparc: Fix -Wstringop-overflow warning
bpf: add bpf_clone_redirect to bpf_helper_changes_pkt_data
ipv4: add reference counting to metrics
sctp: fix ICMP processing if skb is non-linear
tcp: avoid fastopen API to be used on AF_UNSPEC
virtio-net: enable TSO/checksum offloads for Q-in-Q vlans
be2net: Fix offload features for Q-in-Q packets
vlan: Fix tcp checksum offloads in Q-in-Q vlans
net: phy: marvell: Limit errata to 88m1101
net/mlx5: Avoid using pending command interface slots
bonding: fix accounting of active ports in 3ad
ipv6: fix out of bound writes in __ip6_append_data()
bridge: start hello_timer when enabling KERNEL_STP in br_stp_start
qmi_wwan: add another Lenovo EM74xx device ID
bridge: netlink: check vlan_default_pvid range
ipv6: Check ip6_find_1stfragopt() return value properly.
ipv6: Prevent overrun when parsing v6 header options
net: Improve handling of failures on link and route dumps
tcp: eliminate negative reordering in tcp_clean_rtx_queue
net/mlx5e: Fix ethtool pause support and advertise reporting
net/mlx5e: Use the correct pause values for ethtool advertising
net/packet: fix missing net_device reference release
sctp: do not inherit ipv6_{mc|ac|fl}_list from parent
sctp: fix src address selection if using secondary addresses for ipv6
tcp: avoid fragmenting peculiar skbs in SACK
net: fix compile error in skb_orphan_partial()
netem: fix skb_orphan_partial()
bpf, arm64: fix faulty emission of map access in tail calls
s390/qeth: add missing hash table initializations
s390/qeth: avoid null pointer dereference on OSN
s390/qeth: unbreak OSM and OSN support
s390/qeth: handle sysfs error during initialization
ipv6/dccp: do not inherit ipv6_mc_list from parent
driver: vrf: Fix one possible use-after-free issue
dccp/tcp: do not inherit mc_list from parent
android: base-cfg: disable CONFIG_NFSD and CONFIG_NFS_FS
UPSTREAM: drm/ttm: fix ttm_bo_wait
FROMLIST: [net-next,v2,2/2] bpf: Remove the capability check for cgroup skb eBPF program
FROMLIST: [net-next,v2,1/2] bpf: Allow CGROUP_SKB eBPF program to access sk_buff
ANDROID: Update init/do_mounts_dm.c to the latest ChromiumOS version.
FROMLIST: f2fs: sanity check size of nat and sit cache
FROMLIST: f2fs: sanity check checkpoint segno and blkoff
ANDROID: Kconfig: add depends for UID_SYS_STATS
ANDROID: hid: uhid: implement refcount for open and close
ANDROID: cpufreq: system panic when switch interactive governor frequently
ANDROID: sched/walt: kill {min,max}_capacity
ANDROID: fixup! sched/fair: jump to max OPP when crossing UP threshold
BACKPORT [FROMLIST] New getsockopt option to get socket cookie
UPSTREAM: bpf: cgroup: fix documentation of __cgroup_bpf_update()
BACKPORT: bpf: introduce BPF_F_ALLOW_OVERRIDE flag
UPSTREAM: bpf: restore skb->sk before pskb_trim() call
UPSTREAM: cgroup: move CONFIG_SOCK_CGROUP_DATA to init/Kconfig
UPSTREAM: cgroup, bpf: remove unnecessary #include
ANDROID: mnt: Fix next_descendent
Conflicts:
drivers/cpufreq/cpufreq_interactive.c
init/do_mounts_dm.c
kernel/sched/core.c
kernel/sched/walt.c
Change-Id: I7a987967400f81c9d2ec2dc2283a881de9fd386f
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
If BPF_F_ALLOW_OVERRIDE flag is used in BPF_PROG_ATTACH command
to the given cgroup the descendent cgroup will be able to override
effective bpf program that was inherited from this cgroup.
By default it's not passed, therefore override is disallowed.
Examples:
1.
prog X attached to /A with default
prog Y fails to attach to /A/B and /A/B/C
Everything under /A runs prog X
2.
prog X attached to /A with allow_override.
prog Y fails to attach to /A/B with default (non-override)
prog M attached to /A/B with allow_override.
Everything under /A/B runs prog M only.
3.
prog X attached to /A with allow_override.
prog Y fails to attach to /A with default.
The user has to detach first to switch the mode.
In the future this behavior may be extended with a chain of
non-overridable programs.
Also fix the bug where detach from cgroup where nothing is attached
was not throwing error. Return ENOENT in such case.
Add several testcases and adjust libbpf.
Fixes: 3007098494be ("cgroup: add support for eBPF programs")
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: Daniel Mack <daniel@zonque.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Fixes: Change-Id: I3df35d8d3b1261503f9b5bcd90b18c9358f1ac28
    ("cgroup: add support for eBPF programs")
[AmitP: Refactored original patch for android-4.9 where libbpf sources
are in samples/bpf/ and test_cgrp2_attach2, test_cgrp2_sock,
and test_cgrp2_sock2 sample tests do not exist.]
(cherry picked from commit 7f677633379b4abb3281cdbe7e7006f049305c03)
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
Alexei Starovoitovauthored and Dmitry Shmidtcommited 2017-05-30 17:27:28 -07: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>
Cherry-pick from commit 6acc5c2910689fc6ee181bf63085c5efff6a42bd
Returns the owner uid of the socket inside a sk_buff. This is useful to
perform per-UID accounting of network traffic or per-UID packet
filtering. The socket need to be a fullsock otherwise overflowuid is
returned.
Signed-off-by: Chenbo Feng <fengc@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Bug: 30950746
Change-Id: Idc00947ccfdd4e9f2214ffc4178d701cd9ead0ac
Cherrypick from commit: 91b8270f2a4d1d9b268de90451cdca63a70052d6
Retrieve the socket cookie generated by sock_gen_cookie() from a sk_buff
with a known socket. Generates a new cookie if one was not yet set.If
the socket pointer inside sk_buff is NULL, 0 is returned. The helper
function coud be useful in monitoring per socket networking traffic
statistics and provide a unique socket identifier per namespace.
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Chenbo Feng <fengc@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Bug: 30950746
Change-Id: I95918dcc3ceffb3061495a859d28aee88e3cde3c
Update the missing bpf helper function name in bpf_func_id to keep the
uapi header consistent with upstream uapi header because we need the
new added bpf helper function bpf get_socket_cookie and get_socket_uid.
The patch related to those headers are not backetported since they are
not related and backport them will bring in extra confilict.
Signed-off-by: Chenbo Feng <fengc@google.com>
Bug: 30950746
Change-Id: I2b5fd03799ac5f2e3243ab11a1bccb932f06c312
Cherry-pick from commit f4324551489e8781d838f941b7aee4208e52e8bf
Extend the bpf(2) syscall by two new commands, BPF_PROG_ATTACH and
BPF_PROG_DETACH which allow attaching and detaching eBPF programs
to a target.
On the API level, the target could be anything that has an fd in
userspace, hence the name of the field in union bpf_attr is called
'target_fd'.
When called with BPF_ATTACH_TYPE_CGROUP_INET_{E,IN}GRESS, the target is
expected to be a valid file descriptor of a cgroup v2 directory which
has the bpf controller enabled. These are the only use-cases
implemented by this patch at this point, but more can be added.
If a program of the given type already exists in the given cgroup,
the program is swapped automically, so userspace does not have to drop
an existing program first before installing a new one, which would
otherwise leave a gap in which no program is attached.
For more information on the propagation logic to subcgroups, please
refer to the bpf cgroup controller implementation.
The API is guarded by CAP_NET_ADMIN.
Signed-off-by: Daniel Mack <daniel@zonque.org>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Bug: 30950746
Change-Id: Iab156859332166835d51e1e6f64e5cb8b81870f2
Daniel Mackauthored and Chenbo Fengcommited 2017-05-22 15:30:56 -07:00
Cherry-pick from commit 0e33661de493db325435d565a4a722120ae4cbf3
This program type is similar to BPF_PROG_TYPE_SOCKET_FILTER, except that
it does not allow BPF_LD_[ABS|IND] instructions and hooks up the
bpf_skb_load_bytes() helper.
Programs of this type will be attached to cgroups for network filtering
and accounting.
Signed-off-by: Daniel Mack <daniel@zonque.org>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Bug: 30950746
Change-Id: I7b9e063d5d7a91da80917c6d353a60b877133752
Daniel Mackauthored and Chenbo Fengcommited 2017-05-22 15:30:55 -07:00
The QBT1000 driver provides an API for communicating
with trustzone applications and handles firmware event
interrupts.
The driver supports the following features:
- loading and unloading trustzone applications.
- sending commands to trustzone applications.
- voting/un-voting for clocks before/after making
a trustzone call.
- receiving firmware events, signalled by interrupts,
and providing them to the driver client.
- sending a key event in response to firmware finger
detect events.
- support for multiple IPC messages.
- retry logic for CBGE interrupt handling.
- remove clocks on/off logic.
This is snapshot of the qbt1000 driver as of msm-4.4 kernel base
'd93c68b1f0bd (soc: qcom: add support for fingerprint sensor driver)' .
Change-Id: I59b4294285edab6e4916528a31d0713d06d5a072
Signed-off-by: Abir Ghosh <abirg@codeaurora.org>
Abir Ghoshauthored and Gerrit - the friendly Code Review servercommited 2017-05-21 23:44:51 -07:00
Changes to user space API exposed by IPA driver to allow
ABI compatibility. These changes involves changing some of the enums
for extensibility.
Change-Id: Ia35c5618b8f3987364487c23f2605f673e3ae76c
CRs-Fixed: 2044695
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Skylar Changauthored and Gerrit - the friendly Code Review servercommited 2017-05-19 11:49:40 -07:00
Add new registers and update old registers along with
tables/functions associated with those register.
Change-Id: Iec2e9bf6808498d5fd3bf7aca13377eb155c16f9
CRs-Fixed: 2044228
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
Michael Adisumartacommited 2017-05-16 16:40:06 -07:00
BADD(Basic Audio Device Definition) is a subset of UAC3
specifications. It defines standard profiles which provide
specific attributes of class descriptors. BADD audio device
provides profile id and BADD supporting host will infer
attributes from profile-id.
Currently USB Audio Host driver has support for UAC1
and UAC2 devices. To handle BADD 3.0 devices, AudioControl
and AudioStreaming Interfaces have to be properly parsed.
The Host has to derive all class-specific information based
on the profile ID that the device exposes. Add support for
parsing the AudioStreaming interfaces exposed by the device.
Change-Id: I726bbb735708fe8e395011c7228a73d5f65c092d
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Ajay Agarwalauthored and Hemant Kumarcommited 2017-05-15 14:29:10 -07:00
* 4.9/tmp-e88bb96:
Linux 4.9.26
ftrace/x86: Fix triple fault with graph tracing and suspend-to-ram
ARCv2: save r30 on kernel entry as gcc uses it for code-gen
net: can: usb: gs_usb: Fix buffer on stack
macsec: avoid heap overflow in skb_to_sgvec
ceph: fix recursion between ceph_set_acl() and __ceph_setattr()
nfsd: stricter decoding of write-like NFSv2/v3 ops
nfsd4: minor NFSv2/v3 write decoding cleanup
nfsd: check for oversized NFSv2/v3 arguments
Input: i8042 - add Clevo P650RS to the i8042 reset list
ASoC: intel: Fix PM and non-atomic crash in bytcr drivers
p9_client_readdir() fix
MIPS: Avoid BUG warning in arch_check_elf
MIPS: cevt-r4k: Fix out-of-bounds array access
MIPS: KGDB: Use kernel context for sleeping threads
ARC: [plat-eznps] Fix build error
ALSA: seq: Don't break snd_use_lock_sync() loop by timeout
ALSA: firewire-lib: fix inappropriate assignment between signed/unsigned type
ALSA: oxfw: fix regression to handle Stanton SCS.1m/1d
ipv6: check raw payload size correctly in ioctl
tcp: memset ca_priv data to 0 properly
ipv6: check skb->protocol before lookup for nexthop
net: phy: fix auto-negotiation stall due to unavailable interrupt
net: ipv6: regenerate host route if moved to gc list
macvlan: Fix device ref leak when purging bc_queue
net/mlx5e: Fix ETHTOOL_GRXCLSRLALL handling
net/mlx5e: Fix small packet threshold
net/mlx5: Fix driver load bad flow when having fw initializing timeout
ip6mr: fix notification device destruction
netpoll: Check for skb->queue_mapping
net: ipv6: RTF_PCPU should not be settable from userspace
gso: Validate assumption of frag_list segementation
dp83640: don't recieve time stamps twice
sh_eth: unmap DMA buffers when freeing rings
net: vrf: Fix setting NLM_F_EXCL flag when adding l3mdev rule
net-timestamp: avoid use-after-free in ip_recv_error
ipv6: Fix idev->addr_list corruption
tcp: clear saved_syn in tcp_disconnect()
sctp: listen on the sock only when it's state is listening or closed
net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
l2tp: fix PPP pseudo-wire auto-loading
l2tp: take reference on sessions being dumped
net/packet: fix overflow in check for tp_reserve
net/packet: fix overflow in check for tp_frame_nr
l2tp: purge socket queues in the .destruct() callback
l2tp: hold tunnel socket when handling control frames in l2tp_ip and l2tp_ip6
net/mlx5: Avoid dereferencing uninitialized pointer
bpf: improve verifier packet range checks
kcm: return immediately after copy_from_user() failure
net: phy: handle state correctly in phy_stop_machine
net: neigh: guard against NULL solicit() method
sparc64: Fix kernel panic due to erroneous #ifdef surrounding pmd_write()
sparc64: kern_addr_valid regression
ping: implement proper locking
Revert "mmc: sdhci-msm: Enable few quirks"
ANDROID: net: pppolac/pppopns: Add back the msg_flags
ANDROID: xt_qtaguid: don't check if embedded arrays are NULL
ANDROID: uid_sys_stats: fix access of task_uid(task)
Conflicts:
drivers/mmc/host/sdhci-msm.c
Change-Id: I81ae20f9d3f987abaa7331e3656064b0a2085aae
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAlkJ+RgACgkQONu9yGCS
aT60Mg/8DoDXM1UBDj4E65vTh5qjUi7ohH6M6P0FzAOhKFIMFICbrwIi/WwPq40z
Yl3eD8EZ9B8CeYR+Dsw2y9LSEi381DZMJ9HhyASSoiOxpfGpP3tPBcag4Za9sY6g
MaxpVPUBj/1KM8c3AtewyUjdzgDpGH3uRmIIiZksDAvtLIFjgpeCzAmBTIP+nW1Z
Un8gWhnnSNx654oktMQE2F5E21zLuUVS1jmvjF2iAHAqcj1fprVXAogIE6i7awo4
JUrAuZkbv6kTmAMhliBegB+lHuw2J3nTMTNX1ArYOUuINjZ79c+Ny0rsN0KZyelh
Ni16fSm9UDezL8CrhdZlB+hrmsrZ8zY7Y8h7YulcDHcnkFqg9J/7ervlzIHKtIrY
Qzyfpk5lWD63XU9JdlvVMC0ifMtsLiGW3X8QQK+uksVWpqyJyumKOGl4dNO4N+l5
Z6f4yV+USCgU+jjf1oWYL+Iecmj2f9YFUbP9zP4khrll/qkOcF8uNrks5IFZNjQy
xhiIIRjr4czRsgxDfHU1iDZW3uq7JS8g0pxWoE5QldK9Q6VdlyjDwo9g7hZRXnQq
fVpA0aI0bRyTalkWWWTL9GJkJToVJpQpse422SwcSy/zsLRCbQ0ouw7jBMpDtuNa
fXg8pKVBkMT8cnOuUE4QkKmdreeaGeDWIPXsP7rJeC/uH54lckw=
=FhjY
-----END PGP SIGNATURE-----
Merge 4.9.26 into android-4.9
Changes in 4.9.26:
Revert "mmc: sdhci-msm: Enable few quirks"
ping: implement proper locking
sparc64: kern_addr_valid regression
sparc64: Fix kernel panic due to erroneous #ifdef surrounding pmd_write()
net: neigh: guard against NULL solicit() method
net: phy: handle state correctly in phy_stop_machine
kcm: return immediately after copy_from_user() failure
bpf: improve verifier packet range checks
net/mlx5: Avoid dereferencing uninitialized pointer
l2tp: hold tunnel socket when handling control frames in l2tp_ip and l2tp_ip6
l2tp: purge socket queues in the .destruct() callback
net/packet: fix overflow in check for tp_frame_nr
net/packet: fix overflow in check for tp_reserve
l2tp: take reference on sessions being dumped
l2tp: fix PPP pseudo-wire auto-loading
net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
sctp: listen on the sock only when it's state is listening or closed
tcp: clear saved_syn in tcp_disconnect()
ipv6: Fix idev->addr_list corruption
net-timestamp: avoid use-after-free in ip_recv_error
net: vrf: Fix setting NLM_F_EXCL flag when adding l3mdev rule
sh_eth: unmap DMA buffers when freeing rings
dp83640: don't recieve time stamps twice
gso: Validate assumption of frag_list segementation
net: ipv6: RTF_PCPU should not be settable from userspace
netpoll: Check for skb->queue_mapping
ip6mr: fix notification device destruction
net/mlx5: Fix driver load bad flow when having fw initializing timeout
net/mlx5e: Fix small packet threshold
net/mlx5e: Fix ETHTOOL_GRXCLSRLALL handling
macvlan: Fix device ref leak when purging bc_queue
net: ipv6: regenerate host route if moved to gc list
net: phy: fix auto-negotiation stall due to unavailable interrupt
ipv6: check skb->protocol before lookup for nexthop
tcp: memset ca_priv data to 0 properly
ipv6: check raw payload size correctly in ioctl
ALSA: oxfw: fix regression to handle Stanton SCS.1m/1d
ALSA: firewire-lib: fix inappropriate assignment between signed/unsigned type
ALSA: seq: Don't break snd_use_lock_sync() loop by timeout
ARC: [plat-eznps] Fix build error
MIPS: KGDB: Use kernel context for sleeping threads
MIPS: cevt-r4k: Fix out-of-bounds array access
MIPS: Avoid BUG warning in arch_check_elf
p9_client_readdir() fix
ASoC: intel: Fix PM and non-atomic crash in bytcr drivers
Input: i8042 - add Clevo P650RS to the i8042 reset list
nfsd: check for oversized NFSv2/v3 arguments
nfsd4: minor NFSv2/v3 write decoding cleanup
nfsd: stricter decoding of write-like NFSv2/v3 ops
ceph: fix recursion between ceph_set_acl() and __ceph_setattr()
macsec: avoid heap overflow in skb_to_sgvec
net: can: usb: gs_usb: Fix buffer on stack
ARCv2: save r30 on kernel entry as gcc uses it for code-gen
ftrace/x86: Fix triple fault with graph tracing and suspend-to-ram
Linux 4.9.26
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
[ Upstream commit 557c44be917c322860665be3d28376afa84aa936 ]
Andrey reported a fault in the IPv6 route code:
kasan: GPF could be caused by NULL-ptr deref or user memory access
general protection fault: 0000 [#1] SMP KASAN
Modules linked in:
CPU: 1 PID: 4035 Comm: a.out Not tainted 4.11.0-rc7+ #250
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
task: ffff880069809600 task.stack: ffff880062dc8000
RIP: 0010:ip6_rt_cache_alloc+0xa6/0x560 net/ipv6/route.c:975
RSP: 0018:ffff880062dced30 EFLAGS: 00010206
RAX: dffffc0000000000 RBX: ffff8800670561c0 RCX: 0000000000000006
RDX: 0000000000000003 RSI: ffff880062dcfb28 RDI: 0000000000000018
RBP: ffff880062dced68 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: ffff880062dcfb28 R14: dffffc0000000000 R15: 0000000000000000
FS: 00007feebe37e7c0(0000) GS:ffff88006cb00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00000000205a0fe4 CR3: 000000006b5c9000 CR4: 00000000000006e0
Call Trace:
ip6_pol_route+0x1512/0x1f20 net/ipv6/route.c:1128
ip6_pol_route_output+0x4c/0x60 net/ipv6/route.c:1212
...
Andrey's syzkaller program passes rtmsg.rtmsg_flags with the RTF_PCPU bit
set. Flags passed to the kernel are blindly copied to the allocated
rt6_info by ip6_route_info_create making a newly inserted route appear
as though it is a per-cpu route. ip6_rt_cache_alloc sees the flag set
and expects rt->dst.from to be set - which it is not since it is not
really a per-cpu copy. The subsequent call to __ip6_dst_alloc then
generates the fault.
Fix by checking for the flag and failing with EINVAL.
Fixes: d52d3997f8 ("ipv6: Create percpu rt6_info")
Reported-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: David Ahern <dsa@cumulusnetworks.com>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Tested-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
David Ahernauthored and Greg Kroah-Hartmancommited 2017-05-03 08:36:36 -07:00
Robust context attempts to perform a rendering that takes too long
whether due to an infinite loop in a shader or even just a rendering
operation that takes too long on the given hardware. This type of
attempts can result into GPU faults. Robust context expect driver
to replay IB instead skip IB and if it fails on replay context has
to be invalidated.
KGSL_CONTEXT_INVALIDATE_ON_FAULT flag allows draw context to execute
only replay policy on GPU fault recovery instead of going to default
recovery policy. User space has to set this flag during the context
creation.
Change-Id: If42dc5afc7d5ed1226b73ae5abfa2648d7acf2c3
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
Hareesh Gunduauthored and Gerrit - the friendly Code Review servercommited 2017-05-01 23:21:50 -07:00
Firmware API to support QP mask has been finalized.
Add support in driver for the same.
CRs-Fixed: 2039941
Change-Id: I3c716d07bf2cba8dfec15be540f1fdde37f14b8d
Signed-off-by: Vaibhav Deshu Venkatesh <vdeshuve@codeaurora.org>
Currently all sufficient events from the hardware is insufficient
in driver resulting in output port reconfiguration. Changing all
sufficient buffer events from the hardware to sufficient in driver
for all cases.This helps in passing the sufficient event to the
userspace and decision to convert a sufficient event to
insufficient is handled from the userspace. The userspace uses
V4L2 command for session continue for decoding to progress in
case the event is sufficient.
CRs-Fixed: 2016190
Change-Id: I8b750b406d2ff99bc23aac61d8588e6d052f8618
Signed-off-by: Umesh Pandey <umeshp@codeaurora.org>
Remove stale code in seemp_instrumentation.h. The functions are not
used anymore. Add proper headers to seemp_param_id.h to ensure
successful compilation.
Change-Id: Ic6860bd3dea6adf1f8b8a90504246700e3c0e207
Signed-off-by: Yida Wang <yidaw@codeaurora.org>
Yida Wangauthored and Gerrit - the friendly Code Review servercommited 2017-04-18 19:57:29 -07:00
Port seemp related instrumentation and logging service to from
msm-4.4 to msm-4.9. This change serves two purposes:
- Enable logging service for API events – logged events are read by
userspace components
- Log relevant kernel events
Change-Id: I6eeadc0cb0033d167dde49703269946c77f2acda
Signed-off-by: Yida Wang <yidaw@codeaurora.org>
Yida Wangauthored and Gerrit - the friendly Code Review servercommited 2017-04-14 16:59:11 -07:00
This is a snapshot of the crypto drivers as of msm-4.4
commit <726279510b02ba9> (msm: pcie: add sysfs entry
for PCIe enumeration).
Change-Id: Ic17740bbdba72cf6fca352da7c629c5a3cfcae90
Signed-off-by: AnilKumar Chimata <anilc@codeaurora.org>
This is a snapshot of the qseecom driver as of msm-4.4
commit <726279510b02ba9> (msm: pcie: add sysfs entry
for PCIe enumeration).
Change-Id: Ied091cd52dec19081ff03b84ba82d1c8faeba4d3
Signed-off-by: AnilKumar Chimata <anilc@codeaurora.org>
Currently we enable CDR for every read command including
for tuning procedure which is not correct (as CDR if
enabled might correct the phase during tuning and we
wont be able to detect the correct phase during tuning).
So, disable CDR for read tuning commands.
CRs-fixed: 759398
Change-Id: I051b6e3b204dde22cdc973759c3e32d0a81c369a
Signed-off-by: Ritesh Harjani <riteshh@codeaurora.org>
Signed-off-by: Pavan Anamula <pavana@codeaurora.org>
Ritesh Harjaniauthored and Xiaonian Wangcommited 2017-04-07 17:29:55 -07:00
On error, the CMDQ engine stops processing requests. It is then
halted and error handled.
The error have been categorized as below:
1. Command error
a. time-out
- invalidate all pending tags & requeue
- reset both card & controller
b. crc
- end the error mrq
- tune
- unhalt
2. Data error
a. time-out
- invalidate all pending tags & requeue
- reset both card and controller
b. crc
- end the error mrq
- tune
- unhalt
3. RED error
This is device specific error and is not recoverable.
The card and controller are reset in this case and all
pending tags are invalidated and requeued.
Change-Id: I791d05f6b31d8f9b35a56fe85007b320c14e8b46
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
[subhashj@codeaurora.org: fixed trivial merge conflicts]
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
[xiaonian@codeaurora.org: fixed trivial merge conflicts and
fixed one compilation error]
Signed-off-by: Xiaonian Wang <xiaonian@codeaurora.org>
Asutosh Dasauthored and Xiaonian Wangcommited 2017-04-07 17:27:50 -07:00
The eMMC 4.5 spec for RPMB accesses is not very clear on whether
user parition accesses can be allowed in the middle of RPMB accesses.
Due to this ambiguity, it turns out this is implementation defined
and certain cards support it while others do not.
In order to allow this feature to function across a wide variety of
cards, this patch takes the pessimistic approach and ensures that any
RPMB access is completed before user partition can be accessed.
Change-Id: I77959f462c874771a0a854d9a2bc48df446eff56
Signed-off-by: Krishna Konda <kkonda@codeaurora.org>
Signed-off-by: Oluwafemi Adeyemi <aadeyemi@codeaurora.org>
Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
[merez@codeaurora: fix conflicts due to changes in 3.14]
Signed-off-by: Maya Erez <merez@codeaurora.org>
[subhashj@codeaurora.org: fixed merge conflicts and fixed compilation
errors]
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
[xiaonian@codeaurora.org: fixed trivial merge conflicts and fixed
compilation errors]
Signed-off-by: Xiaonian Wang <xiaonian@codeaurora.org>
Krishna Kondaauthored and Xiaonian Wangcommited 2017-04-07 17:25:45 -07:00
Map the GPU QTimer area as a global into the GPU
IOMMU so that the GPU can access the QTimer.
Change-Id: If50bd36681123adde7e3a37644c41316f101154c
Signed-off-by: Jonathan Wicks <jwicks@codeaurora.org>
Jonathan Wicksauthored and Lynus Vazcommited 2017-04-04 14:08:21 +05:30
ESOC IOCTL was designed to transfer data of type unsigned int, but
was pushing data of unsigned long type. Hence causing data corruption
in user space. Fix this by changing put user to use unsigned int.
Change-Id: Ia233eedd76f1ca1ec3036889d6764e568ee975dd
Signed-off-by: Arun KS <arunks@codeaurora.org>
[satyap@codeaurora.org: trivial merge conflict resolution]
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
Arun KSauthored and Satya Durga Srinivasu Prabhalacommited 2017-04-03 15:02:29 -07:00
Add support for AFE sidetone whenever USB device or
codec sidetone is not available or supported.
Change-Id: I325ba6448efb4c021a2974ad813be4f8192e9ad1
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Siena Richardauthored and Gerrit - the friendly Code Review servercommited 2017-03-31 12:11:33 -07:00
This is a snapshot of the sockev module taken as of msm-4.4
commit 33193859886dd87 ("net: core: Send only BIND and LISTEN events.").
Added module which subscribes to socket notifier events. Notifier events
are then converted to a multicast netlink message for user space
applications to consume.
CRs-Fixed: 1078373
Change-Id: If72b7c9a127d3861d276b681b052be3619bc6562
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Subash Abhinov Kasiviswanathanauthored and Gerrit - the friendly Code Review servercommited 2017-03-29 16:54:34 -07:00