Commit Graph

22 Commits

Author SHA1 Message Date
Chodor, Jaroslaw 044fd1ab81 Fixing IntDescr programing for blocked cmd and MT
Fixing InterfaceDescriptor programming for
blocked commands when MidThread preemption is
enabled
Additionally, fixing couple of tests that block
global preemption enabling in ULTs

Change-Id: I454c9608f8606f23d7446785ac24c7c7d8701ae0
2018-01-17 12:19:07 +01:00
Mrozek, Michal 41f0ac3019 Check if we do not access outside of array.
Change-Id: I3357b745d36398ad52777054f64a7915278c0463
2018-01-17 09:33:57 +01:00
Zdanowicz, Zbigniew 602474f868 Command streamers should use device default engine type
Change-Id: I7286f15ba78001729ea489a43576d96f109d44f0
2018-01-16 22:37:44 +01:00
Artur Harasimiuk 3883f790cc Instrumentation refactoring
Use bool instead of int where it should be.
Tweak naming.
Removed unused members

Change-Id: I468be28d78e9da7c7fa1632e362ed077929fb91a
2018-01-16 16:15:44 +01:00
Mrozek, Michal dd601ff73a Utilize shortened version of optimal HW thread count in nx4 scenarios.
- also clean early return if simd size = 0

Change-Id: I9b01df091ab6dd6a3066d1a8762c7fb1530c2804
2018-01-16 14:47:07 +01:00
Mrozek, Michal ee250be942 Fix num thread per slice computation.
- It should use thread count not EU count.
- change variable name to reflect that we work on sublices.
- fix test description, add missing test
- change hasBarrier variable to be boolean

Change-Id: I627bdf17b661d2f9b5eb3d8cd6ca53eba5d46b81
2018-01-16 13:06:31 +01:00
Mrozek, Michal af77720f9c Fix resource destruction scheme on device closure.
- Call waitForTaskCountAndCleanAllocationList with latest flushed task count
to reflect what was actually sent to HW.

- refactor cleanAllocationList to waitForTaskCountAndCleanAllocationList

Change-Id: I5301185c5fce212e39eb017b952b43c279559cf4
2018-01-15 18:45:48 +01:00
Mrozek, Michal 7640201585 Allow squared algorithm to work together with base one.
Change-Id: I9087957bb427a422b1be632f6375c96b8f91a492
2018-01-12 12:05:04 +01:00
Chodor, Jaroslaw d290955a57 Preemption - SIP command programming
Change-Id: I4c7c805a77a9decb8f13d39055bfb2590209ca3e
2018-01-10 16:43:29 +01:00
Mateusz Jablonski 4f884496a6 Some minor fixes:
- Fix SUPPORT_X and TESTS_X flags in cmake
  Previously it was possible to enable TESTS_X with disabled SUPPORT_X

- Remove genX dirs from include paths

Change-Id: I70aa6ee4df6cc1ca641cce2e99b66f92f99fd4e1
2018-01-10 12:56:40 +01:00
Mrozek, Michal c8d9846d50 Enhance search pattern for early LWS finding path.
- Allows to find larger LWS in multiple cases.

Change-Id: I645f5bca5c8ccdcf8e0d4861e47fcbcad0395e7a
2018-01-10 08:20:02 +01:00
Mrozek, Michal 94ae9a3d1b Add debug functionality to dump LWS sizes.
- Refactor of LWS tests.

Change-Id: Ic47c88996a658f2168cc425f4598e91eced4756d
2018-01-09 15:41:11 +01:00
Mrozek, Michal b00819cafe Add refcount on MemObj in blocked scenarios.
- Prevents destruction of MemObj while it may still be in use.
- Add UNRECOVERABLE to check whether object is deleted while having
dependencies, fix all problems is tests due to that fact.
- Fix special queue setting, clean interfaces.

Change-Id: I2a467e80df00ea1650decdcfa6866acf10b441f8
2018-01-08 16:03:24 +01:00
Mrozek, Michal e9fd40db13 Do not update task count with not ready status.
- queue blocked status is handled by virtual event not task count.

Change-Id: I8979ba55d2319a75393c639b234dcd86cf2792ae
2018-01-05 14:01:17 +01:00
Mrozek, Michal a8b91c8c99 Refactor deducing blocked state and task level.
- Do this with one helper function.

Change-Id: I81dd3107a98db7e45a691ba6d5e708d98eabe3d2
2018-01-03 17:44:51 +01:00
Mrozek, Michal ec59a900e1 Fix for deadlock in mapImage scenarios.
- due to the fact that device mutex was obtained to prevent threaded access to
image there was a problem when other thread was also doing readImage call
That thread got read Image kernel mutex first and then it was acquiring device
mutex, which was taken by other thread doing mapImage call.

- In current code device mutex is not taken to service mapImage call, instead
image is being guarded by its own mutex.

Change-Id: Ic4c5a019708d7ec5b240bc5b08c5a65173827392
2018-01-03 12:33:12 +01:00
Zdanowicz, Zbigniew 5cfb102359 Add Preemption WA waModifyVFEStateAfterGPGPUPreemption for WALKER replay issue
Change-Id: I046e7296157b4b527ad65733ea417fbc364aac9c
2018-01-02 17:45:40 +01:00
Mrozek, Michal 2b91ea85c6 Fortify events
- add some debug breaks
- clean cmd ownership, there can't be situation when event holds 2 commands
- cmd meaning cleanup
- remove not needed try catch clause

Change-Id: I5ad6877e7235de2d7f48818467cb4b92655aab97
2017-12-22 15:05:28 +01:00
Hoppe, Mateusz a9f30a5059 Fix for Execution model PageFaults
- adding PC with MediaStateClear and MEDIA_VFE_STATE in
EMCleanupSection

Change-Id: I0ee0e121bc2fcc09ac79cb3b601591247326482a
2017-12-22 11:49:56 +01:00
Mrozek, Michal 2a00a15141 [n/n] Remove event registry.
Change-Id: Ie7da0f2dc944583771aaa80648217602ccff99ce
2017-12-21 14:46:27 +01:00
Mrozek, Michal 3284efff86 Do not use peekIsCompleted in isQueueBlocked.
- This causes event tree update if virtual event is holding commands or
callbacks
- That causes race between other threads that may be updating the tree

Change-Id: Ic80a8b71ed1e1c1deab8af1bc64f8ce81c21de1b
2017-12-21 08:13:43 +01:00
Brandon Fliflet 7e9ad41290 Initial commit
Change-Id: I4bf1707bd3dfeadf2c17b0a7daff372b1925ebbd
2017-12-21 00:45:38 +01:00