d2: wifi: pass ipv6 in suspend

fixes no notifications on ip6 networks

Change-Id: Ic2b93d67eba92be90a9b403f27d5a0ab97446cf9
d2: turn on IPC Router Security and IPC Logging

Logcat---
Fixes I/irsc_util(  189): irsc_feed_config: Security config ioctl failed

and

dmesg---
msm_ipc_router_init: Unable to create IPC logging for IPC RTR
msm_ipc_router_ipc_log_init: Unable to create IPC logging for Req/Resp
msm_ipc_router_ipc_log_init: Unable to create IPC logging for Indications
bam_dmux_init : unable to create IPC Logging Context

Change-Id: Ice7e27a5daf6700c51fd739fb9ca450c34612dc4
Merge "d2: wifi: pass ipv6 in suspend" into cm-11.0
Merge "d2: turn on IPC Router Security and IPC Logging" into cm-11.0
bluetooth: update bluetooth-power platform data

Update bluetooth power driver to support both device tree and
board specific platform data to power on bluetooth chipset.

Current driver supports only gpio data from the device node.
Now the driver first checks for device tree node and if it
does not exist then checks for the platform data from the
board file.

Updated the platform data for the driver to provide all the
required vregs and gpio data to power on the bluetooth
chipset.

Change-Id: Ie71115ad7173fc527e46b334a8b548762b40aa46
Signed-off-by: Ram Mohan Korukonda <rkorukon@codeaurora.org>
Signed-off-by: Sungjun Park <sjpark@codeaurora.org>
msm_rmnet: Fix potential memory corruption

Usage of legacy string manipulation function sprintf could lead to
memory corruption as the number of bytes to be written to the
destination is not bounded. Replace sprintf with snprintf where the
number of bytes to be written is explicitly specified.

CRs-fixed: 672202
Change-Id: I1788d655f048124c6b7cccee4345d8239743ada8
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
msm_rmnet_sdio: Fix potential memory corruption

Usage of legacy string manipulation function sprintf could lead to
memory corruption as the number of bytes to be written to the
destination is not bounded. Replace sprintf with snprintf where the
number of bytes to be written is explicitly specified.

CRs-fixed: 672202
Change-Id: Ic26bea1ddf9570a4970fc8c4373b066aa385e427
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
msm: msm_bus: Fix memory leak during RPM transaction

This is a serious bug that eventually cripples the system due to
lost memory.

CRs-Fixed: 442381
Change-Id: If4d33b35475a33b1602a1d923031345b47af963e
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
Signed-off-by: Sana Venkat Raju <c_vsana@codeaurora.org>
cfg80211: unblock user hint when cfg80211_regdom is intersected

If the driver is loaded when cfg80211_regdom is intersected then
user hint will fail for the first time since cfg80211 does not
have a check to see if cfg80211_regdom is intersected. Add
a check to see if cf80211_regdom is intersected and allow the
user hint to be processed.

Change-Id: Iba9cdd32470e29d35d3bb35012eb404b7c78d601
CRs-Fixed: 639538
Signed-off-by: Mihir Shete <smihir@codeaurora.org>
msm_fb: display: reference count base pipe free in dsi and lcdc

During dsi off or lcdc off, base pipe could be freeed if fb device is
closed. Since base pipe allocation and free are managed through
reference counting api functions, so those free functions api should
be called.

Change-Id: I210716a590cde87ee254184a42d9df38c8012ff6
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
media: dvb: check filter is valid for fullness callback

In PULL mode, all relevant filters' buffer space is checked
to ensure sufficient space or otherwise blocking untill it
becomes available. As callback might sleep it is called without
holding any locks. So at this time, just before the callback executes,
the filter might have been closed by a different thread.
To prevent invalid access, verify in the callback that filter is still
valid.

Change-Id: Ie07ac5d17942ef39d12e4eed3078e382c956fe2e
Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
msm_fb: display: turn off lcdc timing generator when splash is done

The lcdc timing generator is configured by boot loader for splash
screen. TG should be disabled when kernel is about to configure it
with its own parameters. Otherwise, mdp may hang or underrun while TG
is still active.

Change-Id: Ia2b2947c2759975d02e718edf306c86403bc6d33
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
msm_fb: display: fix pipe solid fill initialization issue

Currently solid fill mode is not properly initialized. Only the base
pipe allocated for the interface is supposed to be initialized before
interface timing generator is turned on. However, the solidfill_init
function initializes all pipes and this could cause underruns on the
pipes already being used.

Change-Id: I6be589c188a2dc285b5dc4a942840c603af6d1be
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Merge remote-tracking branch 'cm_d2/cm-11.0' into lk-cm-kitkat
tracing/syscalls: Fix perf syscall tracing when syscall_nr == -1

syscall_get_nr can return -1 in the case that the task is not executing
a system call.

This patch fixes perf_syscall_{enter,exit} to check that the syscall
number is valid before using it as an index into a bitmap.

Link: http://lkml.kernel.org/r/1345137254-7377-1-git-send-email-will.deacon@arm.com

Change-Id: I394f68e871429d7e42d8d47618d494f337bc1171
Cc: Jason Baron <jbaron@redhat.com>
Cc: Wade Farnsworth <wade_farnsworth@mentor.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
tracing/syscalls: Ignore numbers outside NR_syscalls' range

ARM has some private syscalls (for example, set_tls(2)) which lie
outside the range of NR_syscalls.  If any of these are called while
syscall tracing is being performed, out-of-bounds array access will
occur in the ftrace and perf sys_{enter,exit} handlers.

 # trace-cmd record -e raw_syscalls:* true && trace-cmd report
 ...
 true-653   [000]   384.675777: sys_enter:            NR 192 (0, 1000, 3, 4000022, ffffffff, 0)
 true-653   [000]   384.675812: sys_exit:             NR 192 = 1995915264
 true-653   [000]   384.675971: sys_enter:            NR 983045 (76f74480, 76f74000, 76f74b28, 76f74480, 76f76f74, 1)
 true-653   [000]   384.675988: sys_exit:             NR 983045 = 0
 ...

 # trace-cmd record -e syscalls:* true
 [   17.289329] Unable to handle kernel paging request at virtual address aaaaaace
 [   17.289590] pgd = 9e71c000
 [   17.289696] [aaaaaace] *pgd=00000000
 [   17.289985] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
 [   17.290169] Modules linked in:
 [   17.290391] CPU: 0 PID: 704 Comm: true Not tainted 3.18.0-rc2+ #21
 [   17.290585] task: 9f4dab00 ti: 9e710000 task.ti: 9e710000
 [   17.290747] PC is at ftrace_syscall_enter+0x48/0x1f8
 [   17.290866] LR is at syscall_trace_enter+0x124/0x184

Fix this by ignoring out-of-NR_syscalls-bounds syscall numbers.

Commit cd0980fc8add "tracing: Check invalid syscall nr while tracing syscalls"
added the check for less than zero, but it should have also checked
for greater than NR_syscalls.

Link: http://lkml.kernel.org/p/1414620418-29472-1-git-send-email-rabin@rab.in

Fixes: cd0980fc8add "tracing: Check invalid syscall nr while tracing syscalls"
Cc: stable@vger.kernel.org # 2.6.33+
Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>

Conflicts:
	kernel/trace/trace_syscalls.c

Change-Id: Id57dfab9c6a9fd22516466512203302309db1900
Merge remote-tracking branch 'cm_d2/cm-11.0' into lk-cm-kitkat
leanKernel v9.16