Commit graph

599432 commits

Author SHA1 Message Date
Linux Build Service Account
46b4f44537 Merge "soc: qcom: glink_ssr: Initialize waitqueue in probe function" 2018-05-08 04:21:31 -07:00
Linux Build Service Account
4964becbba Merge "defconfig: msm: add bluetooth related defconfigs for gvm" 2018-05-08 04:21:28 -07:00
Linux Build Service Account
f89961666e Merge "ARM: dts: msm: add bluetooth chip device node for gvm" 2018-05-08 04:21:26 -07:00
Vijayanand Jitta
f17bd0f328 ion: Consider ion pool pages as indirectly reclaimable
An issue is observed where mallocs are failing due to overcommit failure.
The failure happens when there is high ION page pool since ION page
pool is not considered reclaimable by the overcommit calculation code.
This change considers ion pool pages as indirectly reclaimable and thus
accounted as available memory in the overcommit calculation.

Change-Id: I8d63209b8c19286e55c407459ff124fdc58fdcc2
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
2018-05-08 04:03:37 -07:00
Yong Ding
f2f2b6f073 ARM: dts: msm: add HAB physical channels for msm8996 baseline vplatform
MISC, QCPE and FDE physical channels are added for msm8996
baseline vplatform for test and security use cases.

Change-Id: I1ba984bf65b9aab8cf56f024a24494498b701fca
Signed-off-by: Yong Ding <yongding@codeaurora.org>
2018-05-08 18:17:38 +08:00
Dhoat Harpal
c3aacf2341 soc: qcom: glink_ssr: Initialize waitqueue in probe function
waitqueue is initialized on every call to notify_for_subsystem.
This leads to stability issue if one thread is waiting for completion
and another thread re-initializes it.

Waitqueue is initialized only in probe function.

CRs-Fixed: 2197181
Change-Id: I3509a7c4a197c727b2025c1aeb6a35690c3c8501
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
2018-05-07 23:35:18 -07:00
Amit Blay
2940947862 soc: qcom: scm_qcpe: Add support for GHS
Add support for GHS

Change-Id: I454ee5e9c643b6521ae5072bb461b7c43bbe9dcc
Signed-off-by: Amit Blay <ablay@codeaurora.org>
2018-05-07 23:28:24 -07:00
Dhoat Harpal
92caad5b2e soc: qcom: glink_smem_native_xprt: Move rx_worker in irq handler
Tx_data cmd is processed in tasklet which is not guranteed to be
scheduled immidiatley. This decreases performance of glink.

Process tx_data command in irq handler.

CRs-Fixed: 2225619
Change-Id: Ida5e51b83fa46c76f72ae886260752baa8b942b9
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
2018-05-08 11:38:18 +05:30
Vijayanand Jitta
d97c09c153 mm: treat indirectly reclaimable memory as free in overcommit logic
Indirectly reclaimable memory can consume a significant part of total
memory and it's actually reclaimable (it will be released under actual
memory pressure).This patch considers it as free in overcommit logic.

