Commit graph

594405 commits

Author SHA1 Message Date
Chao Yu
ab38818bdd f2fs: fix to release discard entries during checkpoint
commit 2dd15654ac0abe587a245a09a7823bbbd588bfb7 upstream.

In f2fs_fill_super, if there is any IO error occurs during recovery,
cached discard entries will be leaked, in order to avoid this, make
write_checkpoint() handle memory release by itself, besides, move
clear_prefree_segments to write_checkpoint for readability.

Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-09-25 15:04:47 -07:00
Chao Yu
311aa690ef f2fs: exclude free nids building and allocation
commit 2411cf5befa5804e4ced4c45a3212d7653869286 upstream.

During nid allocation, it needs to exclude building and allocating flow
of free nids, this is because while building free nid cache, there are two
steps: a) load free nids from unused nat entries in NAT pages, b) update
free nid cache by checking nat journal. The two steps should be atomical,
otherwise an used nid can be allocated as free one after a) and before b).

This patch adds missing lock which covers build_free_nids in
unlock_operation and f2fs_balance_fs_bg to avoid that.

Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-09-25 15:02:02 -07:00
Jaegeuk Kim
6b266c3a99 f2fs: fix to determine start_cp_addr by sbi->cur_cp_pack
commit 8508e44ae98622f841f5ef29d0bf3d5db4e0c1cc upstream.

We don't guarantee cp_addr is fixed by cp_version.
This is to sync with f2fs-tools.

Cc: stable@vger.kernel.org
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-09-25 15:01:57 -07:00
Jaegeuk Kim
ab6f3626a8 f2fs: fix overflow due to condition check order
commit e87f7329bbd6760c2acc4f1eb423362b08851a71 upstream.

In the last ilen case, i was already increased, resulting in accessing out-
of-boundary entry of do_replace and blkaddr.
Fix to check ilen first to exit the loop.

Fixes: 2aa8fbb9693020 ("f2fs: refactor __exchange_data_block for speed up")
Cc: stable@vger.kernel.org # 4.8+
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-09-25 15:01:52 -07:00
Jaegeuk Kim
91d38ba841 posix_acl: Clear SGID bit when setting file permissions
commit 073931017b49d9458aa351605b43a7e34598caef upstream.

Cherry-pick to f2fs only for generic/375 from:

(073931017: posix_acl: Clear SGID bit when setting file permissions)

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-09-25 15:01:36 -07:00
Jaegeuk Kim
ae81ccb3bd f2fs: fix wrong sum_page pointer in f2fs_gc
commit de0dcc40f6e24d6bac6b60e36eac4659bbbd3f00 upstream.

