Commit graph

903,725 commits

Author SHA1 Message Date
qctecmdr
573b7aef75 Merge "pci: pci-msm: Prevent double free of default state" 2021-07-30 18:12:03 -07:00
Elson Roy Serrao
9c408df3a4 defconfig: Enable F_CCID driver on sdxlemur
Enable f_ccid driver to facilitate ccid functionality
on sdxlemur.

Change-Id: I68cc548406d2f7625bce2d8611b0dea20b4f6a6d
Signed-off-by: Elson Roy Serrao <eserrao@codeaurora.org>
2021-07-30 10:26:55 -07:00
Sriharsha Allenki
4ad136961a pci: pci-msm: Prevent double free of default state
In the case of a linkdown during pm_suspend, the
pci_saved_state during enumeration(default_state) is
used to restore config space. But this state is freed up
during pm_resume as part of pm_load_and_free_saved_state.

And if this state (default_state) is used again in case
of another linkdown, this leads to use after free.
Fix this by using a copy of the default_state instead
of the original copy for restoring config space incase
of a linkdown.

Change-Id: I6ac763ed88341c739f0b26992d1e31bf2513fdab
Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
2021-07-30 09:32:12 -07:00
qctecmdr
0faa021f71 Merge "clk: qcom: debugcc: Add measure only support for QDSS clocks" 2021-07-30 08:51:15 -07:00
qctecmdr
665802b42e Merge "clk: qcom: debugcc: Add measure only support for QDSS clocks" 2021-07-30 08:51:13 -07:00
Vijayanand Jitta
c6efde4313 mm: vmalloc: prevent use after free in _vm_unmap_aliases
A potential use after free can occur in _vm_unmap_aliases where an already
freed vmap_area could be accessed, Consider the following scenario:

Process 1						Process 2

__vm_unmap_aliases					__vm_unmap_aliases
	purge_fragmented_blocks_allcpus				rcu_read_lock()
		rcu_read_lock()
			list_del_rcu(&vb->free_list)
									list_for_each_entry_rcu(vb .. )
	__purge_vmap_area_lazy
		kmem_cache_free(va)
										va_start = vb->va->va_start

Here Process 1 is in purge path and it does list_del_rcu on vmap_block and
later frees the vmap_area, since Process 2 was holding the rcu lock at
this time vmap_block will still be present in and Process 2 accesse it and
thereby it tries to access vmap_area of that vmap_block which was already
freed by Process 1 and this results in use after free.

Fix this by adding a check for vb->dirty before accessing vmap_area
structure since vb->dirty will be set to VMAP_BBMAP_BITS in purge path
checking for this will prevent the use after free.

Change-Id: Ibba0e2ee0d0f049aa0158b78b086aeaad6b70f68
Link: https://lkml.kernel.org/r/1616062105-23263-1-git-send-email-vjitta@codeaurora.org
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
Git-Commit: ad216c0316ad6391d90f4de0a7f59396b2925a06
Git-Repo: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Reviewed-by: Uladzislau Rezki (Sony) <urezki@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-07-29 20:47:17 -07:00
Madhuri Medasani
4c695f9809 clk: qcom: debugcc: Add measure only support for QDSS clocks
Add measure only support for QDSS related GCC clocks for
YUPIK.

Change-Id: Ia27282433a63d21929cad3bd8098cc91df445db8
Signed-off-by: Madhuri Medasani <mmedasan@codeaurora.org>
2021-07-29 20:33:52 -07:00
Madhuri Medasani
487b036248 clk: qcom: debugcc: Add measure only support for QDSS clocks
Add measure only support for QDSS related GCC clocks for
SHIMA.

Change-Id: I8aac50323865f71cc44461abb45a8ae97e75c314
Signed-off-by: Madhuri Medasani <mmedasan@codeaurora.org>
2021-07-29 20:33:22 -07:00
qctecmdr
a17b7c30c8 Merge "msm: kgsl: Add fallback condition for atomic snapshot" 2021-07-29 16:01:00 -07:00
Roman Kiryanov
ae78026f42 ANDROID: Update android/abi_gki_aarch64.xml
required to add new modules to goldfish.

Leaf changes summary: 5 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 4 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added variable

4 Added functions:

  [A] 'function void iov_iter_kvec(iov_iter*, unsigned int, const kvec*, unsigned long int, size_t)'
  [A] 'function int kernel_sock_shutdown(socket*, sock_shutdown_cmd)'
  [A] 'function int sock_recvmsg(socket*, msghdr*, int)'
  [A] 'function socket* sockfd_lookup(int, int*)'

1 Added variable:

  [A] 'device platform_bus'

