Re: [PATCH] media: ttpci/ttusb: add extra parameter to filter callbacks

2018-02-25 Thread kbuild test robot
Hi Mauro,

I love your patch! Yet something to improve:

[auto build test ERROR on linuxtv-media/master]
[also build test ERROR on v4.16-rc3 next-20180223]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:
https://github.com/0day-ci/linux/commits/Mauro-Carvalho-Chehab/media-ttpci-ttusb-add-extra-parameter-to-filter-callbacks/20180226-144150
base:   git://linuxtv.org/media_tree.git master
config: i386-randconfig-x019-201808 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386 

All errors (new ones prefixed by >>):

   drivers/media/usb/ttusb-dec/ttusb_dec.c: In function 
'ttusb_dec_audio_pes2ts_cb':
>> drivers/media/usb/ttusb-dec/ttusb_dec.c:430:2: error: too many arguments to 
>> function 'dec->audio_filter->feed->cb.ts'
 dec->audio_filter->feed->cb.ts(data, 188, NULL, 0,
 ^~~
   drivers/media/usb/ttusb-dec/ttusb_dec.c: In function 
'ttusb_dec_video_pes2ts_cb':
>> drivers/media/usb/ttusb-dec/ttusb_dec.c:440:2: error: too many arguments to 
>> function 'dec->video_filter->feed->cb.ts'
 dec->video_filter->feed->cb.ts(data, 188, NULL, 0,
 ^~~
   drivers/media/usb/ttusb-dec/ttusb_dec.c: In function 'ttusb_dec_process_pva':
   drivers/media/usb/ttusb-dec/ttusb_dec.c:492:4: error: too many arguments to 
function 'dec->video_filter->feed->cb.ts'
   dec->video_filter->feed->cb.ts(pva, length, NULL, 0,
   ^~~
   drivers/media/usb/ttusb-dec/ttusb_dec.c:553:4: error: too many arguments to 
function 'dec->audio_filter->feed->cb.ts'
   dec->audio_filter->feed->cb.ts(pva, length, NULL, 0,
   ^~~
   drivers/media/usb/ttusb-dec/ttusb_dec.c: In function 
'ttusb_dec_process_filter':
>> drivers/media/usb/ttusb-dec/ttusb_dec.c:591:3: error: too many arguments to 
>> function 'filter->feed->cb.sec'
  filter->feed->cb.sec(&packet[2], length - 2, NULL, 0,
  ^~

vim +430 drivers/media/usb/ttusb-dec/ttusb_dec.c

^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  425  
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  426  static int ttusb_dec_audio_pes2ts_cb(void *priv, unsigned char 
*data)
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  427  {
f961e71a0 drivers/media/dvb/ttusb-dec/ttusb_dec.c Alex Woods
2006-01-09  428 struct ttusb_dec *dec = priv;
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  429  
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16 @430 dec->audio_filter->feed->cb.ts(data, 188, NULL, 0,
daaf93025 drivers/media/usb/ttusb-dec/ttusb_dec.c Mauro Carvalho Chehab 
2018-02-23  431
&dec->audio_filter->feed->feed.ts, NULL);
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  432  
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  433 return 0;
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  434  }
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  435  
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  436  static int ttusb_dec_video_pes2ts_cb(void *priv, unsigned char 
*data)
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  437  {
f961e71a0 drivers/media/dvb/ttusb-dec/ttusb_dec.c Alex Woods
2006-01-09  438 struct ttusb_dec *dec = priv;
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  439  
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16 @440 dec->video_filter->feed->cb.ts(data, 188, NULL, 0,
daaf93025 drivers/media/usb/ttusb-dec/ttusb_dec.c Mauro Carvalho Chehab 
2018-02-23  441
&dec->video_filter->feed->feed.ts, NULL);
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  442  
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  443 return 0;
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  444  }
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  445  
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  446  static void ttusb_dec_set_pids(struct ttusb_dec *dec)
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  447  {
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  448 u8 b[] = { 0x00, 0x00, 0x00, 0x00,
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_dec.c Linus Torvalds
2005-04-16  4490x00, 0x00, 0xff, 0xff,
^1da177e4 drivers/media/dvb/ttusb-dec/ttusb_

Re: [PATCH] media: ttpci/ttusb: add extra parameter to filter callbacks

2018-02-25 Thread kbuild test robot
Hi Mauro,

I love your patch! Yet something to improve:

[auto build test ERROR on linuxtv-media/master]
[also build test ERROR on v4.16-rc3 next-20180223]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:
https://github.com/0day-ci/linux/commits/Mauro-Carvalho-Chehab/media-ttpci-ttusb-add-extra-parameter-to-filter-callbacks/20180226-144150
base:   git://linuxtv.org/media_tree.git master
config: x86_64-randconfig-x004-201808 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64 

All errors (new ones prefixed by >>):

   drivers/media/pci/ttpci/av7110_av.c: In function 'av7110_record_cb':
>> drivers/media/pci/ttpci/av7110_av.c:101:10: error: too many arguments to 
>> function 'dvbdmxfeed->cb.ts'
  return dvbdmxfeed->cb.ts(buf, len, NULL, 0,
 ^~
   drivers/media/pci/ttpci/av7110_av.c: In function 'dvb_filter_pes2ts_cb':
   drivers/media/pci/ttpci/av7110_av.c:111:2: error: too many arguments to 
function 'dvbdmxfeed->cb.ts'
 dvbdmxfeed->cb.ts(data, 188, NULL, 0,
 ^~
   drivers/media/pci/ttpci/av7110_av.c: In function 'p_to_t':
>> drivers/media/pci/ttpci/av7110_av.c:817:3: error: too many arguments to 
>> function 'feed->cb.ts'
  feed->cb.ts(obuf, 188, NULL, 0, &feed->feed.ts, NULL);
  ^~~~
--
   drivers/media/pci/ttpci/av7110.c: In function 'DvbDmxFilterCallback':
>> drivers/media/pci/ttpci/av7110.c:325:10: error: too many arguments to 
>> function 'dvbdmxfilter->feed->cb.sec'
  return dvbdmxfilter->feed->cb.sec(buffer1, buffer1_len,
 ^~~~
>> drivers/media/pci/ttpci/av7110.c:332:11: error: too many arguments to 
>> function 'dvbdmxfilter->feed->cb.ts'
   return dvbdmxfilter->feed->cb.ts(buffer1, buffer1_len,
  ^~~~

vim +101 drivers/media/pci/ttpci/av7110_av.c

^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
90  
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
91  
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
92  int av7110_record_cb(struct dvb_filter_pes2ts *p2t, u8 *buf, size_t len)
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
93  {
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
94  struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *) p2t->priv;
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
95  
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
96  if (!(dvbdmxfeed->ts_type & TS_PACKET))
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
97  return 0;
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
98  if (buf[3] == 0xe0)  // video PES do not have a length in TS
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16   
99  buf[4] = buf[5] = 0;
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16  
100  if (dvbdmxfeed->ts_type & TS_PAYLOAD_ONLY)
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16 
@101  return dvbdmxfeed->cb.ts(buf, len, NULL, 0,
daaf9302 drivers/media/pci/ttpci/av7110_av.c Mauro Carvalho Chehab 2018-02-23  
102   &dvbdmxfeed->feed.ts, NULL);
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16  
103  else
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16  
104  return dvb_filter_pes2ts(p2t, buf, len, 1);
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16  
105  }
^1da177e drivers/media/dvb/ttpci/av7110_av.c Linus Torvalds2005-04-16  
106  

:: The code at line 101 was first introduced by commit
:: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:: TO: Linus Torvalds 
:: CC: Linus Torvalds 

---
0-DAY kernel test infrastructureOpen Source Technology Center
https://lists.01.org/pipermail/kbuild-all   Intel Corporation


.config.gz
Description: application/gzip


Re: [PATCH] media: ttpci/ttusb: add extra parameter to filter callbacks

2018-02-23 Thread Mauro Carvalho Chehab
Em Fri, 23 Feb 2018 19:52:48 +0200
Laurent Pinchart  escreveu:

> Hi Mauro,
> 
> Thank you for the patch.
> 
> On Friday, 23 February 2018 18:43:48 EET Mauro Carvalho Chehab wrote:
> > The filter callbaks now have an optional extra argument,
> > meant to allow reporting statistics to userspace via mmap.
> > 
> > Set those to NULL, in order to avoid those build errors:
> >   + drivers/media/pci/ttpci/av7110.c: error: too few arguments to function
> > 'dvbdmxfilter->feed->cb.sec':  => 325:10 +
> > drivers/media/pci/ttpci/av7110.c: error: too few arguments to function
> > 'dvbdmxfilter->feed->cb.ts':  => 332:11 +
> > drivers/media/pci/ttpci/av7110_av.c: error: too few arguments to function
> > 'feed->cb.ts':  => 817:3
> >   
> 
> I think this misses a Fixes: line. Apart from that it looks good to me.
> 
> With the Fixes: line,
> 
> Acked-by: Laurent Pinchart 

Thanks for review.

While not too late, I actually decided in favor of merging it with the
original patch, in order to avoid git bisect issues, as the other patch
was applied today on my fixes branch.

Regards,
Mauro


Re: [PATCH] media: ttpci/ttusb: add extra parameter to filter callbacks

2018-02-23 Thread Laurent Pinchart
Hi Mauro,

Thank you for the patch.

On Friday, 23 February 2018 18:43:48 EET Mauro Carvalho Chehab wrote:
> The filter callbaks now have an optional extra argument,
> meant to allow reporting statistics to userspace via mmap.
> 
> Set those to NULL, in order to avoid those build errors:
>   + drivers/media/pci/ttpci/av7110.c: error: too few arguments to function
> 'dvbdmxfilter->feed->cb.sec':  => 325:10 +
> drivers/media/pci/ttpci/av7110.c: error: too few arguments to function
> 'dvbdmxfilter->feed->cb.ts':  => 332:11 +
> drivers/media/pci/ttpci/av7110_av.c: error: too few arguments to function
> 'feed->cb.ts':  => 817:3
> 

I think this misses a Fixes: line. Apart from that it looks good to me.

With the Fixes: line,

Acked-by: Laurent Pinchart 

> Signed-off-by: Mauro Carvalho Chehab 
> ---
>  drivers/media/pci/ttpci/av7110.c|  5 +++--
>  drivers/media/pci/ttpci/av7110_av.c |  6 +++---
>  drivers/media/usb/ttusb-dec/ttusb_dec.c | 10 +-
>  3 files changed, 11 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/media/pci/ttpci/av7110.c
> b/drivers/media/pci/ttpci/av7110.c index dc8e577b2f74..d6816effb878 100644
> --- a/drivers/media/pci/ttpci/av7110.c
> +++ b/drivers/media/pci/ttpci/av7110.c
> @@ -324,14 +324,15 @@ static int DvbDmxFilterCallback(u8 *buffer1, size_t
> buffer1_len, }
>   return dvbdmxfilter->feed->cb.sec(buffer1, buffer1_len,
> buffer2, buffer2_len,
> -   &dvbdmxfilter->filter);
> +   &dvbdmxfilter->filter, NULL);
>   case DMX_TYPE_TS:
>   if (!(dvbdmxfilter->feed->ts_type & TS_PACKET))
>   return 0;
>   if (dvbdmxfilter->feed->ts_type & TS_PAYLOAD_ONLY)
>   return dvbdmxfilter->feed->cb.ts(buffer1, buffer1_len,
>buffer2, buffer2_len,
> -  
> &dvbdmxfilter->feed->feed.ts);
> +  
> &dvbdmxfilter->feed->feed.ts,
> +  NULL);
>   else
>   av7110_p2t_write(buffer1, buffer1_len,
>dvbdmxfilter->feed->pid,
> diff --git a/drivers/media/pci/ttpci/av7110_av.c
> b/drivers/media/pci/ttpci/av7110_av.c index 4daba76ec240..ef1bc17cdc4d
> 100644
> --- a/drivers/media/pci/ttpci/av7110_av.c
> +++ b/drivers/media/pci/ttpci/av7110_av.c
> @@ -99,7 +99,7 @@ int av7110_record_cb(struct dvb_filter_pes2ts *p2t, u8
> *buf, size_t len) buf[4] = buf[5] = 0;
>   if (dvbdmxfeed->ts_type & TS_PAYLOAD_ONLY)
>   return dvbdmxfeed->cb.ts(buf, len, NULL, 0,
> -  &dvbdmxfeed->feed.ts);
> +  &dvbdmxfeed->feed.ts, NULL);
>   else
>   return dvb_filter_pes2ts(p2t, buf, len, 1);
>  }
> @@ -109,7 +109,7 @@ static int dvb_filter_pes2ts_cb(void *priv, unsigned
> char *data) struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)
> priv;
> 
>   dvbdmxfeed->cb.ts(data, 188, NULL, 0,
> -   &dvbdmxfeed->feed.ts);
> +   &dvbdmxfeed->feed.ts, NULL);
>   return 0;
>  }
> 
> @@ -814,7 +814,7 @@ static void p_to_t(u8 const *buf, long int length, u16
> pid, u8 *counter, memcpy(obuf + l, buf + c, TS_SIZE - l);
>   c = length;
>   }
> - feed->cb.ts(obuf, 188, NULL, 0, &feed->feed.ts);
> + feed->cb.ts(obuf, 188, NULL, 0, &feed->feed.ts, NULL);
>   pes_start = 0;
>   }
>  }
> diff --git a/drivers/media/usb/ttusb-dec/ttusb_dec.c
> b/drivers/media/usb/ttusb-dec/ttusb_dec.c index a8900f5571f7..44ca66cb9b8f
> 100644
> --- a/drivers/media/usb/ttusb-dec/ttusb_dec.c
> +++ b/drivers/media/usb/ttusb-dec/ttusb_dec.c
> @@ -428,7 +428,7 @@ static int ttusb_dec_audio_pes2ts_cb(void *priv,
> unsigned char *data) struct ttusb_dec *dec = priv;
> 
>   dec->audio_filter->feed->cb.ts(data, 188, NULL, 0,
> -&dec->audio_filter->feed->feed.ts);
> +&dec->audio_filter->feed->feed.ts, NULL);
> 
>   return 0;
>  }
> @@ -438,7 +438,7 @@ static int ttusb_dec_video_pes2ts_cb(void *priv,
> unsigned char *data) struct ttusb_dec *dec = priv;
> 
>   dec->video_filter->feed->cb.ts(data, 188, NULL, 0,
> -&dec->video_filter->feed->feed.ts);
> +&dec->video_filter->feed->feed.ts, NULL);
> 
>   return 0;
>  }
> @@ -490,7 +490,7 @@ static void ttusb_dec_process_pva(struct ttusb_dec *dec,
> u8 *pva, int length)
> 
>   if (output_pva) {
>   dec->video_filter->feed->cb.ts(pva, length, NULL, 0,
> - &dec->video_filter->feed->feed.ts)