diff --git a/sys/dev/pci/drm/i915/display/intel_gmbus.c b/sys/dev/pci/drm/i915/display/intel_gmbus.c index a772962a993..eccf63962e1 100644 --- a/sys/dev/pci/drm/i915/display/intel_gmbus.c +++ b/sys/dev/pci/drm/i915/display/intel_gmbus.c @@ -605,8 +605,10 @@ gmbus_xfer_read_chunk(struct intel_display *display, val = intel_de_read_fw(display, GMBUS3(display)); do { - if (extra_byte_added && len == 1) + if (extra_byte_added && len == 1) { + len--; break; + } *buf++ = val & 0xff; val >>= 8;