Commit graph

583242 commits

Author SHA1 Message Date
Linux Build Service Account
a49e87ee73 Merge "ARM: dts: msm: add connector temp iio channel for SMB138X" 2017-02-21 05:33:27 -08:00
Linux Build Service Account
6cf18cf002 Merge "mm: vmscan: do not pass reclaimed slab to vmpressure" 2017-02-21 05:33:26 -08:00
Linux Build Service Account
1449de5126 Merge "mm: vmpressure: fix sending wrong events on underflow" 2017-02-21 05:33:26 -08:00
Linux Build Service Account
3e0898136d Merge "USB: qusb: Add support to change TUNEX registers dynamically" 2017-02-21 05:33:25 -08:00
Linux Build Service Account
9576ebffd1 Merge "phy: qcom-ufs: parse ref-clk details prior to resource request" 2017-02-21 05:33:24 -08:00
Linux Build Service Account
b3b9d63434 Merge "ARM: dts: msm: update enable signal polarity of SMB1351 for SDM660" 2017-02-21 05:33:23 -08:00
Linux Build Service Account
7997223a2d Merge "msm: ipa: changes to suspend/disable for WDI 2" 2017-02-21 05:33:23 -08:00
Linux Build Service Account
bf0ca85b71 Merge "net: validate the range we feed to iov_iter_init() in sys_sendto/sys_recvfrom" 2017-02-21 05:33:19 -08:00
Linux Build Service Account
32ba260669 Merge "usb: pd: Skip decreasing current when requesting the same PPS" 2017-02-21 05:33:18 -08:00
Linux Build Service Account
7fd898c7d3 Merge "ARM: dts: msm: Update Temperature sensor support for sdm660" 2017-02-21 05:33:17 -08:00
Linux Build Service Account
488d502924 Merge "USB: gadget: Replace %pK with %p" 2017-02-21 05:33:16 -08:00
Linux Build Service Account
328a15d380 Merge "msm: kgsl: Fix false timeout gpu faults" 2017-02-21 05:33:16 -08:00
Linux Build Service Account
921ba81bc3 Merge "input: touchscreen: remove msg21xx mstar touch driver" 2017-02-21 05:33:15 -08:00
Linux Build Service Account
abe0d1ce01 Merge "mmc: core: Fix deadlock in suspend & rescan path" 2017-02-21 05:33:14 -08:00
Linux Build Service Account
82ab22b4ae Merge "mmc: sdhci-msm: Dont wait infinitely for pwr_irq interrupt" 2017-02-21 05:33:13 -08:00
Linux Build Service Account
c4b8f73455 Merge "ARM: dts: msm: Enable APC0/1 CPR closed-loop operation for sdm660" 2017-02-20 19:44:30 -08:00
Linux Build Service Account
14e732143d Merge "drm/msm: gpu: Return error on hw_init failure" 2017-02-20 19:44:28 -08:00
Linux Build Service Account
09191dbe4d Merge "drm/msm: Detach the MMU during msm_gpu_cleanup()" 2017-02-20 19:44:27 -08:00
Linux Build Service Account
31516ed735 Merge "msm: mdss: fix secure session power vote" 2017-02-20 19:44:27 -08:00
Linux Build Service Account
8c91258981 Merge "clk: qcom: Add support to list registers for slew PLL" 2017-02-20 19:44:26 -08:00
Linux Build Service Account
4b649675b7 Merge "certs: dm-verity: add keyring certification for verity" 2017-02-20 19:44:25 -08:00
Linux Build Service Account
56b0a1f166 Merge "ppp: defer netns reference release for ppp channel" 2017-02-20 10:08:27 -08:00
Linux Build Service Account
e7d1ccb3fa Merge "power: qcom-charger: delay ICL change reporting to parallel psy" 2017-02-20 10:08:26 -08:00
Linux Build Service Account
41bb68940b Merge "ARM: dts: msm: Enable camera for sdm630" 2017-02-20 10:08:25 -08:00
Linux Build Service Account
e4dff026df Merge "ARM: dts: msm: Add max secure video sessions for sdm660" 2017-02-20 10:08:24 -08:00
Linux Build Service Account
4d49e3647c Merge "ARM: dts: msm: add support for NO jacktype for SDM630" 2017-02-20 10:08:24 -08:00
Vijayavardhan Vennapusa
4fd545a06e USB: qusb: Add support to change TUNEX registers dynamically
Add required support to change QUSB2PHY_PORT_TUNE1/2/3/4/5 registers
dynamically for testing USB electrical complaince.

Change-Id: Id84d460c8f8dc8cdedabe3887859d6b90acf7c3f
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2017-02-20 17:14:30 +05:30
Vinayak Menon
280a2d3683 mm: vmscan: do not pass reclaimed slab to vmpressure
During global reclaim, the nr_reclaimed passed to vmpressure includes the
pages reclaimed from slab.  But the corresponding scanned slab pages is
not passed.  There is an impact to the vmpressure values because of this.
While moving from kernel version 3.18 to 4.4, a difference is seen in the
vmpressure values for the same workload resulting in a different behaviour
of the vmpressure consumer.  One such case is of a vmpressure based
lowmemorykiller.  It is observed that the vmpressure events are received
late and less in number resulting in tasks not being killed at the right
time.  The following numbers show the impact on reclaim activity due to
the change in behaviour of lowmemorykiller on a 4GB device.  The test
launches a number of apps in sequence and repeats it multiple times.

                      v4.4           v3.18
