This separates the kref for ion handles into two components.
Userspace requests through the ioctl will hold at most one
reference to the internally used kref. All additional requests
will increment a separate counter, and the original reference is
only put once that counter hits 0. This protects the kernel from
a poorly behaving userspace.
Bug: 34276203
Change-Id: Ibc36bc4405788ed0fea7337b541cad3be2b934c0
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Git-repo: https://android.googlesource.com/kernel/msm/
Git-commit: 20abfcc16884a5af973a5e91dd013ddd789c44f4
[d-cagle@codeaurora.org: Resolve style issues]
Signed-off-by: Dennis Cagle <d-cagle@codeaurora.org>
Commit <be0960374> ("scsi: ufs: scale up the gear in 2 steps") introduced
a bug where we would not scale up the gear to HS-G3 if
UFS_DEVICE_QUIRK_HS_G1_TO_HS_G3_SWITCH quirk isn't enabled for UFS device.
Fix this by allowing HS-G3 scaling irrespective of quirk state.
Change-Id: Id6a958fb2908ae773283bcdd3dc871292e56f4ce
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
This reverts commit e92f72194d.
This change caused issues for sdcardfs on top of vfat
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Change-Id: Ife2ac6d9af40e4ddb95b7261e1dad4d7817e3779
This patch segregates different PD data onto separate buffers
and then onto its own data stream.
CRs-Fixed: 2019189
Change-Id: I09c4e1a7da0ccd3ba3e025e9f13da0fbcb95f103
Signed-off-by: Manoj Prabhu B <bmanoj@codeaurora.org>
Value computed is not being used in the statement which is causing
a compilation error on some build flavors. Fix the issue by not
computing the value as it is not needed.
Change-Id: Ia628388deb3057da45989d6376503048b08e8167
Signed-off-by: Ashish Garg <ashigarg@codeaurora.org>
This snapshot is taken as of
msm-3.18 'commit 7e1165aac628 ("Merge drivers: iio: bmi160:
Enabled the buffering support for BMI160 Sensor")'
CRs-Fixed: 2035593
Change-Id: I2951e77f226062d82e84a26fce6ab932b9685223
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
Currently both sde_crtc_atomic_begin() and
sde_crtc_atomic_flush() add the CRTC state event
to the cached sde_crtc->event.
This has a potential NULL ptr issue in the
case of vblank event firing in between sde_crtc_atomic_begin() and
sde_crtc_atomic_flush() because the upstream DRM vblank API
send_vblank_event() doesn't consider the case when the VBLANK
interrupt could have already freed any pending vblank events.
Remove the caching from sde_crtc_atomic_begin() to avoid this
condition.
Also make sure that a page_flip event was indeed submitted before
signaling the complete_flip() by setting a PENDING_FLIP flag right
after HW flush.
Change-Id: Ib201d2851e57bf22ec1f00814fc2e4dd2f35bfa1
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Signed-off-by: Yunyun Cao <yunyunc@codeaurora.org>
Buffer overflow can occur if MBA firmware size exceeds 1MB.
So validate size before copying the firmware.
CRs-Fixed: 2001803
Change-Id: I070ddf85fbc47df072e7258369272366262ebf46
Signed-off-by: Kishor PK <kpbhat@codeaurora.org>
Request for memory with GFP_NOIO so that new IO
request is not raised while reclaiming the memory when
system is having low memory. With GFP_KERNEL a deadlock
is possible with scm function requsting for memory during
PFK operation intiated by block layer through storage
driver. With low memory system will try to
reclaim some memory. If GFP_KERNEL is used this
will lead to IO operation through storage driver
which is already serving PFK encryption call hence
can not take up this IO request causing deadlock.
Change-Id: I1a4abbea31f430ca5f8ba030babf958a9ab51fdf
Signed-off-by: Neeraj Soni <neersoni@codeaurora.org>
Backlight gpio was enabled during panel power on. So backlight
was turned on before commit was sent to the panel. Ensure
backlight gpio is enabled only after the backlight level is set.
Change-Id: I30a0a0cfc1c07761ae2b2bea8424d79e7e22ec42
Signed-off-by: Ashish Garg <ashigarg@codeaurora.org>
For some use cases, mdp clock source needs to be parked at a safe
frequency when it is disabled and force enabled in order to execute
a safe dynamic switch. Add support for the same by adding
non_local_children flag.
Change-Id: Idcbaef90fdfcb80e93b00c61a91e5eadaabfbf56
Signed-off-by: Amit Nischal <anischal@codeaurora.org>
When SMMU stage1 is enabled, set IOVA base and end in geometry
attr to allow PCIe driver to map the GIC MSI address.
Change-Id: I7826a941823a6204143ea077a45c71b22316699b
Signed-off-by: Maya Erez <merez@codeaurora.org>
Minidump only collect parts of memory which are registered
to its table. So add lpm_debug buffer to Minidump table.
Change-Id: I8635542411a560a88530ffbbfe033cd48d3507dc
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
Add Minidump support for clients to get minimum required data
at the time of system crash. The Minidump table resides in SMEM,
BOOT(SBL) will iterate the table entries and dumps out (to USB/Flash)
the data in address location.
Any client can register to this table with static or known addresses,
as currently Minidump doesn't support dumping of dynamic data structures.
To simplify post processing, we create an ELF header, where each entry in
the minidump table is a section in elf header.
If Memory dump table enabled, Dump all data entries registered with MDT.
Enable Minidump:
echo mini > /sys/kernel/dload/dload_mode
Change-Id: I0fc8d21aef71ded34a498426ee3d7f86b063a639
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
For branch clocks having aggr_sibling_rates flag as set, get_rate()
always returns the parents rate despite the branch clocks prepare
status. Fix the same by adding a check for branch prepare status
and aggr_sibling_rates flag value.
Change-Id: If0ba62e178f14bc5fd8ec6007a67538a9b97285b
Signed-off-by: Amit Nischal <anischal@codeaurora.org>
MTP function doesn't show as a drive in Windows when the device
is connected to PC's USB3 port, because device fails to respond
ACK to BULK OUT transfer request.
This patch modifies MTP OUT request length as multiple of MaxPacketSize
per databook requirement in order to fix this issue.
Patchset: mtp
Change-Id: I090d7880ff00c499dc5ba7fd644b1fe7cd87fcb5
Signed-off-by: Jiebing Li <jiebing.li@intel.com>
Signed-off-by: Wang, Yu <yu.y.wang@intel.com>
Signed-off-by: Russ Weight <russell.h.weight@intel.com>
Filter out the fb events which don't need to be handled.
Change-Id: I0dd748aec54594454f0d5333255f1ccb71b49201
Signed-off-by: Alex Sarraf <asarraf@codeaurora.org>
Currently, FG driver configures ESR FCC manually when charging is
enabled and parallel charging is enabled. However, when Qnovo is
enabled, it needs to be configured even when parallel charging is
not enabled. This makes sure that the ESR pulses don't cause any
overshoot when FCC is high already and thus help reducing VLIM
errors seen on Qnovo.
Change-Id: Iabe9e7ea785534d673978f081d20584de1480559
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Not all filesystems support changing the owner of a file.
We shouldn't complain if it doesn't happen.
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Bug: 37488099
Change-Id: I403e44ab7230f176e6df82f6adb4e5c82ce57f33
For file based encryption, ext4 explicitly does not
create negative dentries for encrypted files. If you
force one over it, the decrypted file will be hidden
until the cache is cleared. Instead, just fail out.
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Bug: 37231161
Change-Id: Id2a9708dfa75e1c22f89915c529789caadd2ca4b
Adapted from wrapfs
commit 8c49eaa0sb9c ("Wrapfs: ->iget fixes")
Change where we igrab/iput to ensure we always hold a valid lower_inode.
Return ENOMEM (not EACCES) if iget5_locked returns NULL.
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Bug: 35766959
Change-Id: Id8d4e0c0cbc685a0a77685ce73c923e9a3ddc094