[igt-dev] [PATCH igt] lib/kms: Clear unused fields for getproperty ioctl

Ville Syrjälä ville.syrjala at linux.intel.com
Tue Feb 13 15:49:07 UTC 2018


On Tue, Feb 13, 2018 at 09:30:40AM +0000, Chris Wilson wrote:
> ==24749== Syscall param ioctl(generic) points to uninitialised byte(s)
> ==24749==    at 0x6A8ADC7: ioctl (syscall-template.S:84)
> ==24749==    by 0x5067687: drmIoctl (in /opt/xorg/lib64/libdrm.so.2.4.0)
> ==24749==    by 0x138531: kmstest_set_connector_dpms (igt_kms.c:1022)
> ==24749==    by 0x112937: set_dpms (kms_flip.c:263)
> ==24749==    by 0x112937: run_test_step (kms_flip.c:776)
> ==24749==    by 0x112937: event_loop (kms_flip.c:1138)
> ==24749==    by 0x115468: run_test_on_crtc_set (kms_flip.c:1378)
> ==24749==    by 0x115468: run_test (kms_flip.c:1450)
> ==24749==    by 0x1111CF: main (kms_flip.c:1673)
> ==24749==  Address 0x1ffefff2a0 is on thread 1's stack
> ==24749==  in frame #2, created by kmstest_set_connector_dpms (igt_kms.c:1012)
> 
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

Looks like all of the other fields are either stuff the kernel will
return to us, or ignored on account of the count_ stuff. So the kernel
doesn't seem to be missing any crucial input sanity checks.

Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>

> ---
>  lib/igt_kms.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index eb57f4a9..ecc7a799 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -1108,11 +1108,10 @@ void kmstest_set_connector_dpms(int fd, drmModeConnector *connector, int mode)
>  	bool found_it = false;
>  
>  	for (i = 0; i < connector->count_props; i++) {
> -		struct drm_mode_get_property prop;
> +		struct drm_mode_get_property prop = {
> +			.prop_id = connector->props[i],
> +		};
>  
> -		prop.prop_id = connector->props[i];
> -		prop.count_values = 0;
> -		prop.count_enum_blobs = 0;
>  		if (drmIoctl(fd, DRM_IOCTL_MODE_GETPROPERTY, &prop))
>  			continue;
>  
> -- 
> 2.16.1
> 
> _______________________________________________
> igt-dev mailing list
> igt-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev

-- 
Ville Syrjälä
Intel OTC


More information about the igt-dev mailing list