Bug: 194952533
Signed-off-by: Roman Kiryanov <rkir@google.com>
Change-Id: I39dfbffbd54cb59a33222ad2bebebdd70f1c74f1
2021-07-29 13:54:47 -07:00
Roman Kiryanov
a6b9410e5f ANDROID: Update android/abi_gki_aarch64_goldfish
required to add new modules.

BUILD_CONFIG=common-modules/virtual-device/build.config.goldfish.aarch64 build/build_abi.sh --update-symbol-list

Bug: 194952533
Change-Id: Ibd0ca4aba81f7de96a82eade42840c0ed173f8ae
Signed-off-by: Roman Kiryanov <rkir@google.com>
2021-07-29 12:18:28 -07:00
qctecmdr
3f963214ec Merge "net: qrtr: Move boot KPI to sysnode" 2021-07-29 05:47:04 -07:00
qctecmdr
7d40d258c3 Merge "msm: pcie : Notify client driver on reading FF's" 2021-07-29 01:51:17 -07:00
qctecmdr
64c318f67b Merge "clk: qcom: debugcc: Update the gcc_qup clocks of PM8008 to measure only" 2021-07-29 01:51:17 -07:00
Madhab Sharma
a6da29f8ed net: qrtr: Move boot KPI to sysnode
Moving boot KPI to sysnode by using “place_marker".

Change-Id: I0680584b23a63e4f185cf68c118e696ac956dd2e
Signed-off-by: Madhab Sharma <madhshar@codeaurora.org>
2021-07-29 01:35:20 -07:00
qctecmdr
1024a5df27 Merge "usb: dwc3: Dont release wakeup source during usb restart" 2021-07-28 21:43:42 -07:00
Madhuri Medasani
1990178de1 clk: qcom: debugcc: Update the gcc_qup clocks of PM8008 to measure only
Update gcc_qup clocks of pm8008 to measure only
since these are not registered in GCC to avoid
the crash because of parent index in BLAIR.

Change-Id: Ia9d19b95331a43eab3c229405218e5871c073be1
Signed-off-by: Madhuri Medasani <mmedasan@codeaurora.org>
2021-07-28 20:50:57 -07:00
qctecmdr
fd87c199ce Merge "kernel: msm-5.4: Add Kconfig option for IOSS Shim layer" 2021-07-28 13:53:55 -07:00
qctecmdr
094bac2b7c Merge "defconfig: sdxlemur: Enable QPS615_ioss module" 2021-07-28 13:53:55 -07:00
qctecmdr
caba42fdbd Merge "msm: mhi_dev: Defer mhi resume till M0 ack is sent" 2021-07-28 13:53:54 -07:00
Elson Roy Serrao
980a25b5c2 usb: dwc3: Dont release wakeup source during usb restart
When changing USB speed via sysfs, the device might utilize the
idle time between DISCONNECT and CONNECT events and enter suspend.
As a result the pending CONNECT might get delayed thus pushing USB
enumeration during the next resume. Avoid this by not releasing the
wakeup source when usb restart is in progress.

Change-Id: I754b76eb7b36923a2dcd4d58587101750d1cd83c
Signed-off-by: Elson Roy Serrao <eserrao@codeaurora.org>
2021-07-28 13:24:30 -07:00
qctecmdr
d42e52d6ba Merge "usb: f_qdss: Flush connect_work in qdss close" 2021-07-28 03:57:03 -07:00
Veerabhadrarao Badiganti
9d1744bde8 msm: mhi_dev: Defer mhi resume till M0 ack is sent
Defer mhi resume till M0 ack is notified to host.
This is to ensure no outstanding transfer completion events are
send to host before M0 ack.

Change-Id: Ia10fabc554b1cdef14a0771012b9ffea68851e25
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2021-07-27 21:51:36 -07:00
qctecmdr
fffc7785e6 Merge "msm: ep_pcie: Correct clkreq override value" 2021-07-27 09:39:52 -07:00
qctecmdr
bf25f30620 Merge "msm: ep_pcie: Allow L1 states while switching back to D0 from D3hot" 2021-07-27 09:39:52 -07:00
Elson Roy Serrao
4aba93633a usb: f_qdss: Flush connect_work in qdss close
When qdss open and close are called back to back at a high rate,
connect_work that gets queued in qdss open can execute after
qdss close. For qdss HW path the connect work that gets scheduled
as part of the next qdss open results in ep config failure as the
ep is already configured during previous connect work. Now before
queuing the request if there is a qdss close it would reset the dbm
ep configuration thus routing this request via software path instead
of dbm path. The subsequent dequeue would lead to a NULL pointer
dereference of completion callback. Fix this by flushing connect_work
as part of qdss close for graceful termination.

