Commit graph

594105 commits

Author SHA1 Message Date
Lynus Vaz
5b4f3d1608 msm: kgsl: Bail out when two threads add sparse bindings
If we find that a different thread has already added bindings at the
same offset we wanted to add to the sparse object, don't get stuck in
an infinite loop, and return with an error.

Change-Id: I6b17c91eccb14c07e13cae24135dfe7b13f3301d
Signed-off-by: Lynus Vaz <lvaz@codeaurora.org>
2017-10-04 11:13:46 +05:30
Mohammed Javid
92db5ba9ef msm: ipa: prevent string buffer overflows
In WAN ioctls user-supplied data structures
contain string members,but there's no guarantee
they're null-terminated, add the string terminator
to prevent vulnerability of string buffer overflows.

Change-Id: I17c06c94aa619a2cd3a678c495a31541a65a7741
Acked-by: Ashok Vuyyuru <avuyyuru@qti.qualcomm.com>
Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
2017-10-04 11:13:12 +05:30
Abhinav Kumar
246bafceab drm/msm: reset HDCP 2.2 sink support during disconnect
Reset the HDCP 2.2 sink support during a cable disconnect
to avoid stale information during the next cable connect.

This information is populated again from the sink on the next
cable connect.

Change-Id: I54da6e633915718da4be7023027c1d8c68cd6c21
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
2017-10-03 22:37:32 -07:00
Rahul Sharma
591cb6c90a defconfig: msm: enable DRM driver for msm8996
This change disables FB driver and enable DRM display driver
on msm8996 device.

Change-Id: I2df5ab4e24067f76ec45581b27a577f118b8cec8
Signed-off-by: Camus Wong <camusw@codeaurora.org>
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-10-03 14:23:56 -07:00
Subbaraman Narayanamurthy
8c20990f43 iio: qcom-rradc: Disable continuous mode when read fails
Currently, when a channel is read in continuous mode and the read
operation fails, RR_ADC would be left enabled in continuous mode.
Disable the continuous mode in such cases so that the other read
operations which doesn't need continuous mode can go through.

Change-Id: I2bf257bd535e1e4a30e18b6257e584a5be96b69d
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2017-10-03 12:35:39 -07:00
Rahul Sharma
00a9435ff0 drm/msm: null check before initializing a submitqueue
This change checks a NULL condition before initializing submitqueue.

Change-Id: I9ef6b6506b535d33e585be4988fa6433e11b3cb1
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-10-03 09:53:53 -07:00
Rahul Sharma
c95cd30b00 ARM: dts: msm: use sde terminology for DRM based nodes
This changes modifies compatible name for smmu_kms_unsec_cb
to use sde terminology.

Change-Id: I31ee9620f8bb54fd582d9c6b21f5df0fda3cb975
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-10-03 09:53:30 -07:00
Camus Wong
c38bb7f088 drm/msm: avoid loading gpu components if qcom_kgsl present
Avoid loading gpu components from drm driver if qcom_kgsl
driver present.

Change-Id: I74c65634ce9260fba5bb871b3a9854d2c8173f4e
Signed-off-by: Camus Wong <camusw@codeaurora.org>
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-10-03 09:52:45 -07:00
Rahul Sharma
792779946e drm/msm: remove the right vlbank event from the event list
This changes fixes an issue with vblank event list corruption.
we should only remove the event corresponding to a crtc from list
for which the thread was queued.

Change-Id: I9b9cef9073ba4cc377a85e21a7257d36e9b92388
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-10-03 05:31:36 -07:00
Dhaval Patel
fec05057ef drm/msm/sde: update release & retire fence timeline
Update release and retire fence timeline according to client
requirement to align it with correct vsync boundary and avoid
issues in jank cases.

