Hello,
Reach your target audience and invite them to your booth at Hy Fcell International Expo And Conference 2023 with our high-quality attendees contact database. If interested I can share the counts and pricing.
Looking forward for your reply.
Kind Regards,
Charlotte Miller - Marketing Assistant
If you do not wish to receive these messages, reply back with remove and we will make sure you don't receive any more emails from our end.
For DRM legacy gamma, AMD display manager applies implicit sRGB degamma
using a pre-defined sRGB transfer function. It works fine for DCN2
family where degamma ROM and custom curves go to the same color block.
But, on DCN3+, degamma is split into two blocks: degamma ROM for
pre-defined TFs and `gamma correction` for user/custom curves and
degamma ROM settings doesn't apply to cursor plane. To get DRM legacy
gamma working as expected, enable cursor degamma ROM for implict sRGB
degamma on HW with this configuration.
Cc: stable(a)vger.kernel.org
Link: https://gitlab.freedesktop.org/drm/amd/-/issues/2803
Fixes: 96b020e2163f ("drm/amd/display: check attr flag before set cursor degamma on DCN3+")
Signed-off-by: Melissa Wen <mwen(a)igalia.com>
---
v2: cc'ing stable
---
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
index df568a7cd005..b97cbc4e5477 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
@@ -1270,6 +1270,13 @@ void amdgpu_dm_plane_handle_cursor_update(struct drm_plane *plane,
attributes.rotation_angle = 0;
attributes.attribute_flags.value = 0;
+ /* Enable cursor degamma ROM on DCN3+ for implicit sRGB degamma in DRM
+ * legacy gamma setup.
+ */
+ if (crtc_state->cm_is_degamma_srgb &&
+ adev->dm.dc->caps.color.dpp.gamma_corr)
+ attributes.attribute_flags.bits.ENABLE_CURSOR_DEGAMMA = 1;
+
attributes.pitch = afb->base.pitches[0] / afb->base.format->cpp[0];
if (crtc_state->stream) {
--
2.40.1
Hi,
When using KVM on systems that require iTLB multihit mitigation enabled[1],
we're observing very high latency (70ms+) in KVM_CREATE_VM ioctl() in 6.1
kernel in comparison to older stable kernels such as 5.10. This is true even
when using favordynmods mount option.
We debugged this down to the cpuset controller trying to acquire cpuset_rwsem
in cpuset_can_attach(). This happens because KVM creates a worker thread which
calls cgroup_attach_task_all() during KVM_CREATE_VM. I don't know if
favordynmods is supposed to cover this case or not, but removing cpuset_rwsem
certainly solves the issue.
For the backport I tried to pick as many dependent commits as required to avoid
conflicts. I would highly appreciate review from cgroup people.
Tests performed:
* Measured latency in KVM_CREATE_VM ioctl(), it goes down to less than 1ms
* Ran the cgroup kselftest tests, got same results with or without this series
* However, some tests such as test_memcontrol and test_kmem are failing
in 6.1. This probably needs to be looked at
* To make test_cpuset_prs.sh work, I had to increase the timeout on line
592 to 1 second. With this change, the test runs and passes
* I run our downstream test suite against our downstream 6.1 kernel with this
series applied, it passed
[1] For the case where the CPU is not vulnerable to iTLB multihit we can
simply disable the iTLB multihit mitigation in KVM which avoids this
whole situation. Disabling the mitigation is possible since upstream
commit 0b210faf337 which I plan to backport soon
Daniel Vacek (1):
cgroup/cpuset: no need to explicitly init a global static variable
Juri Lelli (1):
sched/cpuset: Bring back cpuset_mutex
Waiman Long (3):
cgroup/cpuset: Optimize cpuset_attach() on v2
cgroup/cpuset: Skip task update if hotplug doesn't affect current
cpuset
cgroup/cpuset: Include offline CPUs when tasks' cpumasks in top_cpuset
are updated
include/linux/cpuset.h | 8 +-
kernel/cgroup/cpuset.c | 211 +++++++++++++++++++++++------------------
kernel/sched/core.c | 22 +++--
3 files changed, 139 insertions(+), 102 deletions(-)
--
2.40.1