This patch fixes using a wrong pointer for sum_page in f2fs_gc.

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-09-25 15:01:24 -07:00
Jaegeuk Kim
c1286ff41c f2fs: backport from (4c1fad64 - Merge tag 'for-f2fs-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs)
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-09-25 14:27:55 -07:00
Zhen Kong
ec74a9da86 qseecom: check return value of __qseecom_process_reentrancy
make change to check return value of __qseecom_process_reentrancy,
and modify error processing.

Change-Id: I6a37de79f6c6b4245b9654ea9724b51e62b8e7a2
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2017-09-25 12:50:47 -07:00
Abhinav Kumar
2ee560a955 drm/msm: fix zero device count HDCP repeater test cases
Fix the handling of HDCP repeaters to mark part II
of the authentication as failure if they do not have
any devices connected to them.

Change-Id: I6b21ed2ce9a280f7e200404b05d111508a6d3dd8
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
2017-09-25 09:42:36 -07:00
Sayali Lokhande
e6b1f12020 scsi: ufshcd: Flush exception event before suspend
Exception event can be raised by the device when system
suspend is in progress. This will result in unclocked
register access in exception event handler as clocks will
be turned off during suspend. This change makes sure to flush
exception event handler work in suspend before disabling
clocks to avoid unclocked register access issue.

Change-Id: I5a089a0387790a12f4cc3213c75e9677467a2a07
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
2017-09-25 12:00:12 +05:30
Lynus Vaz
1e450489ff msm: kgsl: Don't read stale crashdumper data
After the crashdumper runs once, and the user sets the
snapshot_crashdumper sysfs node to 0, it is possible that stale data
is saved off into the snapshot. Check the value of the sysfs node at
the appropriate place to force a re-read of the data through the
legacy path.

Change-Id: Icf27c39b68d786003c33fd0eb22bd3e8b9a036be
Signed-off-by: Lynus Vaz <lvaz@codeaurora.org>
2017-09-25 11:12:12 +05:30
Linux Build Service Account
fa33f6bd9a Merge "SoC: msm: change the MAX value of "App Type Config" kcontrol" 2017-09-24 19:54:04 -07:00
Linux Build Service Account
b95d667366 Merge "ALSA: info: Protect list access of new entry" 2017-09-24 11:54:02 -07:00
Linux Build Service Account
fd84661ff9 Merge "ASoc: msm: Support primary TDM interface" 2017-09-24 11:54:01 -07:00
Linux Build Service Account
c9a659fda7 Merge "drm:msm:sde: enable sde client customization" 2017-09-24 11:54:00 -07:00
Linux Build Service Account
c1bb4291db Merge "ARM: dts: msm: Override GPU speed bin 2 for MSM8996Pro" 2017-09-24 04:37:31 -07:00
Linux Build Service Account
b624f7fdc6 Merge "ARM: dts: msm: update PCIe WAKE for msm8998 to be pull-up" 2017-09-24 04:37:30 -07:00
Animesh Kishore
315de9a16b mdss: mdp: Validate null commit for secure display
Secure display entry/exit should be accompanied
by null commit in video mode to make sure there is
no non secure access.

Change-Id: I7928a2465de9c46f69e963977931f7a6618f01fb
Signed-off-by: Animesh Kishore <animeshk@codeaurora.org>
2017-09-24 11:53:33 +05:30
Linux Build Service Account
f76f194117 Merge "msm: ais: Instead of read_lock use read_lock_irqsave" 2017-09-23 21:05:45 -07:00
Linux Build Service Account
eb1237204c Merge "msm: camera: Add laser LED support for depth sensor" 2017-09-23 11:51:00 -07:00
Vikram Mulukutla
650b6a5c41 Revert "ANDROID: sched/tune: Initialize raw_spin_lock in boosted_groups"
This reverts commit c5616f2f874faa20b59b116177b99bf3948586df.

If we re-init the per-cpu boostgroup spinlock every time that
we add a new boosted cgroup, we can easily wipe out (reinit)
a spinlock struct while in a critical section. We should only
be setting up the per-cpu boostgroup data, and the spin_lock
initialization need only happen once - which we're already
doing in a postcore_initcall.

For example:

     -------- CPU 0 --------   | -------- CPU1 --------
cgroupX boost group added      |
schedtune_enqueue_task         |
  acquires(bg->lock)           | cgroupY boost group added
                               |  for_each_cpu()
                               |    raw_spin_lock_init(bg->lock)
  releases(bg->lock)           |
      BUG (already unlocked)   |
                               |

This results in the following BUG from the debug spinlock code:
	BUG: spinlock already unlocked on CPU#5, rcuop/6/68

Change-Id: I3016702780b461a0cd95e26c538cd18df27d6316
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2017-09-23 01:25:03 +00:00
Linux Build Service Account
f3e5579307 Merge "cnss2: Set debug state when using debugfs dev_boot node" 2017-09-22 17:26:55 -07:00
Linux Build Service Account
242aa79d68 Merge "mhi: core: move mhi_states_transition_str out of stack" 2017-09-22 17:26:54 -07:00
Linux Build Service Account
51328a6128 Merge "cnss2: Return proper error code for nonsupported devices" 2017-09-22 17:26:53 -07:00
Linux Build Service Account
1c078745a0 Merge "Revert "ANDROID: sched/tune: Initialize raw_spin_lock in boosted_groups"" 2017-09-22 17:26:53 -07:00
Linux Build Service Account
61eb33bc00 Merge "serial: msm_serial_hs: Keep Rx and Tx path clean while going inactive" 2017-09-22 17:26:51 -07:00
Linux Build Service Account
21be58daa3 Merge "ARM: dts: msm: reserve memory for early-audio on msm8996" 2017-09-22 17:26:50 -07:00
Linux Build Service Account
2a4db076c7 Merge "arm/arm64: Define backport flag for save_stack_trace_tsk()" 2017-09-22 17:26:50 -07:00
Linux Build Service Account
374db4f744 Merge "drm/msm: Add save/restore functions for perfcounters" 2017-09-22 17:26:46 -07:00
Linux Build Service Account
bf0fbeead5 Merge "power: qpnp-fg-gen3: synchronize ESR extraction control configuration" 2017-09-22 17:26:45 -07:00
Linux Build Service Account
751d87898b Merge "vidc: Enable skip output buffers for video encoder" 2017-09-22 17:26:44 -07:00
Linux Build Service Account
6d73a0bbe1 Merge "udpv6: Fix the checksum computation when HW checksum does not apply" 2017-09-22 17:26:43 -07:00
Linux Build Service Account
3e07e9cdb5 Merge "ASoC: msm: qdsp6v2: change to no-wait command for RTIC event" 2017-09-22 17:26:42 -07:00
Sujeev Dias
554cfbe86c mhi: core: move mhi_states_transition_str out of stack
To prevent un-initialized address returning from MHI
state transition lookup table, move mhi_states_transition_str
array out of stack

CRs-Fixed: 2111049
Change-Id: Ife5f907a711cc0c615161f2b2a677275d6773686
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-09-22 14:58:55 -07:00
Yue Ma
7f6f914d71 cnss2: Set debug state when using debugfs dev_boot node
When using debugfs dev_boot node to trigger firmware download,
debug state should be set as well so that subsequence shutdown
and powerup can be handled correctly.

Change-Id: Id85d28dca104f8938d78655d682a0a7d1491c04c
CRs-fixed: 2059087
Signed-off-by: Yue Ma <yuem@codeaurora.org>
2017-09-22 12:57:50 -07:00
Linux Build Service Account
18dd1a7105 Merge "msm: camera: sensor: Add OIS read functionality" 2017-09-22 09:13:45 -07:00
Linux Build Service Account
42326e9777 Merge "ion: fix the return value of shrinkers" 2017-09-22 09:13:44 -07:00
Linux Build Service Account
cfe37b1eb4 Merge "arm64: stacktrace: avoid listing stacktrace functions in stacktrace" 2017-09-22 09:13:42 -07:00
Linux Build Service Account
b92301abd0 Merge "msm: mdss: Fix potential race condition in rotator" 2017-09-22 09:13:41 -07:00
Linux Build Service Account
ba64f1b64f Merge "ASoC: msm: qdsp6v2: Fix dangling pointer access" 2017-09-22 09:13:40 -07:00
Yujun Zhang
4fda2bf83c drm/sde: fix smmu fault while running DRM test
DRM test failed in 4K display. It is caused by
wrong configuration of physical pipe and flush
mask for layer mixer.

Change-Id: I0d2d50cf24ba2265c9f5b874526c5e4013e47d9e
CRs-Fixed: 2065974
Signed-off-by: Yujun Zhang <yujunzhang@codeaurora.org>
2017-09-22 06:43:33 -07:00
Archana Obannagari
4533fa3252 msm: kgsl: Fix size check issue in _read_fw2_block_header()
During firmware data read, it may leads to cross the max
range. Add a check to validate data size with in the max
range.

Change-Id: I12b3c1761214a7d2af2c45ad73bf61954c8398b6
Signed-off-by: Archana Obannagari <aobann@codeaurora.org>
2017-09-22 19:01:12 +05:30
Vikram Mulukutla
2bbf3a762a Revert "ANDROID: sched/tune: Initialize raw_spin_lock in boosted_groups"
This reverts commit c5616f2f874faa20b59b116177b99bf3948586df.

If we re-init the per-cpu boostgroup spinlock every time that
we add a new boosted cgroup, we can easily wipe out (reinit)
a spinlock struct while in a critical section. We should only
be setting up the per-cpu boostgroup data, and the spin_lock
initialization need only happen once - which we're already
doing in a postcore_initcall.

For example:

     -------- CPU 0 --------   | -------- CPU1 --------
cgroupX boost group added      |
schedtune_enqueue_task         |
  acquires(bg->lock)           | cgroupY boost group added
                               |  for_each_cpu()
                               |    raw_spin_lock_init(bg->lock)
  releases(bg->lock)           |
      BUG (already unlocked)   |
			       |

This results in the following BUG from the debug spinlock code:
	BUG: spinlock already unlocked on CPU#5, rcuop/6/68

CRs-fixed: 2113062
Change-Id: I1cd780d9ba5801cf99bfe46504b18a88e45f17a8
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2017-09-22 04:24:28 -07:00
Ch Ganesh Kumar
05f00d16b6 fb/msm: add support for HDR playback control sequence
HDR playback needs metadata to be sent to the sink
while the playback is ongoing and needs a proper
teardown sequence when the playback has ended with respect
to the infoframe being sent to the sink.

This needs a state machine to synchronize start/stop of
the playback with sending the right metadata along with
resetting the infoframe HDMI registers.

Add support for this HDR playback control state machine.

Change-Id: I58ff03bc8db99febd17e0a0853acc74668892ea8
Signed-off-by: Ch Ganesh Kumar <chganesh@codeaurora.org>
2017-09-22 16:44:18 +05:30
Guchun Chen
8c9aaddd85 ARM: dts: msm: disable secondary adv7533 on msm8996 lite board
Msm8996 adp lite board has two displays, native HDMI display and one
DSI-HDMI display through ADV7533 bridge chip. So only one ADV7533
instance is needed here. And at the meanwhile, total sde_kms components
need to match the configuration, otherwise, display driver probe will be
skipped due to this mismatch.

Change-Id: If596a64a9e47416e0810039914a958cae61c7e3e
CRs-Fixed: 2113147
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
2017-09-22 17:53:56 +08:00
Xu Han
414a690797 msm: camera: sensor: Add OIS read functionality
Adding capability to read OIS data, provided in the driver
register settings.

CRs-Fixed: 2114654
Change-Id: Ie10b55f597a4daa29267c6d4333ce9d9c7702d63
Signed-off-by: Xu Han <hanxu@codeaurora.org>
2017-09-21 23:35:03 -07:00
Shiju Mathew
8397353755 vidc: Enable skip output buffers for video encoder
Added feature to configure video h/w to send empty output buffer
for skipped frame due to rate control.

Change-Id: Id47344c3bae216fec6384ff205bcb658ec27cb06
Signed-off-by: Shiju Mathew <shijum@codeaurora.org>
2017-09-21 20:45:02 -07:00
Cong Tang
516bd75a2a ASoc: msm: Support primary TDM interface
Support primary TDM interface dai link and export kcontrols to update
primary TDM interface slot configuration.

CRs-fixed: 2095930
Change-Id: I693b99f295f6476c96d681e10459842c0011467f
Signed-off-by: Cong Tang <congt@codeaurora.org>
2017-09-21 20:10:27 -07:00
Yue Ma
3d8d9df0e1 cnss2: Add asynchronous probe support
Add asynchronous probe support so that CNSS2 platform driver is
able to probe in parallel with other device drivers which can
help to reduce kernel boot time.

Change-Id: I740cddafd7e3acfed19416b4183ad2487198a751
CRS-fixed: 2071634
Signed-off-by: Yue Ma <yuem@codeaurora.org>
2017-09-21 14:16:58 -07:00
Yue Ma
08b5a0333b cnss2: Return proper error code for nonsupported devices
Platform driver only forces FW assert for supported devices.
Return proper error code for nonsupported devices so that WLAN
host driver can handle properly.

Change-Id: Iaf88f64564b14425404404db6a7789a7913db74f
CRs-fixed: 2059087
Signed-off-by: Yue Ma <yuem@codeaurora.org>
2017-09-21 14:13:40 -07:00