Change-Id: Ibee64f4feea2623e8bc8459273b7193d5e7bdacc
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-10-03 05:29:39 -07:00
Utkarsh Saxena
c961b0bbfc msm: ipa: Add support for per client lan statistics
Per client lan statistics feature requires fetching data
from IPA-Q6 and share it with user space application.
Make changes to provide ioctl-interface to interact with
IPA Q6 to get the per  client lan statistics.

Change-Id: If0af747cd86058eaa275170f42af1d9e93e81768
Acked-by: Abhishek Choubey <abchoube@qti.qualcomm.com>
Acked-by: Pooja Kumari <kumarip@qti.qualcomm.com>
Acked-by: Chaitanya Pratapa <cpratapa@qti.qualcomm.com>
Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
2017-10-03 13:21:22 +05:30
Xu YiPing
d1bb6af231 FROMLIST: binder: fix memory corruption in binder_transaction binder
(from https://patchwork.kernel.org/patch/9939405/)

commit 7a4408c6bd3e ("binder: make sure accesses to proc/thread are
safe") made a change to enqueue tcomplete to thread->todo before
enqueuing the transaction. However, in err_dead_proc_or_thread case,
the tcomplete is directly freed, without dequeued. It may cause the
thread->todo list to be corrupted.

So, dequeue it before freeing.

Bug: 65333488
Change-Id: I14ef48095d9f690148b1a50ea62d05dd67779505
Signed-off-by: Xu YiPing <xuyiping@hisilicon.com>
Signed-off-by: Todd Kjos <tkjos@google.com>
Git-commit: 86578a0fd70edffb11c78b5df85b8e113e44bfe1
Git-repo: https://android.googlesource.com/kernel/common
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
2017-10-03 00:33:19 -07:00
Tharun Kumar Merugu
82b1358189 ARM: dts: msm: Add fastrpc vmid flag for sdm660
Add device specific flag for new vmid heap shared feature.

Change-Id: I35cc0073a5fa10c715d520ebb9d77936a6820aa9
Signed-off-by: Tharun Kumar Merugu <mtharu@codeaurora.org>
2017-10-03 12:54:36 +05:30
Paul E. McKenney
15a19dd355 sched: Make resched_cpu() unconditional
The current implementation of synchronize_sched_expedited() incorrectly
assumes that resched_cpu() is unconditional, which it is not.  This means
that synchronize_sched_expedited() can hang when resched_cpu()'s trylock
fails as follows (analysis by Neeraj Upadhyay):

o    CPU1 is waiting for expedited wait to complete:
sync_rcu_exp_select_cpus
     rdp->exp_dynticks_snap & 0x1   // returns 1 for CPU5
     IPI sent to CPU5

synchronize_sched_expedited_wait
         ret = swait_event_timeout(
                                     rsp->expedited_wq,
  sync_rcu_preempt_exp_done(rnp_root),
                                     jiffies_stall);

            expmask = 0x20 , and CPU 5 is in idle path (in cpuidle_enter())

o    CPU5 handles IPI and fails to acquire rq lock.

Handles IPI
     sync_sched_exp_handler
         resched_cpu
             returns while failing to try lock acquire rq->lock
         need_resched is not set

o    CPU5 calls  rcu_idle_enter() and as need_resched is not set, goes to
     idle (schedule() is not called).

o    CPU 1 reports RCU stall.

Given that resched_cpu() is now used only by RCU, this commit fixes the
assumption by making resched_cpu() unconditional.

Change-Id: I67cbf28612004f4b78e355dd00b5abdd0f31ec13
Reported-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Suggested-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Patch-mainline: linux-kernel @ 18/09/17, 09:01
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
2017-10-03 00:06:48 -07:00
Paul E. McKenney
3bc5ee6fd7 rcu: Stop disabling interrupts in scheduler fastpaths
We need the scheduler's fastpaths to be, well, fast, and unnecessarily
disabling and re-enabling interrupts is not necessarily consistent with
this goal.  Especially given that there are regions of the scheduler that
already have interrupts disabled.

This commit therefore moves the call to rcu_note_context_switch()
to one of the interrupts-disabled regions of the scheduler, and
removes the now-redundant disabling and re-enabling of interrupts from
rcu_note_context_switch() and the functions it calls.

Reported-by: Peter Zijlstra <peterz@infradead.org>
Change-Id: I8de5c9890b1db126b06d4d8fed717b3c8bfcf866
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
[ paulmck: Shift rcu_note_context_switch() to avoid deadlock, as suggested
  by Peter Zijlstra. ]
Git-commit: 46a5d164db53ba6066b11889abb7fa6bddbe5cf7
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
[prsood@codeaurora.org: resolve trivial merge conflicts]
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2017-10-03 00:05:13 -07:00
Paul E. McKenney
b8bddf51cf rcu: Simplify rcu_sched_qs() control flow
This commit applies an early-exit approach to rcu_sched_qs(), reducing
the nesting level and saving a line of code.

Change-Id: Ib5dff7a0e3a26ce8ed319fd03b15e77b7b6650db
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Git-commit: fecbf6f01fbd83e6419ccb7f61d9a6eb987f1d92
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2017-10-03 00:04:24 -07:00
Neeraj Soni
71a440a0c8 crypto: ice: Sanitize the ice device return address.
Even if ICE device is not found it is possible
for list device API to return non NULL pointer
which will pass all NULL checks in code. Ensure
to return proper address or NULL.

Change-Id: I1465614b86f1415376b2adffeec6e4da1a33ddd5
Signed-off-by: Neeraj Soni <neersoni@codeaurora.org>
2017-10-03 12:17:37 +05:30
Pratham Pratap
8f84d3cbc8 usb: gadget: gsi: Avoid spinlock lockup
In this case gsi_ctrl_clear_cpkt_queues function is called
which is holding spinlock and in the meantime dwc3_interrupt
occurred on same CPU which in turn is calling gsi_ctrl_clear_cpkt_queues
function and it is trying to acquire the same spinlock causing
deadlock.

This change disables the interrupts when spinlock is acquired
in gsi_ctrl_clear_cpkt_queues function.

Change-Id: Ia87a0a283ca6b6298083dddb448e4d649a4f8e89
Signed-off-by: Pratham Pratap <prathampratap@codeaurora.org>
2017-10-02 23:23:58 -07:00
Asutosh Das
492d614a96 scsi: ufs: Change power mode on line reset
Line reset can occur during hibernate enter, exit or
during PA_INIT. In some cases, system slowness problem
is observed when line reset happened during hibernate
enter process in auto hibernate mode of operation as
link remains in PWM-G1 mode. To fix this problem, read
PA_PWRmode, PA_TxGear and PA_RxGear if line reset is
detected and if link is in PWM-G1 mode, initiate power
mode change to expected HS gear.

Change-Id: Ic06a11c917e8954743c4dcf80b89fedeec4584ed
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
2017-10-03 10:56:52 +05:30
Yue Ma
75758e8e61 defconfig: msm-auto: Enbale CONFIG_SLUB_DEBUG_ON
Enable CONFIG_SLUB_DEBUG_ON for MSM8996 AUTO platform in order
to get more debug capability.

Change-Id: I076395c4d4b950859afa2c1fffdc3687ba39a71d
Signed-off-by: Yue Ma <yuem@codeaurora.org>
2017-10-02 16:56:13 -07:00
Rama Krishna Phani A
f1034d926e iio: qcom-rradc: Check for USB presence
Check whether USB is connected while doing conversion for
channels that require USB to read valid readings. If USB
is not plugged in, exit loop and return error.

Change-Id: Ib181a9e4406d88dc2988ca08e84598635e5a4716
Signed-off-by: Rama Krishna Phani A <rphani@codeaurora.org>
2017-10-02 13:25:30 -07:00
Nicholas Troast
dff3320be0 ARM: dts: msm: change smb138x_parallel_slave node name
Change the smb138x_parallel_slave node name to smb138x_charger to be
consistent with other smb charger node names.

Change-Id: I2f325e943efbfa8d95223f830232246ee97149c4
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-09-29 15:54:16 -07:00
Linux Build Service Account
bd20893138 Merge "msm: wlan: Update regulatory database" 2017-09-29 06:47:29 -07:00
Zhiqiang Tu
4746e621c3 ARM: dts: msm: Add device for boot time marker on msm8996 virtual platform
Add mpm sleep counter and imem boot stats for boot status and
boot time marker.

Change-Id: I9053bf89d30e92f9f18a979356c5e4c4626f498d
Signed-off-by: Zhiqiang Tu <ztu@codeaurora.org>
2017-09-29 15:45:07 +08:00
Yujun Zhang
34658f72cf drm/msm: Remove too many hdmi_i2c_xfer warnings
On 8996 AUTO platform, too many "hdmi_i2c_xfer" warnings appear
when booting that makes boot time longer and may cause watchdog
bite. The warning is generated by WARN_ON() in hdmi_i2c_xfer()
which prints call stack like:
        hdmi_i2c_xfer+0x44/0x398
        __i2c_transfer+0x270/0x4b4
        i2c_transfer+0x64/0xb0
        hdmi_ddc_read+0x84/0xdc
        sde_hdmi_scdc_write+0xac/0x178
        _sde_hdmi_bridge_mode_set+0x928/0xa34
        drm_bridge_mode_set+0x30/0x54
        complete_commit+0x448/0x938
        _msm_drm_commit_work_cb+0xb0/0x1a0
        kthread_worker_fn+0xcc/0x170
        kthread+0xf8/0x100
        ret_from_fork+0x10/0x20
The reason is the HDMI_CTRL_ENABLE bit of REG_HDMI_CTRL register
is disabled during the reset by the first commit. This reset is
caused by the missing of HPD regulator enabling in HPD call sequence.
So to remove the HDMI i2c warning, the patch enables HPD regulator
to avoid the reset.

Change-Id: I91e853535a972f241c7aa2d28c05785569ae23db
CRs-fixed: 2093649
Signed-off-by: Yujun Zhang <yujunzhang@codeaurora.org>
2017-09-29 11:13:15 +08:00
Subash Abhinov Kasiviswanathan
cd9b0ed210 netfilter: xt_socket: Restore mark from full sockets only
An out of bounds error was detected on an ARM64 target with
Android based kernel 4.9. This occurs while trying to
restore mark on a skb from an inet request socket.

BUG: KASAN: slab-out-of-bounds in socket_match.isra.2+0xc8/0x1f0 net/netfilter/xt_socket.c:248
Read of size 4 at addr ffffffc06a8d824c by task syz-fuzzer/1532
CPU: 7 PID: 1532 Comm: syz-fuzzer Tainted: G        W  O    4.9.41+ #1
Call trace:
[<ffffff900808d2f8>] dump_backtrace+0x0/0x440 arch/arm64/kernel/traps.c:76
[<ffffff900808d760>] show_stack+0x28/0x38 arch/arm64/kernel/traps.c:226
[<ffffff90085f7dc8>] __dump_stack lib/dump_stack.c:15 [inline]
[<ffffff90085f7dc8>] dump_stack+0xe4/0x134 lib/dump_stack.c:51
[<ffffff900830f358>] print_address_description+0x68/0x258 mm/kasan/report.c:248
[<ffffff900830f770>] kasan_report_error mm/kasan/report.c:347 [inline]
[<ffffff900830f770>] kasan_report.part.2+0x228/0x2f0 mm/kasan/report.c:371
[<ffffff900830fdec>] kasan_report+0x5c/0x70 mm/kasan/report.c:372
[<ffffff900830de98>] check_memory_region_inline mm/kasan/kasan.c:308 [inline]
[<ffffff900830de98>] __asan_load4+0x88/0xa0 mm/kasan/kasan.c:740
[<ffffff90097498f8>] socket_match.isra.2+0xc8/0x1f0 net/netfilter/xt_socket.c:248
[<ffffff9009749a5c>] socket_mt4_v1_v2_v3+0x3c/0x48 net/netfilter/xt_socket.c:272
[<ffffff90097f7e4c>] ipt_do_table+0x54c/0xad8 net/ipv4/netfilter/ip_tables.c:311
[<ffffff90097fcf14>] iptable_mangle_hook+0x6c/0x220 net/ipv4/netfilter/iptable_mangle.c:90
...
Allocated by task 1532:
 save_stack_trace_tsk+0x0/0x2a0 arch/arm64/kernel/stacktrace.c:131
 save_stack_trace+0x28/0x38 arch/arm64/kernel/stacktrace.c:215
 save_stack mm/kasan/kasan.c:495 [inline]
 set_track mm/kasan/kasan.c:507 [inline]
 kasan_kmalloc+0xd8/0x188 mm/kasan/kasan.c:599
 kasan_slab_alloc+0x14/0x20 mm/kasan/kasan.c:537
 slab_post_alloc_hook mm/slab.h:417 [inline]
 slab_alloc_node mm/slub.c:2728 [inline]
 slab_alloc mm/slub.c:2736 [inline]
 kmem_cache_alloc+0x14c/0x2e8 mm/slub.c:2741
 reqsk_alloc include/net/request_sock.h:87 [inline]
 inet_reqsk_alloc+0x4c/0x238 net/ipv4/tcp_input.c:6236
 tcp_conn_request+0x2b0/0xea8 net/ipv4/tcp_input.c:6341
 tcp_v4_conn_request+0xe0/0x100 net/ipv4/tcp_ipv4.c:1256
 tcp_rcv_state_process+0x384/0x18a8 net/ipv4/tcp_input.c:5926
 tcp_v4_do_rcv+0x2f0/0x3e0 net/ipv4/tcp_ipv4.c:1430
 tcp_v4_rcv+0x1278/0x1350 net/ipv4/tcp_ipv4.c:1709
 ip_local_deliver_finish+0x174/0x3e0 net/ipv4/ip_input.c:216

CRs-Fixed: 2113103
Change-Id: I1e81238aa2b8abe768d460674978f554b6c3ca48
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
2017-09-28 08:07:29 -07:00
Dhoat Harpal
10181e6279 soc: qcom: glink: Free if_ptr before freeing dummy transport
Dummy transport is only way to access if_ptr. When dummy
transport is freed, if_ptr allocated for dummy transport is
not freed. This result in memory leak.

kfree of if_ptr is called before freeing dummy transport.

CRs-Fixed: 2116744
Change-Id: I832e0fcde418b7c3d992f50e817866bc9075da3c
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
2017-09-28 07:57:52 -07:00
Dhoat Harpal
664fcc0919 soc: qcom: glink: Free data memory before freeing intent
Data of intent is not freed even in purge_intent_list. This results
in memory leak.

Kfree is done for data before freeing intent.

CRs-Fixed: 2116744
Change-Id: Ib99261208df1cc9b63b4cd0a35ac0c7942efb4a8
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
2017-09-28 07:57:21 -07:00
Samyukta Mogily
3ce513c201 msm: camera: Add support for plain16 mode
Add sensor formats for 10 bit csid plain16.

Change-Id: Ib9477f59803f5a14dfd42dfda016e090fada3028
Signed-off-by: Samyukta Mogily <smogily@codeaurora.org>
2017-09-28 03:34:21 -07:00
Prakash Gupta
283e2a920d ARM: enable vmalloc saving
For some targets that have less vmalloc space this can be increased by
enabling config ENABLE_VMALLOC_SAVING. With this config we can reclaim
virtual mappings which remains unused because of non hlos carveout
reservations in lowmem.

Select the default method of reclaiming virtual memory as vmalloc saving.

Change-Id: I05bbae3b554be54f74b740404dda0cdfa89084bd
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
2017-09-28 15:51:56 +05:30
Aravind Venkateswaran
04e88e68ee msm: mdss: dp: fix handling of device shutdown with cable connected
When the source is powered off with an external sink connected, it
will result in a call to blank and power off the source. In the
current implementation, sink is not transitioned to D3 power mode
prior to turning off the source. This can result in the sink
reporting signal lock failures as the source if powered off,
resulting in an HPD IRQ interrupt. If this interrupt is handled
after the DP controller is powered off, it can lead to unclocked
register accesses. Fix this by ensuring that sink is powered off
prior to powering off the source. In addition, ensure that no more
attention events are handled once the DP controller is powered off.

Change-Id: I08558229f7c3e603904527de58a39039b3d7615e
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2017-09-28 14:17:06 +05:30
Amir Samuelov
aef18b277c spcom: spcom_get_next_request_size() unlock while waiting for rx data
spcom server app might open the channel before the SP client app.
The asynchronous CONNECTED callback might be called while the server
is waiting for data.
Avoid locking the channel while waiting for data to avoid dead lock
while handling the CONNECTED callabck.

Change-Id: I7c576f240b60720a6f1461b3e48f4422c110e7c4
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
2017-09-28 00:41:26 -07:00
Amir Samuelov
7ced3825df spcom: avoid using stale glink handle
spcom_notify_state() is a callback called by glink upon channel connect.
It is asynchronous callback, that might be called after glink_close().
Avoid storing stale glink handle in such case.

Change-Id: I10359f38ca48f618899673f677a6409b01bc6618
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
2017-09-28 00:39:07 -07:00
Varun Balaraj
0a1c253171 ASoC: msm: qdsp6v2: updating downmix/pan_scale control type to bytes
Change the downmix/pan_scale control data type from integer to bytes
to make it compatible across different archs.

Change-Id: I9282673dc1e124185d7c545206bba31966b803dc
Signed-off-by: Varun Balaraj <varunb@codeaurora.org>
2017-09-28 11:41:04 +05:30
Linux Build Service Account
b33f617917 Merge "msm: Add CLD80211_ATTR_META_DATA vendor attribute" 2017-09-27 20:05:49 -07:00
Linux Build Service Account
f468a5a27d Merge "power: smb-lib: Disable USB IRQs during high duty cycle" 2017-09-27 20:05:47 -07:00
Linux Build Service Account
dc908f16a5 Merge "soc: qcom: pil: Avoid possible buffer overflow" 2017-09-27 20:05:46 -07:00
Linux Build Service Account
653e0157e3 Merge "pwm: pwm-qpnp: Fix uninitialized variable use" 2017-09-27 20:05:45 -07:00
Mohammed Javid
43a3a58e49 msm:ipa: Fix to slab out of bounds access
Accessing of incorrect structure pointer is causing
slab-out-of-bounds access, fixed issue by accessing
the correct structure pointer.

Change-Id: I23d3c9afbbabba88be92ef5cae83c4708a211e88
Acked-by: Ashok Vuyyuru <avuyyuru@qti.qualcomm.com>
Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
2017-09-27 05:20:24 -07:00
Kaushal Kumar
dc81965316 soc: qcom: pil: Avoid possible buffer overflow
MBA image size comparison check is currently being
done with a signed count whose value can possibly be
negative. If count value is negative then comparison
will always succeed and invoke memcpy with incorrect
value of count leading to buffer overflow. Fix this
by not using signed comparison.

Change-Id: Id2d0cafae01f940f36cfd559d4656fc0f022d6a5
Signed-off-by: Kaushal Kumar <kaushalk@codeaurora.org>
2017-09-27 04:41:48 -07:00
Ankit Jain
f411e6c386 mmc: sdhci-msm: flush mmc detect work asynchronously.
Block device should be available before mounting of root
device. In some cases block device is not available at the
time of root device mounting because mmc detect work is not
completed by that time which is causing mount failure. This
change flush mmc detect work asynchronously after device probe
and before mounting of root device, async_synchronize_full
will make sure all asynchronous function calls have been done.

Change-Id: I22be6c4b528c952fd73ea5d5e8ba533ce7165f86
Signed-off-by: Ankit Jain <jankit@codeaurora.org>
2017-09-27 02:08:00 -07:00
Vatsal Bucha
59996159bf ASoC: codecs: Fix pop noise in HPH plus LO4 concurrent usecase
Pop sound happens after start playback on HPH when
ultrasound playback on LO4 is enabled.
This is because CnP is sequence dependent and enabling
design blocks in specified order is causing minimum CnP.

CRs-Fixed: 2100346
Change-Id: If10f9013cc1a2aa61fe9c719d3190f2df0b00950
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-09-27 14:04:56 +05:30
Archana Sriram
8662023651 msm: kgsl: Fix calculation of size in _load_regfile
During firmware load, there could be data over reads
due to calculation of lm_size and lm_sequence from
block and block_size. Added bounds checking to prevent
this and improved the size calculation.

CRs-Fixed: 2107981
Change-Id: Ib4283951b0d6c8fb699af1f85e657981ad4c0318
Signed-off-by: Archana Sriram <apsrir@codeaurora.org>
2017-09-26 23:12:04 -07:00
Ajay Agarwal
30dd41caee ARM: dts: msm: Allow pm_suspend in host mode for msm8996 ADP
This change adds device tree flag to allow system suspend
on automotive platform with USB devices connected that do
not support runtime suspend.

Change-Id: I3ddda5052c866e16c46e5a46255acc28ab6f9363
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
2017-09-27 11:23:58 +05:30
Vatsal Bucha
5cca96ffa7 ARM: dts: msm: Add AFE clock version for primary auxpcm
Kernel crash is observed when trying to access component
because wcd_dsp_ctl is deregistered. This is due to failure in
soundcard registration. The failure occurs due to msm
unable to set aanc version. Update afe clock version for
primary auxpcm resolves the issue.

CRs-Fixed: 2113187
Change-Id: I8bb3c9a6946f1c1af88a62d7ee154b6e7ff904f4
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2017-09-27 11:16:42 +05:30
Ajay Agarwal
c97f5a36d5 usb: dwc3-msm: Allow PM suspend in host mode irrespective of runtimePM
DWC3 driver uses wakeup_source and allows pm_suspend only after
entering low power mode as part of runtime suspend. This prevents
PM suspend in host mode if connected device's driver doesn't
support runtime or selective suspend.
Add support in driver where user can specify using dtsi attribute
to not use wakeup source in host mode. It will allow system to enter
deep sleep or pm_suspend irrespective of runtime PM state of XHCI.
On high level below are the changes in default behavior:
 -Do not use wakeup_source for DWC3 when operating in host mode.
 -For host mode, devices will suspend upon PM suspend and resumed
  after PM resume.

Change-Id: Ia1d450e6dd99e094e48caf9723a355b7870b54dd
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
2017-09-27 11:13:37 +05:30
Linux Build Service Account
22b400edb3 Merge "scsi: ufshcd: Flush exception event before suspend" 2017-09-26 21:50:09 -07:00
Linux Build Service Account
ac9cb81445 Merge "mdss: mdp: Validate null commit for secure display" 2017-09-26 21:49:58 -07:00
Linux Build Service Account
7498a748e3 Merge "msm: kgsl: Don't read stale crashdumper data" 2017-09-26 21:49:57 -07:00
Linux Build Service Account
a77b833858 Merge "ath10k: Fix unwanted probe requests sent during p2p scan" 2017-09-26 21:49:55 -07:00