Change-Id: I8edf73ea1f87e297297828e6e25c7c14a422ec3a
Signed-off-by: Elson Roy Serrao <eserrao@codeaurora.org>
2021-07-27 09:34:57 -07:00
Hareesh Gundu
890c1cf450 msm: kgsl: Dump cx regulator consumer list in case disable timeouts
We would see the GPU recovery failure (or) GPU wake up problems
incase cx regulator disable wait timeouts. It’s important to dump
the cx regulator consumer list to understand the failures in case
of cx regulator disable wait timeouts.

Change-Id: I7bfca3d64dafae44645ae0651bf07580d7530829
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2021-07-27 20:58:00 +05:30
Siva Kumar Akkireddi
821b9fac95 msm: ep_pcie: Correct clkreq override value
Use unshifted value to set the clock req override value
and enable fields as the register write function already
shifts the values to the correct position.

Change-Id: I0b5dea0f6f8462363471910ffe93f8f8975e7929
Signed-off-by: Siva Kumar Akkireddi <sivaa@codeaurora.org>
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2021-07-27 07:13:39 -07:00
Veerabhadrarao Badiganti
79f29bc3c1 msm: ep_pcie: Allow L1 states while switching back to D0 from D3hot
During D3hot, we are explicitly blocking L1 state by setting
REQ_EXIT_L1 bit of PM_CTRL register. If we transitioning back to D0
from D3 (without D3cold), REQ_EXIT_L1 bit won't get cleared. And
L1 would get blocked till next D3cold. Clear this explicitly during
D0 to avoid this scenario.

Change-Id: Ib168dee255f29832600ebca14eea1ac2ea393985
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2021-07-27 07:09:07 -07:00
qctecmdr
2be0043e65 Merge "clk: qcom: dispcc-blair: Allow config of cdivs for byte clk" 2021-07-27 05:37:20 -07:00
BIVASH KUMAR SINGH
8493c5affb clk: qcom: dispcc-blair: Allow config of cdivs for byte clk
Change the clk_regmap_div_ro ops to clk_regmap_div ops to
allow dynamic configuration of the cdivs. This is required
for cphy configuration where the byte intf clock need to be
the same frequency as its byte clock.

Change-Id: Iddf733697b7287577f690bd5535a60f406b7129a
Signed-off-by: BIVASH KUMAR SINGH <bkumarsi@codeaurora.org>
2021-07-27 02:04:14 -07:00
Tapas Dey
30e5a66dad NFC: Fix NULL pointer dereference issue
Modify code and add proper NULL check to avoid
NULL pointer dereference.

Change-Id: I09c6a74b653b12e60c48fc5f63cca9148e117ee9
Signed-off-by: Tapas Dey <tdey@codeaurora.org>
2021-07-26 21:55:53 -07:00
Zelong Ren
9165264469 soc: qcom: hab: Updating return value for function attributed to kobject
Updating the return value of vchan_store, ctx_store, expimp_show
functions to return an integer count.

Submit code on behalf of Yashovardhan Bhatt.

Change-Id: I5c1ec7ed7add2471ed5809a9bb359d0b02792486
Signed-off-by: Zelong Ren <zeloren@codeaurora.org>
2021-07-26 20:49:12 -07:00
Yuanfang Zhang
5bbfc7877b coresight-tmc-etr: remove mem_lock when call usb_qdss_close
This mem_lock will cause deadlock when usb close router call back to
usb_notifier. so remove it.

Change-Id: I9530c843702ca605f6935cc0ac6d9649bf204594
Signed-off-by: Yuanfang Zhang <zhangyuanfang@codeaurora.org>
2021-07-26 19:21:48 -07:00
Manuel Gomez
e32fd61577 defconfig: sdxlemur: Enable QPS615_ioss module
The dlkm will be called qps615_ioss.ko

Change-Id: Ib3bc94482278eee6e8ac3e0b2f8182221702159d
Signed-off-by: Manuel Gomez <gomez@codeaurora.org>
2021-07-26 17:39:14 -07:00
Manuel Gomez
c017185306 kernel: msm-5.4: Add Kconfig option for IOSS Shim layer
Allow IOSS Shim layer to be dynamically loaded as a kernel module.

Change-Id: Iac293adfb29954b12253b1ee08f64077606091cc
Signed-off-by: Manuel Gomez <gomez@codeaurora.org>
2021-07-26 14:00:44 -07:00
qctecmdr
9f842b7a49 Merge "msm: kgsl: Initialize cb_num for secure context" 2021-07-26 09:06:05 -07:00
qctecmdr
b24468ce1b Merge "drivers: rpmh: Always bug_on() upon timeout in rpmh_write_batch()" 2021-07-26 09:06:04 -07:00
Vivek Pernamitta
477b8978ef msm: pcie : Notify client driver on reading FF's
Disable access to PCIE config space registers and notify client
driver to recover link on reading PCIE endpoint config registers
as FF's.

