Age | Commit message (Collapse) | Author |
|
Using hardcoded page order is problematic for 16k page support. Using
the same logic that DDK uses in our integration code as well.
Bug: 324571986
Test: local build
Change-Id: I6509fb35418d85045b0d4f788c47c5cae1f6da64
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
SBMerger: 605678113
Change-Id: If06ce446c9a36df7852f5263daae715e07872669
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Freeing kprcs using kfree() triggered a bunch of warning in debug_api
kernel build flavor.
Bug: 325892033
Test: Make sure that debug_api build does not trigger a warning.
Change-Id: Iddea1d12a9190fa328b488ee01065c5e2abc9557
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
SBMerger: 605678113
Change-Id: I27e9fd48e364464bc46a0738997d7eae4c2fbfb0
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Improve MMU page teardown.
Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/6429
Test: local build and boot
Bug: 315967882
Signed-off-by: Renato Grottesi <otaner@google.com>
Change-Id: Idb0afac63d6ee5f13f7fd72b7060e3fd1f49391a
|
|
IFPO feature has been unusued and only creates overhead for smooth
driver updates.
Bug: 324019470
Change-Id: Iab65e95b9ba21d74cc158557e3fa78d4478c9a71
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
This commit removes the following additions:
* SHA1: 76ee8a596d1df56bd958e2197abcc3e8b4849171
* SHA1: d6c306f413a32d460c310aab5c3f7f5449ed5599
* SHA1: 3a6116996ae69b28bd2f78093045582a1f06f71e
as none of them are required anymore and they interact poorly with DDK
upgrades.
Bug: 321195074
Test: Local & abtd
Change-Id: I7e4daf7bed82e4162413d7f38ce2a6d65172cbfe
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
SBMerger: 603054162
Change-Id: Ifb4b3eabd13347ac888d117f2ebea44a07b4456f
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Bug: 319408928
Test: Build and boot
Change-Id: I8d577c15498cdb41116142238a4a7f7bde7bdf8a
Signed-off-by: Varad Gautam <varadgautam@google.com>
|
|
SBMerger: 571992243
Change-Id: If44aa83f1fd1e3e3faed16efe2ee089b33142a60
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Based on the commit 440a991eda5dfb08e9f6ba1234a475dd8bd89325 with
further changes.
Bug: 320427777
Test: Manually tested the error path.
Signed-off-by: Shashank Sharma <shawshanks@google.com>
Change-Id: Ibb4b18ae14f8ec03379acf2b4892b212b46607c3
|
|
R47P0 refactored the way registers are accessed causing our additional
debug logging to access invalid addresses.
Bug: 321645561
Test: Locally verified by timeout on suspend.
Change-Id: I772601c08551a92916c03b2e0d24f5f1476f6cf6
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
This commit adds a fallback path to load the default firmware if the
release versioned firmware fails to load.
Bug: 297471843
Test: Locally booted with & without release firmware
Change-Id: Ie5321ef334e47293c1a42f37dc0473caaaa345f9
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
SBMerger: 571992243
Change-Id: I5db256e800446e0b66c7734e3bb0482ac56879f2
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Bug: 301208289
Test: gfxbench
Change-Id: I799115a5c3a6221c074c20b037d51e7a93d96845
Signed-off-by: Mattias Simonsson <mattiass@google.com>
|
|
There might be multiple GPU activities in a work period (500ms).
Current gpu_metrics implementation merged all GPU activities for the
given work period and emit single tracepoint rather than emitting
per-activity multiple tracepoints. This loses the granularity of each
activity even if the total active time of a context (application) for
a work period is correct. For better granularity, we instead emit one tracepoint per GPU activity.
Since we don't have to merge activities in a work period, some members
of struct kbase_gpu_metrics_ctx are no longer needed.
|------------------- Work-period 1 -----------------------|
S1---E1 S2----E2 S3------------E3
For work-period 1, previously 1 tracepoint was emitted and now 3 will be
emitted for better granularity of GPU activity.
|------------------- Work-period 2 -----------------------|
S1---E1
S2--------E2
S3------------------E3
For work-period 2 (overlapped case), they will be treated as 1 activity.
Hence 1 tracepoint will be emitted as previously.
'multiple null jobs' will be skipped as the kbase change will emit
tracepoint per each activity.
Bug: 301904509
Test: Perfetto trace inspection (Oriole, Felix, Husky)
Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/6314
Change-Id: I21b8ebe7af3b429dcd9fef20dabf97295a2a5ab7
Signed-off-by: Mattias Simonsson <mattiass@google.com>
|
|
SBMerger: 571992243
Change-Id: If2216ffa8b46dbc736ed4347556bf5bf4cba214c
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Now kbase_csf_scheduler_init does cleanup if mali-gpuq-kthread wasn't
created and kbase_csf_scheduler_term tries to stop the thread only if
it doesn't have error
Bug: 318576353
Provenance: b/305128960#comment7
Change-Id: I008d11ead3388919dd4e7ce8ee5540785a3d26a3
Signed-off-by: Alina Kalyakina <alinakalyakina@google.com>
|
|
In R47P0, MIDCET-5076 had a few issues. These are fixes on top of the
upstream driver.
Bug: 315967882
Test: Compile & Boot
Change-Id: I43707ff80a660455439c0ab5350e9ce192179af0
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
Bug: 300854197
Change-Id: I53af79897a341c292f01f773e4271188f3a1131b
Signed-off-by: Pindar Yang <pindaryang@google.com>
|
|
into android13-gs-pixel-5.10-24Q2
|
|
Bug: 312206733
Change-Id: I154b927152d768944e02fe6083e66bdbb0f47e3a
Signed-off-by: Varad Gautam <varadgautam@google.com>
|
|
and use it throughout kbase.
Bug: 312206733
Change-Id: Iba908d1dff259aef4bfc35d0ca9df8682e759a9c
Signed-off-by: Varad Gautam <varadgautam@google.com>
|
|
kobject_uevent_env() shouldn't be called from an interrutpt ctx. Log a
warning and return early if pixel_gpu_uevent_send() is accidentally
called from an interrupt.
Bug: 312206733
Change-Id: I66dc5f14c4bf736ffa423aed701906d9da5e00ec
Signed-off-by: Varad Gautam <varadgautam@google.com>
|
|
to not miss any failing GPU resets.
Bug: 312206733
Change-Id: I2890aacba4724e8d72c7c955793e1487d0a7ef6a
Signed-off-by: Varad Gautam <varadgautam@google.com>
|
|
Emit job slot and ctx information for atoms hitting
hard-stop and reset timeouts.
Bug: 300182515
Change-Id: Iabbd35e24a19ce0d826bb14b3de44899370721dd
Signed-off-by: Jörg Wagner <jorwag@google.com>
|
|
Bug: 300854197
Change-Id: I4683b2bd7eff741aa9830b951359d665b18871c4
Signed-off-by: Pindar Yang <pindaryang@google.com>
|
|
Update KMD to R47P0
Bug: 315267052
Test: Outlined in go/pixel-gpu-kmd-r47p0
Change-Id: I89454c4c862033fe330b260a9bc6cc777a3ca231
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
This commit adds:
- In Bifrost JM GPUs, L2 cache is explicitly flushed before the
power down of shader cores and cores are powered down before L2
is powered down.
- On older CSF GPUs, MCU will be halted before L2 is powered down and
FW will flush the L2 on halt.
Bug: 316204986
Test: Local SST
Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/6275
Signed-off-by: Michael Stokes <mjstokes@google.com>
Change-Id: Ia8ba830cbaab6d9739c96e2a4851eef5a33f236e
|
|
GPUCORE-40571 Fix invalid page table entries from occuring.
This patch prevents the invalid page table entries from occuring.
Bug: 316204010
Change-Id: I6aa1fdb9f0a40dab5d8a7d1dcd85f7485c960a22
Signed-off-by: Renato Grottesi <otaner@google.com>
Test: platform can boot.
Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/6262
|
|
SBMerger: 571992243
Change-Id: I5ff4da2cfed896ab41f74b1be820d2380fdb4768
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
SBMerger: 571992243
Change-Id: I23b773676959f97affe314596f6e16b37ddbf1f7
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
MIDCET-4882,GPUCORE-40989 Break deadlock BTW user thread
and page fault worker
Additional fix over the previous commit where Arm forgot to change a
kbase_gpu_vm_lock to kbase_gpu_vm_lock_with_pmode_sync.
Bug: 301064831
Change-Id: I9179e0b4e4c7151c83061152fd877aba7204f037
Signed-off-by: Renato Grottesi <otaner@google.com>
Test: manual run of the use case from the ticket
Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/6221
|
|
Provenance: ipdelivery@ad01e50d640910a99224382bb227e6d4de627657
Change-Id: I19ac9bce34a5c5a319c1b4a388e8b037b3dfe6e7
|
|
MIDCET-4882,GPUCORE-40989 Break deadlock BTW user thread and page fault worker
This commit adds a RW semaphore 1> to prevent MMU operations during
P.Mode entrance and 2> to break the deadlock on 'kctx reg_lock'
between user thread and page-fault worker thread.
Bug: 301064831
Signed-off-by: Renato Grottesi <otaner@google.com>
Test: manual run of the use case from the ticket
Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/6221
Change-Id: I692f8fafc558a6a45b5ca4210aa3f66c2617553f
|
|
SBMerger: 571992243
Change-Id: I25ad2b6e1db4db2b6d99780c2038ddb53ccdab06
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
kbase_csf_kcpu_queue_new() places a queue ptr into
kctx->csf.kcpu_queues.array and proceeds to alloc/populate metadata.
If metadata setup fails, kbase kfree()-s the queue and bails out,
leaving behind a stale queue ptr in the array.
Using such a queue object crashes the kernel (eg. in delete_queue()).
Change-Id: I9c4117ac3e938567aedfa7a7d343254c2e2fa48d
Signed-off-by: Varad Gautam <varadgautam@google.com>
Bug: 303353064
|
|
These are addressed in mali kbase upstream R46P0 driver.
This commit can be reverted when R46P0 is merged in.
Bug: 302343291
Test: Local build
Change-Id: I113d3f06ce2098e5db8b6957fd77076b9e6bde14
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
Address kernel-doc warnings in pixel gpu components
Bug: 302343291
Test: Local build
Change-Id: Ia5a654f5acd1c6ee5245472792553d0d2e2d9e49
Signed-off-by: Vamsidhar reddy Gaddam <gvamsi@google.com>
|
|
Bug: 300854197
SBMerger: 571992243
Change-Id: Idcd27a05bcccb9738bb0e4d8216b062c9d834062
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Bug: 277090000
Test: Trigger sscd
Change-Id: I6ca23cc74806efc364b10ee17e654f4252d3ec1f
Signed-off-by: Yunju Lee <yunjulee@google.com>
|
|
Bug: 300854197
SBMerger: 571992243
Change-Id: Ie9096d3afd31c2e5959618fb2f1354bca8be3cfd
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
If a slot number parsed from trace data exceeds the number of supported
CSG slots, the trace data must be discarded. Otherwise the access to
the invalid memory address could happen.
Bug: 304341806
Provenance: https://code.ipdelivery.arm.com/c/GPU/mali-ddk/+/6057
Signed-off-by: Jörg Wagner <jorwag@google.com>
Change-Id: I8e702e7487f2bea3618f2fe8ad696a1b546f10f2
|
|
Bug: 300854197
SBMerger: 558810260
Change-Id: I1fd011faa1af3472ac4ef0b70560f44da49cdf2d
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Fix potential out-of-bounds read due to missing bounds check.
Bug: 298264460
Signed-off-by: Guus Sliepen <gsliepen@google.com>
Change-Id: I57b67a4177e4fe6d84a261eeb00b6b833da5486b
Merged-In: I57b67a4177e4fe6d84a261eeb00b6b833da5486b
|
|
Bug: 299948695
Change-Id: I28bde3744a365fb5a8b7794c26b5adf507041eec
|
|
Bug: 299991153
Change-Id: I63342d7ca91f4150d7e5e376d8e91f0accf22dd4
|
|
Bug: 300854197
SBMerger: 558810260
Change-Id: I2533a7f40800e1b5c32633543af66d1a58d66a43
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
|
|
Storing the waitqueue in struct kbase_context leaves epoll holding a
stale pointer to it, which it later attempts to deref and crashes the
kernel in:
[*][T15976] remove_wait_queue+0x64/0x190
[40350.510681][T15976] ep_unregister_pollwait+0x98/0xe8
Move this waitqueue to struct kbase_file to ensure that
it lives long enough during process termination that the
ep_unregister_pollwait access is valid (b/302281297).
Bug: 300750575
Test: SST: b/302324090#comment4, repro: b/300750575#comment26
Change-Id: Ib161a7d7d4314bb6951bddbd87183a7dc71d5ac0
Signed-off-by: Varad Gautam <varadgautam@google.com>
|
|
Move macros, struct, and functions required by sscd from source file to
header file. Add firmware core dump segment to sscd. Implement firmware
core dump in sscd.
Bug: 277090000
Test: Trigger sscd manually
Change-Id: I3546e74e647e60f13f18c5e9ef6a4a24413f02fb
|