pgpgin                163016456      145617236
pgpgout               4366220        4188004
workingset_refault    29857868       26781854
workingset_activate   6293946        5634625
pswpin                1327601        1133912
pswpout               3593842        3229602
pgalloc_dma           99520618       94402970
pgalloc_normal        104046854      98124798
pgfree                203772640      192600737
pgmajfault            2126962        1851836
pgsteal_kswapd_dma    19732899       18039462
pgsteal_kswapd_normal 19945336       17977706
pgsteal_direct_dma    206757         131376
pgsteal_direct_normal 236783         138247
pageoutrun            116622         108370
allocstall            7220           4684
compact_stall         931            856

This is a regression introduced by commit 6b4f7799c6 ("mm: vmscan:
invoke slab shrinkers from shrink_zone()").

So do not consider reclaimed slab pages for vmpressure calculation.  The
reclaimed pages from slab can be excluded because the freeing of a page by
slab shrinking depends on each slab's object population, making the cost
model (i.e.  scan:free) different from that of LRU.  Also, not every
shrinker accounts the pages it reclaims.  But ideally the pages reclaimed
from slab should be passed to vmpressure, otherwise higher vmpressure
levels can be triggered even when there is a reclaim progress.  But
accounting only the reclaimed slab pages without the scanned, and adding
something which does not fit into the cost model just adds noise to the
vmpressure values.

Fixes: 6b4f7799c6 ("mm: vmscan: invoke slab shrinkers from shrink_zone()")
Link: http://lkml.kernel.org/r/1486641577-11685-2-git-send-email-vinmenon@codeaurora.org
Acked-by: Minchan Kim <minchan@kernel.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Anton Vorontsov <anton.vorontsov@linaro.org>
Cc: Shiraz Hashim <shashim@codeaurora.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Git-commit: 97a9668a428e9651a4aa3ff5d4e7e60024be2d87
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
Change-Id: If46b1cee6fd9723bebd87d76e0bb8451de05a9c1
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2017-02-20 12:12:28 +05:30
Vinayak Menon
9dd531d8e9 mm: vmpressure: fix sending wrong events on underflow
At the end of a window period, if the reclaimed pages is greater than
scanned, an unsigned underflow can result in a huge pressure value and
thus a critical event.  Reclaimed pages is found to go higher than scanned
because of the addition of reclaimed slab pages to reclaimed in
shrink_node without a corresponding increment to scanned pages.  Minchan
Kim mentioned that this can also happen in the case of a THP page where
the scanned is 1 and reclaimed could be 512.

Link: http://lkml.kernel.org/r/1486641577-11685-1-git-send-email-vinmenon@codeaurora.org
Acked-by: Minchan Kim <minchan@kernel.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Rik van Riel <riel@redhat.com>
Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
Cc: Anton Vorontsov <anton.vorontsov@linaro.org>
Cc: Shiraz Hashim <shashim@codeaurora.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Change-Id: Ic1221fa129c9b3512127537d62df7bd4a7606d24
Git-commit: 746d8d8f3ebb49a62ffcffb4b1f41cc27d020a2e
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2017-02-20 12:12:11 +05:30
Utkarsh Saxena
1aa7b92146 msm: ipa: changes to suspend/disable for WDI 2
Adapt to latest changes to IPA micro-controller(IPA uC).

For pipe SUSPEND, IPA uC will fail in case
the pipe is not empty.

IPA driver needs to insure pipe is empty
and then issue a SUSPEND command.

For pipe DISABLE, pipe is already empty on SUSPEND,
IPA driver does not need to do ensure anything before
issuing a DISABLE command.

Change-Id: Ic0e65b671fc29583203986defada31e92065adfd
Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
2017-02-20 11:29:17 +05:30
Ashay Jaiswal
bb7e704af7 ARM: dts: msm: update enable signal polarity of SMB1351 for SDM660
Update enable signal polarity of SMB1351 as active high to make
sure STAT pin of main charger controls SMB1351.

Change-Id: I7c3fa06d59667639899ad795537ed49cb1f59e2d
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2017-02-20 09:11:21 +05:30
WANG Cong
a1e9116dac ppp: defer netns reference release for ppp channel
Matt reported that we have a NULL pointer dereference
in ppp_pernet() from ppp_connect_channel(),
i.e. pch->chan_net is NULL.

This is due to that a parallel ppp_unregister_channel()
could happen while we are in ppp_connect_channel(), during
which pch->chan_net set to NULL. Since we need a reference
to net per channel, it makes sense to sync the refcnt
with the life time of the channel, therefore we should
release this reference when we destroy it.

Fixes: 1f461dcdd296 ("ppp: take reference on channels netns")
Reported-by: Matt Bennett <Matt.Bennett@alliedtelesis.co.nz>
Cc: Paul Mackerras <paulus@samba.org>
Cc: linux-ppp@vger.kernel.org
Cc: Guillaume Nault <g.nault@alphalink.fr>
Cc: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Reviewed-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Git-repo:https://source.codeaurora.org/quic/la/kernel/msm-4.4
Git-commit: 205e1e255c479f3fd77446415706463b282f94e4

Change-Id: Ic7ce3be365ebdc1505ed8ce68df981c855638a3c
Signed-off-by: Srinivasa Rao Kuppala <srkupp@codeaurora.org>
2017-02-19 15:57:19 -08:00
Jordan Crouse
efa51be2e1 drm/msm: gpu: Return error on hw_init failure
When the GPU hardware init function fails (like say, ME_INIT timed
out) return error instead of blindly continuing on. This gives us
a small chance of saving the system before it goes boom.

Change-Id: Ic0dedbad142efbc9bd93e8531b40c391ec15f557
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-19 16:07:56 -07:00
Jordan Crouse
41f5926f41 drm/msm: Detach the MMU during msm_gpu_cleanup()
Make sure to detach the MMU device before destroying the address
space.

Change-Id: Ic0dedbadff27fed017840a61ec5e0d55ce0c71e6
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-19 16:07:56 -07:00
Jordan Crouse
ffd2f3eb42 drm/msm: Support different SMMU backends for address spaces
SDE and the GPU have different requirements for the SMMU backends - the
SDE generates its own iova addresses and needs special support for DMA
buffers and the GPU does its own IOMMU operations. Add a shim layer to
aspace to break out the address generation and call the appropriate
SMMU functions. There is probably consolidation that can be done, but for
now this is the best way to deal with the two use cases.

Change-Id: Ic0dedbadc6dc03504ef7dffded18ba09fb3ef291
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-19 16:07:56 -07:00
Rob Clark
1de066f014 drm/msm: support multiple address spaces
We can have various combinations of 64b and 32b address space, ie. 64b
CPU but 32b display and gpu, or 64b CPU and GPU but 32b display.  So
best to decouple the device iova's from mmap offset.

Change-Id: Ic0dedbad2b36b535df3e8fb2ddddc20add592cea
Signed-off-by: Rob Clark <robdclark@gmail.com>
Git-commit: 22877bcbdacd50d076f9b2f829e6a3753aa9821f
Git-repo: https://github.com/freedreno/kernel-msm.git
[jcrouse@codeaurora.org: Fix merge conflicts, remove mdp5 due to large
infrastructure changes, compile fixes]
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-19 16:07:56 -07:00
Linux Build Service Account
5a092dc83c Merge "msm: ipa: Do not assert if IPA FW loading fails" 2017-02-19 09:46:35 -08:00
Linux Build Service Account
3436baed84 Merge "ath10k: Add support for shadow register for WNC3990" 2017-02-19 09:46:35 -08:00
Ghanim Fodi
a13e78525f msm: ipa: Do not assert if IPA FW loading fails
Currently, IPA driver asserts if IPA FW loading
fails. Some environments do not have IPA FW
integrated and we should not crash at these cases.

CRs-fixed: 2005599
Change-Id: I78b9f2cadb8c35ab455f4514c7efc9cee4cf4542
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
2017-02-19 06:58:14 -08:00
Linux Build Service Account
6f0b536eb7 Merge "power: qcom-charger: fix minor bugs in parallel path" 2017-02-19 01:04:40 -08:00
Linux Build Service Account
73069045ea Merge "power: qcom-charger: add a workaround flag for QC AUTH interrupt" 2017-02-19 01:04:39 -08:00
Linux Build Service Account
3fae2f4837 Merge "ARM: dts: msm: fix the compatible string used for GFX LDO CPR for sdm630" 2017-02-19 01:04:39 -08:00
Linux Build Service Account
e7d1d81cfb Merge "ARM: dts: msm: increase the system pm levels in sdm660" 2017-02-19 01:04:38 -08:00
Linux Build Service Account
523d252348 Merge "ARM: dts: msm: Enable wil6210 device for 8998 qrd-vr" 2017-02-19 01:04:37 -08:00
Linux Build Service Account
c3ad604dca Merge "ARM: dts: msm: Correct the number of bus frequency levels for SDM630" 2017-02-19 01:04:36 -08:00
Linux Build Service Account
943a2abd1a Merge "defconfig: msm: Enable BALANCE_ANON_FILE_RECLAIM for sdm660" 2017-02-19 01:04:36 -08:00
Linux Build Service Account
35dc4eff61 Merge "ARM: dts: msm: Fix DCVS load for SDM660" 2017-02-18 16:15:19 -08:00
Linux Build Service Account
1e81b8b188 Merge "drm/msm: add put_iova() helper" 2017-02-18 16:15:14 -08:00
Linux Build Service Account
1b3c3b33a7 Merge "drm/msm: set dma_mask properly" 2017-02-18 16:15:12 -08:00
Linux Build Service Account
ae42883322 Merge "wil6210: convert symbolic permissions to octal permissions" 2017-02-18 16:15:10 -08:00