From: Gustavo Padovan <gustavo@padovan.org>
To: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Cc: linux-media@vger.kernel.org, Hans Verkuil <hverkuil@xs4all.nl>,
Shuah Khan <shuahkh@osg.samsung.com>,
Pawel Osciak <pawel@osciak.com>,
Alexandre Courbot <acourbot@chromium.org>,
Sakari Ailus <sakari.ailus@iki.fi>,
Brian Starkey <brian.starkey@arm.com>,
Thierry Escande <thierry.escande@collabora.com>,
linux-kernel@vger.kernel.org,
Gustavo Padovan <gustavo.padovan@collabora.com>
Subject: Re: [PATCH v6 0/6] V4L2 Explicit Synchronization
Date: Thu, 21 Dec 2017 18:28:17 -0200 [thread overview]
Message-ID: <20171221202817.GA12003@jade> (raw)
In-Reply-To: <20171221164931.25064f63@vento.lan>
2017-12-21 Mauro Carvalho Chehab <mchehab@osg.samsung.com>:
> Em Mon, 11 Dec 2017 16:27:35 -0200
> Gustavo Padovan <gustavo@padovan.org> escreveu:
>
> > From: Gustavo Padovan <gustavo.padovan@collabora.com>
> >
> > Hi,
> >
> > One more iteration of the explicit fences patches, please refer
> > to the previous version[1] for more details about the general
> > mechanism
> >
> > This version makes the patchset and the implementation much more
> > simple, to start we are not using a ordered capability anymore,
> > but instead we have a VIDIOC_ENUM_FMT flag to tell when the
> > queue in not ordered. Drivers with ordered queues/formats don't
> > need implement anything. See patches 1 and 2 for more details.
> >
> > The implementation of in-fences and out-fences were condensed in
> > just patches 4 and 5, making it more self-contained and easy to
> > understand. See the patches for detailed changelog.
> >
> > Please review! Thanks.
>
> Hi Gustavo,
>
> As I was afraid, the changes at the VB2 core makes it non-generic,
> breaking support for the DVB VB2 patchset. That's a branch with
> both patchsets applied:
>
> https://git.linuxtv.org/mchehab/experimental.git/log/?h=dvb_mmap%2bexplicit_fences
>
>
> With the explicit fences patchset, the DVB streaming breaks:
>
> $ sudo perf stat dvbv5-zap -c ~/dvb_channel.conf "TV Brasilia RedeTV!" -o /dev/null -t120 -R
> Usando demux 'dvb0.demux0'
> lendo canais do arquivo '/home/mchehab/dvb_channel.conf'
> sintonizando em 557142857 Hz
> PID de vídeo 273
> dvb_set_pesfilter 273
> PID de áudio 274
> dvb_set_pesfilter 274
> Travado (0x1f) Sinal= -85,22dBm C/N= 18,57dB UCB= 8589933955 pós-BER= 0
> Travado (0x1f) Sinal= -85,24dBm C/N= 18,57dB UCB= 8589933955 pós-BER= 0
> Gravação iniciada para o arquivo '/dev/null'
> ERRO:DMX_REQBUFS failed: error=-1 (Invalid argument)
> ERRO:[stream_to_file] Failed to setup buffers!!! (Invalid argument)
> start streaming!!!
> copied 0 bytes (0 Kbytes/sec)
> Travado (0x1f) Sinal= -85,25dBm C/N= 18,57dB UCB= 8589933955 pós-BER= 0
I haven't tried it, not sure what could break it. I'll take a look on
it.
> Performance counter stats for 'dvbv5-zap -c /home/mchehab/dvb_channel.conf TV Brasilia RedeTV! -o /dev/null -t120 -R':
>
> 7.001647 task-clock-msecs # 0.003 CPUs
> 251 context-switches # 0.036 M/sec
> 18 CPU-migrations # 0.003 M/sec
> 181 page-faults # 0.026 M/sec
> 17001058 cycles # 2428.151 M/sec
> 11342660 instructions # 0.667 IPC
> 349075 cache-references # 49.856 M/sec
> 70802 cache-misses # 10.112 M/sec
>
> 2.133343557 seconds time elapsed
>
> It also breaks support on V4L2, when fences is not used:
>
> $ ./contrib/test/v4l2grab
> (kernel crashes)
>
> I don't have a serial console on this machine to print what's
> wrong, but clearly there's something not right there :-)
2 days ago I fixed the a crash when not using fences:
https://git.kernel.org/pub/scm/linux/kernel/git/padovan/linux.git/commit/?h=v4l2-fences&id=704419e59437e9f7bdc369b44a612685e8663880
Gustavo
prev parent reply other threads:[~2017-12-21 20:28 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-11 18:27 [PATCH v6 0/6] V4L2 Explicit Synchronization Gustavo Padovan
2017-12-11 18:27 ` [PATCH v6 1/6] [media] vb2: add is_unordered callback for drivers Gustavo Padovan
2017-12-21 18:51 ` Mauro Carvalho Chehab
2017-12-21 20:32 ` Gustavo Padovan
2017-12-11 18:27 ` [PATCH v6 2/6] [media] v4l: add 'unordered' flag to format description ioctl Gustavo Padovan
2017-12-21 18:17 ` Mauro Carvalho Chehab
2017-12-11 18:27 ` [PATCH v6 3/6] [media] vb2: add explicit fence user API Gustavo Padovan
2017-12-21 18:52 ` Mauro Carvalho Chehab
2017-12-21 20:36 ` Gustavo Padovan
2017-12-11 18:27 ` [PATCH v6 4/6] [media] vb2: add in-fence support to QBUF Gustavo Padovan
2017-12-21 18:57 ` Mauro Carvalho Chehab
2017-12-21 20:41 ` Gustavo Padovan
2017-12-11 18:27 ` [PATCH v6 5/6] [media] vb2: add out-fence " Gustavo Padovan
2017-12-11 18:27 ` [PATCH v6 6/6] [media] v4l: Document explicit synchronization behavior Gustavo Padovan
2017-12-21 18:49 ` [PATCH v6 0/6] V4L2 Explicit Synchronization Mauro Carvalho Chehab
2017-12-21 19:07 ` Mauro Carvalho Chehab
2017-12-21 20:28 ` Gustavo Padovan [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171221202817.GA12003@jade \
--to=gustavo@padovan.org \
--cc=acourbot@chromium.org \
--cc=brian.starkey@arm.com \
--cc=gustavo.padovan@collabora.com \
--cc=hverkuil@xs4all.nl \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@osg.samsung.com \
--cc=pawel@osciak.com \
--cc=sakari.ailus@iki.fi \
--cc=shuahkh@osg.samsung.com \
--cc=thierry.escande@collabora.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).