This patch is referenced from commit d79f7aa496fc ("mm: treat indirectly
reclaimable memory as free in overcommit logic") on upstream, as node
based vmstat global_node_page_state is not present zone based vmstat
global_page_state is used instead.

Change-Id: I9af71c566c83e24cd12e7653782b1898ccc7d680
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
2018-05-08 11:08:42 +05:30
Sreelakshmi Gownipalli
92c6b2970e diag: Add new Diag IDs
Update to latest diag IDs

Change-Id: I57a25f570484f2cd8255275015ca2c70294a78fb
Signed-off-by: Sreelakshmi Gownipalli <sgownipa@codeaurora.org>
2018-05-07 22:34:07 -07:00
Vijayanand Jitta
1f350f02fc mm: treat indirectly reclaimable memory as available in MemAvailable
Adjust /proc/meminfo MemAvailable calculation by adding the amount of
indirectly reclaimable memory (rounded to the PAGE_SIZE).

This change is referenced from commit 034ebf65c3c2 ("mm: treat indirectly
reclaimable memory as available in MemAvailable") on upstream, as node
based vmstat global_node_page_state is not present, zone based vmstat
global_page_state is used instead.

Change-Id: I7303d0f8ccd5993c7234a5187430d418d49e5763
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
2018-05-08 10:56:53 +05:30
Linux Build Service Account
7a89028866 Merge "irqchip: gic: print correct resume irq name" 2018-05-07 19:23:42 -07:00
Linux Build Service Account
215096ec8e Merge "mm: introduce NR_INDIRECTLY_RECLAIMABLE_BYTES" 2018-05-07 19:23:40 -07:00
Linux Build Service Account
f79ef2334a Merge "taskstats: fix the length of cgroupstats_cmd_get_policy" 2018-05-07 19:23:37 -07:00
Song Gao
732bd7b936 defconfig: msm: add bluetooth related defconfigs for gvm
Currently, bluetooth are not enabled in gvm. It depends
on bluetooth power and rfkill related deconfigs.

Add these deconfigs to enable bluetooth in gvm.

Change-Id: Ib4b8d07e183852e77b02722584e5467127e68879
Signed-off-by: Song Gao <songg@codeaurora.org>
2018-05-07 19:18:17 -07:00
Song Gao
acf4a13cc4 ARM: dts: msm: add bluetooth chip device node for gvm
Currently, bluetooth chip reset function can not be
controlled through BT_EN gpio pin.

Add bluetooth chip device node along with bt-reset-gpio
to make this function workable.

Change-Id: I8cb9a274f4d5991587a299693d00609128742395
Signed-off-by: Song Gao <songg@codeaurora.org>
2018-05-07 19:18:14 -07:00
Linux Build Service Account
463cf73368 Merge "ARM: dts: msm: update mem region on msm8996 auto boards" 2018-05-07 10:03:55 -07:00
Linux Build Service Account
371512066a Merge "Android.bp: Initial header export bp for Android (qseecom only)" 2018-05-07 00:58:54 -07:00
Roman Gushchin
7e22f75445 mm: introduce NR_INDIRECTLY_RECLAIMABLE_BYTES
Patch series "indirectly reclaimable memory", v2.

This patchset introduces the concept of indirectly reclaimable memory
and applies it to fix the issue of when a big number of dentries with
external names can significantly affect the MemAvailable value.

This patch (of 3):

Introduce a concept of indirectly reclaimable memory and adds the
corresponding memory counter and /proc/vmstat item.

Indirectly reclaimable memory is any sort of memory, used by the kernel
(except of reclaimable slabs), which is actually reclaimable, i.e.  will
be released under memory pressure.

The counter is in bytes, as it's not always possible to count such
objects in pages.  The name contains BYTES by analogy to
NR_KERNEL_STACK_KB.

Link: http://lkml.kernel.org/r/20180305133743.12746-2-guro@fb.com
Signed-off-by: Roman Gushchin <guro@fb.com>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Mel Gorman <mgorman@techsingularity.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Git-Commit: eb59254608bc1d42c4c6afdcdce9c0d3ce02b318
Git-Repo: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
Change-Id: Ie15abc33dcb13091e3acfa04dd55c664e1a24e70
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
2018-05-07 10:44:31 +05:30
Linux Build Service Account
b4728dbe0e Merge "ASoC: msm: qdsp6v2 : Add AFE port validation for MULTICHAN_HDMI_RX" 2018-05-06 02:07:12 -07:00
Linux Build Service Account
86d96481ed Merge "ASoC: sdm660_cdc: Fix pop after PDR on SDM660 internal codec" 2018-05-06 02:07:11 -07:00
Linux Build Service Account
fb913f564f Merge "ASoC: msm: add TDM routing for DTMF driver and dtmf fe dai to apq8096" 2018-05-06 02:07:10 -07:00
Linux Build Service Account
5c49e73d6d Merge "ASoC: msm: qdsp6v2: enable DMA channel control" 2018-05-06 02:07:09 -07:00
Linux Build Service Account
6830cc910e Merge "ARM: dts: msm: enable sensor node on msm8996 and apq8096" 2018-05-06 02:07:07 -07:00
Guchun Chen
c96659a88a drm: msm: improve early splash mechanism
Early RVC will keep running even if all display's splash
in bootloader are stopped. So kernel splash handoff
mechanism needs to be modified to match the scenario.

CRs-Fixed: 2225630
Change-Id: I0e00403f6cae0401ea23465f78cf092abfa2a611
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
2018-05-05 20:09:00 +08:00
Guchun Chen
6fb8f903df drm: msm: read SDE registers for splash case
Read sde registers like layer mixer and ctrl information
from bootloader when early splash is enabled in bootloader.
These information will be updated to kernel resource
manager to let bootloader and kernel use the same hardware
setting.

CRs-Fixed: 2225630
Change-Id: I0e971de1992b380e30933f476b1a7e185ce0ad96
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
Signed-off-by: Camus Wong <camusw@codeaurora.org>
2018-05-05 19:01:48 +08:00
Guchun Chen
06af1c706e drm: msm: hw ctl needs to care reserved pipe
When kernel operates hw ctls, early RVC in bootloader
can also co-exist to update hardware registers. So it's
needed to care the reserved pipe by early RVC before
kernel starts to handle ctl setup.

CRs-Fixed: 2225630
Change-Id: I2df06350a44bd128dfb89cc0668c41d2edfb26a6
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
2018-05-05 18:54:34 +08:00
Ajay Agarwal
7b2dab0613 Revert "sound: usb: Update QMI indication message"
This reverts commit 97097e7616.

Remote QMI client does not require controller number. Delete the
support from uaudio_disconnect_cb() to send usb core id. Also
remove USB_AUDIO_DEVICE_SPEED_SUPER_PLUS_V01 from speed enum.

Change-Id: Ie000a0497d714eab361a8c30d68289e2f5c884e8
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
2018-05-05 09:33:29 +05:30
David Ng
1a0aae2861 Android.bp: Initial header export bp for Android (qseecom only)
Initial Android blueprint makefile for kernel header export;
qseecom.h UAPI for now.

Change-Id: Ia0af480167e19d099789548a2229b46abbd977f8
Signed-off-by: David Ng <dave@codeaurora.org>
2018-05-04 19:50:40 -07:00
Guchun Chen
1c11027786 ARM: dts: msm: update mem region on msm8996 auto boards
Due to early RVC will continue running during the whole device
bootup period, so RVC's reserved memory should be updated to
contiguous-region to avoid smmu fault.

CRs-Fixed: 2225630
Change-Id: I5d1510f4e9079f6ddd5630b0b736d0d49bc0992b
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
2018-05-05 09:42:53 +08:00
Guchun Chen
62017b91a1 ARM: dts: msm: add reserved plane node on msm8996 auto boards
Early RVC will enable vig0 layer if it's on in bootloader. So to
meet the purpose LK and kernel can access display hardware at the
same time, this pipe should be reserved in LK and set to not available
to others before RVC exits.

CRs-Fixed: 2225630
Change-Id: I1398db5750c01523e4b755fb4744a6fc976ee8da
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
2018-05-05 09:35:56 +08:00
Linux Build Service Account
bf3bda0f81 Merge "drm/msm/hdmi: partial revert for hdmi->power_on changes" 2018-05-04 16:11:21 -07:00
Linux Build Service Account
6b0ad7611a Merge "ARM: dts: msm: Enable 802.11ad wifi device on msm8996 platform" 2018-05-03 19:58:45 -07:00
WANG Cong
dd25b013ce ipvs: use IPVS_CMD_ATTR_MAX for family.maxattr
family.maxattr is the max index for policy[], the size of
ops[] is determined with ARRAY_SIZE().

Reported-by: Andrey Konovalov <andreyknvl@google.com>
Tested-by: Andrey Konovalov <andreyknvl@google.com>
Cc: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Git-commit: 8fbfef7f505bba60fb57078b7621270ee57cd1c4
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Change-Id: I4a8cff16935c6b7edb3f4fa86faddd8258b0ef57
CRs-Fixed: 2236015
Signed-off-by: Jeff Johnson <jjohnson@codeaurora.org>
2018-05-03 16:31:19 -07:00
Timothy Sham
a98fd17446 ASoC: msm: add TDM routing for DTMF driver and dtmf fe dai to apq8096
Added DTMF mixer routing for QUAT_TDM_RX2 for automotive. Also added
the DTMF front-end dai to apq8096 driver.

Change-Id: I3652efd939774ff8cb7c40445747f0edbf6b3c7f
Signed-off-by: Timothy Sham <tsham@codeaurora.org>
2018-05-03 18:05:49 -04:00
WANG Cong
28307e7f24 taskstats: fix the length of cgroupstats_cmd_get_policy
cgroupstats_cmd_get_policy is [CGROUPSTATS_CMD_ATTR_MAX+1],
taskstats_cmd_get_policy[TASKSTATS_CMD_ATTR_MAX+1],
but their family.maxattr is TASKSTATS_CMD_ATTR_MAX.
CGROUPSTATS_CMD_ATTR_MAX is less than TASKSTATS_CMD_ATTR_MAX,
so we could end up accessing out-of-bound.

Change cgroupstats_cmd_get_policy to TASKSTATS_CMD_ATTR_MAX+1,
this is safe because the rest are initialized to 0's.

Reported-by: Andrey Konovalov <andreyknvl@google.com>
Tested-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Git-commit: 243d52126184b072a18fe2130ce0008f8aa3a340
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Change-Id: Ie03c41de881d8e0e88ba35f5369e4e955d8d8682
CRs-Fixed: 2234354
Signed-off-by: Jeff Johnson <jjohnson@codeaurora.org>
2018-05-03 14:03:24 -07:00
Linux Build Service Account
ea40a6c521 Merge "sched/walt: Fix use after free in trace_sched_update_task_ravg()" 2018-05-03 11:23:20 -07:00
Srinivasarao P
028ce831e8 Merge android-4.4.131 (d5d6526) into msm-4.4
* refs/heads/tmp-d5d6526
  Linux 4.4.131
  serial: mctrl_gpio: Add missing module license
  serial: mctrl_gpio: export mctrl_gpio_disable_ms and mctrl_gpio_init
  x86/smpboot: Don't use mwait_play_dead() on AMD systems
  x86/ipc: Fix x32 version of shmid64_ds and msqid64_ds
  libceph: validate con->state at the top of try_write()
  ASoC: fsl_esai: Fix divisor calculation failure at lower ratio
  ARM: amba: Don't read past the end of sysfs "driver_override" buffer
  ARM: amba: Fix race condition with driver_override
  ARM: amba: Make driver_override output consistent with other buses
  scsi: sd: Defer spinning up drive while SANITIZE is in progress
  kobject: don't use WARN for registration failures
  mtd: cfi: cmdset_0002: Do not allow read/write to suspend erase block.
  mtd: cfi: cmdset_0001: Workaround Micron Erase suspend bug.
  mtd: cfi: cmdset_0001: Do not allow read/write to suspend erase block.
  ALSA: hda/realtek - Add some fixes for ALC233
  ALSA: hda: Hardening for potential Spectre v1
  ALSA: seq: oss: Hardening for potential Spectre v1
  ALSA: seq: oss: Fix unbalanced use lock for synth MIDI device
  ALSA: core: Report audio_tstamp in snd_pcm_sync_ptr
  ALSA: control: Hardening for potential Spectre v1
  ALSA: rme9652: Hardening for potential Spectre v1
  ALSA: hdspm: Hardening for potential Spectre v1
  ALSA: asihpi: Hardening for potential Spectre v1
  ALSA: opl3: Hardening for potential Spectre v1
  tty: Use __GFP_NOFAIL for tty_ldisc_get()
  tty: n_gsm: Fix DLCI handling for ADM mode if debug & 2 is not set
  tty: n_gsm: Fix long delays with control frame timeouts in ADM mode
  tty: Don't call panic() at tty_ldisc_init()
  drm/virtio: fix vq wait_event condition
  virtio_console: free buffers after reset
  virtio: add ability to iterate over vqs
  ALSA: usb-audio: Skip broken EU on Dell dock USB-audio
  USB: Increment wakeup count on remote wakeup.
  usb: core: Add quirk for HP v222w 16GB Mini
  USB: serial: cp210x: add ID for NI USB serial console
  USB: serial: ftdi_sio: use jtag quirk for Arrow USB Blaster
  USB: serial: simple: add libtransistor console
  usbip: vhci_hcd: Fix usb device and sockfd leaks
  usbip: usbip_host: fix to hold parent lock for device_attach() calls
  ext4: fix bitmap position validation
  ext4: add validity checks for bitmap block numbers
  ext4: set h_journal if there is a failure starting a reserved handle
  ext4: prevent right-shifting extents beyond EXT_MAX_BLOCKS
  goldfish: pipe: ANDROID: Allocate memory with GFP_KERNEL.
  goldfish: pipe: ANDROID: Do not crash
  goldfish: pipe: ANDROID: remove redundant casting
  goldfish: pipe: ANDROID: Add 'pipe' to pipe functions
  goldfish: pipe: ANDROID: fix whitespace
  goldfish: pipe: ANDROID: rename global variables
  goldfish: pipe: ANDROID: remove a redundant target
  goldfish: pipe: ANDROID: add blank lines
  goldfish: pipe: ANDROID: replace 'BUG_ON' with 'BUILD_BUG_ON'
  goldfish: pipe: ANDROID: use the 'BIT' macro for wakeup flags
  goldfish: pipe: ANDROID: fix logging format strings
  Linux 4.4.130
  s390/uprobes: implement arch_uretprobe_is_alive()
  s390/cio: update chpid descriptor after resource accessibility event
  cdrom: information leak in cdrom_ioctl_media_changed()
  scsi: mptsas: Disable WRITE SAME
  ipv6: add RTA_TABLE and RTA_PREFSRC to rtm_ipv6_policy
  net: af_packet: fix race in PACKET_{R|T}X_RING
  tcp: md5: reject TCP_MD5SIG or TCP_MD5SIG_EXT on established sockets
  net: fix deadlock while clearing neighbor proxy table
  tipc: add policy for TIPC_NLA_NET_ADDR
  llc: fix NULL pointer deref for SOCK_ZAPPED
  llc: hold llc_sap before release_sock()
  sctp: do not check port in sctp_inet6_cmp_addr
  vlan: Fix reading memory beyond skb->tail in skb_vlan_tagged_multi
  pppoe: check sockaddr length in pppoe_connect()
  packet: fix bitfield update race
  team: fix netconsole setup over team
  team: avoid adding twice the same option to the event list
  tcp: don't read out-of-bounds opsize
  llc: delete timers synchronously in llc_sk_free()
  net: validate attribute sizes in neigh_dump_table()
  l2tp: check sockaddr length in pppol2tp_connect()
  KEYS: DNS: limit the length of option strings
  bonding: do not set slave_dev npinfo before slave_enable_netpoll in bond_enslave
  s390: correct module section names for expoline code revert
  s390: correct nospec auto detection init order
  s390: add sysfs attributes for spectre
  s390: report spectre mitigation via syslog
  s390: add automatic detection of the spectre defense
  s390: move nobp parameter functions to nospec-branch.c
  s390/entry.S: fix spurious zeroing of r0
  s390: do not bypass BPENTER for interrupt system calls
  s390: Replace IS_ENABLED(EXPOLINE_*) with IS_ENABLED(CONFIG_EXPOLINE_*)
  s390: introduce execute-trampolines for branches
  s390: run user space and KVM guests with modified branch prediction
  s390: add options to change branch prediction behaviour for the kernel
  s390/alternative: use a copy of the facility bit mask
  s390: add optimized array_index_mask_nospec
  s390: scrub registers on kernel entry and KVM exit
  KVM: s390: wire up bpb feature
  s390: enable CPU alternatives unconditionally
  s390: introduce CPU alternatives
  Revert "ath10k: send (re)assoc peer command when NSS changed"
  jbd2: fix use after free in kjournald2()
  ath9k_hw: check if the chip failed to wake up
  Input: drv260x - fix initializing overdrive voltage
  r8152: add Linksys USB3GIGV1 id
  staging: ion : Donnot wakeup kswapd in ion system alloc
  perf: Return proper values for user stack errors
  x86/tsc: Prevent 32bit truncation in calc_hpet_ref()
  cifs: do not allow creating sockets except with SMB1 posix exensions
  UPSTREAM: tracing: always define trace_{irq,preempt}_{enable_disable}
  ANDROID: staging: ion: Obey kptr_restrict
  ANDROID: sdcardfs: Set s_root to NULL after putting
  ANDROID: sdcardfs: d_make_root calls iput
  ANDROID: sdcardfs: Check for private data earlier

Conflicts:
	drivers/staging/android/ion/ion.c
	drivers/staging/android/ion/ion_cma_heap.c
	drivers/staging/android/ion/ion_system_heap.c

Change-Id: I8155103b3787bb800f85291cc7378a8e29a8436f
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2018-05-03 15:53:14 +05:30
Linux Build Service Account
cebf59e494 Merge "msm: ais: isp: Handling buffer use after getting it freed" 2018-05-03 02:07:35 -07:00
Linux Build Service Account
3fe5a8a331 Merge "gpio: No NULL owner" 2018-05-03 02:07:33 -07:00
Linux Build Service Account
58f82482c4 Merge "defconfig: Enable preemptirq tracing for msm8998 and sdm660" 2018-05-03 02:07:28 -07:00
Maulik Shah
4db937ed03 irqchip: gic: print correct resume irq name
Currently hwirq number is used to get descriptor for irq
in gic_show_resume_irq function which returns incorrect
irq descriptor.

Update it to use correct irq number using irq_find_mapping.

Change-Id: Ib61ebcb3d5e520566b157ee5781d11b70d0f513d
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2018-05-03 15:50:55 +08:00
Gerrit - the friendly Code Review server
6abf20ea97 Merge changes into msm-4.4 2018-05-03 00:33:44 -07:00
Abhijeet Dharmapurikar
de3078c3bf msm: show_resume_irq: print the irq name
Just printing the irq number is not informative. Update the code
to show the name of the interrupt's irq action.

Change-Id: Ia3e7d37948860b23d4390808769cd198656eba48
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2018-05-03 15:15:38 +08:00
Abhijeet Dharmapurikar
391e49f093 GIC: Show interrupts that triggered wakeup
This change is to satisfy the logging requirement of
wakeup interrupts. Add code to log the trigger status
of wakeup interrupts. This helps in debugging
the cause of wakeup when the system is suspended

Change-Id: I0f724296f9133433cdbc3271a9b91c6fa992a2ff
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2018-05-03 14:54:03 +08:00
Abhijeet Dharmapurikar
76330c4c30 GIC: implement suspend and resume
While in suspend state, the system should not wake up due to triggering
of a non wakeup interrupt. Implement suspend and resume functions to be
called from power management code to switch enabled interrupts between
wakeup set or normal set.

Change-Id: Iaceae286707460eadc5f05c0baef72b43c942777
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2018-05-03 14:19:34 +08:00
Zhaoyang Liu
d1271b24c9 ARM: dts: msm: Enable 802.11ad wifi device on msm8996 platform
Enable IEEE802.11AD WiFi device wil6210.
Change wil6210 PCIe parent for MSM8996 platform.

Change-Id: I58919c766c0e6f0090d309492de1ecf12718824d
Signed-off-by: Zhaoyang Liu <zhaoyang@codeaurora.org>
2018-05-03 12:52:36 +08:00
Pavankumar Kondeti
c6a5b958e6 sched/walt: Fix use after free in trace_sched_update_task_ravg()
commit 4d09122c1868 ("sched: Fix spinlock recursion in sched_exit()")
moved freeing of task's current and previous window arrays outside
the rq->lock. These arrays can be accessed from another CPU in parallel
and end up using freed memory. For example,

CPU#0                                 CPU#1
----------------------------------    -------------------------------
sched_exit()                          try_to_wake_up()--> The task wakes
                                                          up on CPU#0
 task_rq_lock()                        set_task_cpu()
                                        fixup_busy_time() --> waiting for
					                  CPU#0's rq->lock

 task_rq_unlock()                       fixup_busy_time()-->lock acquired
 free_task_load_ptrs()
  kfree(p->ravg.curr_window_cpu)         update_task_ravg()-->called on
                                                          current of CPU#0
					  trace_sched_update_task_ravg()
					          --> access freed memory
  p->ravg.curr_window_cpu = NULL;

To fix this issue, window array pointers must be set to NULL before
freeing the memory. Since this happens outside the lock, memory barriers
are needed on write and read paths. A much simpler alternative would be
skipping update_task_ravg() trace point for tasks that are marked as dead.
The window stats of dead tasks are not updated any ways. While at it, skip
this trace point for newly created tasks for which also window stats are
not updated.

Change-Id: I4d7cb8a3cf7cf84270b09721140d35205643b7ab
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
[spathi@codeaurora.org: moved changes to hmp.c since EAS is not supported]
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2018-05-02 21:46:48 -07:00
Linus Walleij
e29ce8dc74 gpio: No NULL owner
Sometimes a GPIO is fetched with NULL as parent device, and
that is just fine. So under these circumstances, avoid using
dev_name() to provide a name for the GPIO line.

Change-Id: Iacf2ef35d50118cd755e26ed4211c3c4b1289ff2
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Git-commit: 7d18f0a14aa6a0d6bad39111c1fb655f07f71d59
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2018-05-02 21:42:17 -07:00
Linux Build Service Account
9da06237e8 Merge "Merge android-4.4.129 (b1c4836) into msm-4.4" 2018-05-02 13:38:40 -07:00