[media] cec: log reason for returning -EINVAL
authorHans Verkuil <hverkuil@xs4all.nl>
Mon, 20 Feb 2017 20:19:13 +0000 (17:19 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Wed, 22 Mar 2017 14:15:23 +0000 (11:15 -0300)
When validating the struct cec_s_log_addrs input a debug message is printed
for all except two of the 'return -EINVAL' paths.

Also log the reason for the missing two paths.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/cec/cec-adap.c

index 9e25ba20f4d1d6c81522c76be93f4d7151354be4..46b7da6df9b5ceb8b537b63e2180ea611f728cc6 100644 (file)
@@ -1461,12 +1461,16 @@ int __cec_s_log_addrs(struct cec_adapter *adap,
         * within the correct range.
         */
        if (log_addrs->vendor_id != CEC_VENDOR_ID_NONE &&
-           (log_addrs->vendor_id & 0xff000000) != 0)
+           (log_addrs->vendor_id & 0xff000000) != 0) {
+               dprintk(1, "invalid vendor ID\n");
                return -EINVAL;
+       }
 
        if (log_addrs->cec_version != CEC_OP_CEC_VERSION_1_4 &&
-           log_addrs->cec_version != CEC_OP_CEC_VERSION_2_0)
+           log_addrs->cec_version != CEC_OP_CEC_VERSION_2_0) {
+               dprintk(1, "invalid CEC version\n");
                return -EINVAL;
+       }
 
        if (log_addrs->num_log_addrs > 1)
                for (i = 0; i < log_addrs->num_log_addrs; i++)