⬢ DragonFlyBSD Kernel Audit
DF-4778 / fix.diff
← back to finding ↓ download raw
diff -ur a/sys/dev/drm/amd/display/dc/dce/dce_aux.c b/sys/dev/drm/amd/display/dc/dce/dce_aux.c
--- a/sys/dev/drm/amd/display/dc/dce/dce_aux.c
+++ b/sys/dev/drm/amd/display/dc/dce/dce_aux.c
@@ -499,7 +499,7 @@
 			ctx->invalid_reply_retry_aux = 0;
 
 			ctx->reply.length = ctx->returned_byte;
-			ctx->reply.data = ctx->buffer;
+			ctx->reply.data = ctx->buffer + ctx->offset;
 
 			process_read_reply(engine, ctx);
 		}
diff -ur a/sys/dev/drm/amd/display/dc/i2caux/aux_engine.c b/sys/dev/drm/amd/display/dc/i2caux/aux_engine.c
--- a/sys/dev/drm/amd/display/dc/i2caux/aux_engine.c
+++ b/sys/dev/drm/amd/display/dc/i2caux/aux_engine.c
@@ -202,7 +202,7 @@
 			ctx->invalid_reply_retry_aux = 0;
 
 			ctx->reply.length = ctx->returned_byte;
-			ctx->reply.data = ctx->buffer;
+			ctx->reply.data = ctx->buffer + ctx->offset;
 
 			process_read_reply(engine, ctx);
 		}