Re: [bug report] media: dvb_frontend: cleanup ioctl handling logic

2017-11-30 Thread Menion
Hello
Is anyone working on adding compact_ioctl?
So far it is impossible to use linux-media from 32bit userland on 64bit kernels
Bye

2017-11-30 10:58 GMT+01:00 Dan Carpenter :
> Hello Mauro Carvalho Chehab,
>
> The patch d73dcf0cdb95: "media: dvb_frontend: cleanup ioctl handling
> logic" from Sep 18, 2017, leads to the following static checker
> warning:
>
> drivers/media/dvb-core/dvb_frontend.c:2469 dvb_frontend_handle_ioctl()
> error: uninitialized symbol 'err'.
>
> drivers/media/dvb-core/dvb_frontend.c
>   2427  case FE_READ_UNCORRECTED_BLOCKS:
>   2428  if (fe->ops.read_ucblocks) {
>   2429  if (fepriv->thread)
>   2430  err = fe->ops.read_ucblocks(fe, parg);
>   2431  else
>   2432  err = -EAGAIN;
>   2433  }
>
> "err" isn't initialized if ->ops.read_ucblocks is NULL.
>
>   2434  break;
>   2435
>   2436  /* DEPRECATED DVBv3 ioctls */
>   2437
>   2438  case FE_SET_FRONTEND:
>   2439  err = dvbv3_set_delivery_system(fe);
>   2440  if (err)
>   2441  break;
>   2442
>   2443  err = dtv_property_cache_sync(fe, c, parg);
>   2444  if (err)
>   2445  break;
>   2446  err = dtv_set_frontend(fe);
>   2447  break;
>   2448  case FE_GET_EVENT:
>   2449  err = dvb_frontend_get_event (fe, parg, 
> file->f_flags);
>   2450  break;
>   2451
>   2452  case FE_GET_FRONTEND: {
>   2453  struct dtv_frontend_properties getp = 
> fe->dtv_property_cache;
>   2454
>   2455  /*
>   2456   * Let's use our own copy of property cache, in order 
> to
>   2457   * avoid mangling with DTV zigzag logic, as drivers 
> might
>   2458   * return crap, if they don't check if the data is 
> available
>   2459   * before updating the properties cache.
>   2460   */
>   2461  err = dtv_get_frontend(fe, , parg);
>   2462  break;
>   2463  }
>   2464
>   2465  default:
>   2466  return -ENOTSUPP;
>   2467  } /* switch */
>   2468
>   2469  return err;
> ^^
>   2470  }
>
> regards,
> dan carpenter


[bug report] media: dvb_frontend: cleanup ioctl handling logic

2017-11-30 Thread Dan Carpenter
Hello Mauro Carvalho Chehab,

The patch d73dcf0cdb95: "media: dvb_frontend: cleanup ioctl handling
logic" from Sep 18, 2017, leads to the following static checker
warning:

drivers/media/dvb-core/dvb_frontend.c:2469 dvb_frontend_handle_ioctl()
error: uninitialized symbol 'err'.

drivers/media/dvb-core/dvb_frontend.c
  2427  case FE_READ_UNCORRECTED_BLOCKS:
  2428  if (fe->ops.read_ucblocks) {
  2429  if (fepriv->thread)
  2430  err = fe->ops.read_ucblocks(fe, parg);
  2431  else
  2432  err = -EAGAIN;
  2433  }

"err" isn't initialized if ->ops.read_ucblocks is NULL.

  2434  break;
  2435  
  2436  /* DEPRECATED DVBv3 ioctls */
  2437  
  2438  case FE_SET_FRONTEND:
  2439  err = dvbv3_set_delivery_system(fe);
  2440  if (err)
  2441  break;
  2442  
  2443  err = dtv_property_cache_sync(fe, c, parg);
  2444  if (err)
  2445  break;
  2446  err = dtv_set_frontend(fe);
  2447  break;
  2448  case FE_GET_EVENT:
  2449  err = dvb_frontend_get_event (fe, parg, file->f_flags);
  2450  break;
  2451  
  2452  case FE_GET_FRONTEND: {
  2453  struct dtv_frontend_properties getp = 
fe->dtv_property_cache;
  2454  
  2455  /*
  2456   * Let's use our own copy of property cache, in order to
  2457   * avoid mangling with DTV zigzag logic, as drivers 
might
  2458   * return crap, if they don't check if the data is 
available
  2459   * before updating the properties cache.
  2460   */
  2461  err = dtv_get_frontend(fe, , parg);
  2462  break;
  2463  }
  2464  
  2465  default:
  2466  return -ENOTSUPP;
  2467  } /* switch */
  2468  
  2469  return err;
^^
  2470  }

regards,
dan carpenter