diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2020-01-24 22:02:28 +0200 |
---|---|---|
committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2020-02-14 23:38:46 +0200 |
commit | 6e8a942b9ddc9b6b122e58a604bc3b452d2b8e8a (patch) | |
tree | bad83699acd29a5903fb087f5654758da41e7b82 /drivers/gpu/drm/drm_edid.c | |
parent | 4d23f48486240f6a5a43d1ff81bd44eee128b6a8 (diff) | |
download | lwn-6e8a942b9ddc9b6b122e58a604bc3b452d2b8e8a.tar.gz lwn-6e8a942b9ddc9b6b122e58a604bc3b452d2b8e8a.zip |
drm/edid: Document why we don't bounds check the DispID CEA block start/end
After much head scratching I managed to convince myself that
for_each_displayid_db() has already done the bounds checks for
the DispID CEA data block. Which is why we don't need to repeat
them in cea_db_offsets(). To avoid having to go through that
pain again in the future add a comment which explains this fact.
Cc: Andres Rodriguez <andresx7@gmail.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200124200231.10517-5-ville.syrjala@linux.intel.com
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
Diffstat (limited to 'drivers/gpu/drm/drm_edid.c')
-rw-r--r-- | drivers/gpu/drm/drm_edid.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index 8ba53472509d..61f77377b49f 100644 --- a/drivers/gpu/drm/drm_edid.c +++ b/drivers/gpu/drm/drm_edid.c @@ -4017,6 +4017,10 @@ cea_db_offsets(const u8 *cea, int *start, int *end) * no non-DTD data. */ if (cea[0] == DATA_BLOCK_CTA) { + /* + * for_each_displayid_db() has already verified + * that these stay within expected bounds. + */ *start = 3; *end = *start + cea[2]; } else if (cea[0] == CEA_EXT) { |