Change-Id: Iea6b25036bc6d967d6598d08348bb41fc18ef304
Signed-off-by: Vivek Pernamitta <vpernami@codeaurora.org>
2021-07-26 04:57:59 -07:00
Harshitha Sai Neelati
ded39f3537 msm: kgsl: Initialize cb_num for secure context
Currently we are not initializing cb_num for secure context.
This is causing problems in the kgsl fault handler path when
there is a pagefault for secure context. Hence initialize cb_num
for secure context.

Change-Id: I35a37193f512f315f443e9f0d92fdae11411bbd2
Signed-off-by: Harshitha Sai Neelati <hsaineel@codeaurora.org>
2021-07-26 14:40:47 +05:30
Maulik Shah
af4be8e107 drivers: rpmh: Always bug_on() upon timeout in rpmh_write_batch()
rpmh_rsc_debug() can race with tcs_tx_done() interrupt handler and
may not see any tcs busy and hence won't do bug_on(). Later it may
go ahead and free() the request which interrupt handler is processing.

Lets always bug_on() upon timeout.

Change-Id: I238a6a3639077850df158cb1f0190656e014bb57
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2021-07-26 01:19:33 -07:00
qctecmdr
4028cd304e Merge "mmc: core: Fix mmc sleep/awake functionality" 2021-07-25 22:10:10 -07:00
Naman Padhiar
d915a46562 icnss2: Add check for max thermal state
Add check for maximum thermal state while setting
current state.

Change-Id: I4ade853d0cda1d8754486dc6dd8f53596fae7a9a
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
2021-07-23 03:44:32 -07:00
Rohan Sethi
8b09efecfd msm: kgsl: Add fallback condition for atomic snapshot
There is possibility of failure in getting large memory
during panic notifier callback. Hence try atomic snapshot
with 1MB in case default memory allocation fails.

Change-Id: I8f5ff29139d272dc35094c230e1868623585b476
Signed-off-by: Rohan Sethi <rohsethi@codeaurora.org>
2021-07-23 13:28:59 +05:30
qctecmdr
879de41f37 Merge "serial: msm_geni_serial: Bailout from wait_for_transfers_inflight" 2021-07-22 09:36:34 -07:00
qctecmdr
5091ce2063 Merge "tz_log: update TZ version for enlarged buf" 2021-07-22 09:36:33 -07:00
qctecmdr
bb1eae380d Merge "ANDROID: gki_config: disable per-cgroup pressure tracking" 2021-07-22 03:24:20 -07:00
qctecmdr
c67017ec6f Merge "mmc: sdhci-msm: Adding delay of 200us after deassert" 2021-07-22 03:24:19 -07:00
Chandana Kishori Chiluveru
c4314b02d9 serial: msm_geni_serial: Bailout from wait_for_transfers_inflight
This change is to avoid potential race btw stop rx and incoming
SOC RX data in parallel. During suspend path wait_for_transfers_inflight()
logic will check for TX/RX data pending for completion. Check for RX_LEN_IN
status in wait_for_transfers_inflight() and return -EBUSY to avoid race
between stop_rx and SOC RX data.

Change-Id: I28702d3dc11ee4b6d3fe5b4bad9a19099d8cf725
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
2021-07-21 22:37:32 -07:00
Nathan Chancellor
240f2f8f42
ANDROID: generate_initcall_order.pl: Use two dash long options for llvm-nm
Commit 96e9bc424475 ("[llvm-nm] Remove one-dash long options except
-arch") in LLVM removed the one dash long options, which causes this
script to fail and initcalls not to get ordered properly, which
manifests as kernels crashing durin boot.

Use the two dash long options as the LLVM commit mentions that the
documentation and help text have always shown them over the one dash
long versions. This is not an issue with the mainline LTO series as it
used two dash long options.

Change-Id: Iaef9f96af1d75b54eabc4bba38d2a3a58c3c2209
Fixes: 93185a915514 ("ANDROID: init: ensure initcall ordering with LTO")
Link: 96e9bc4244
Link: https://github.com/ClangBuiltLinux/continuous-integration2/runs/3129736977?check_suite_focus=true
Link: https://github.com/ClangBuiltLinux/continuous-integration2/runs/3129775494?check_suite_focus=true
Link: https://github.com/ClangBuiltLinux/continuous-integration2/runs/3129863440?check_suite_focus=true
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
2021-07-21 20:41:37 -07:00