public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Mauro Carvalho Chehab <mchehab@redhat.com>
To: Antti Palosaari <crope@iki.fi>
Cc: linux-media@vger.kernel.org
Subject: Re: [PATCH] [media] drxk: Switch the delivery system on FE_SET_PROPERTY
Date: Fri, 09 Dec 2011 20:11:53 -0200	[thread overview]
Message-ID: <4EE287A9.3000502@redhat.com> (raw)
In-Reply-To: <4EE25CB4.3000501@iki.fi>

On 09-12-2011 17:08, Antti Palosaari wrote:
> On 12/09/2011 08:58 PM, Mauro Carvalho Chehab wrote:
>> On 09-12-2011 16:26, Antti Palosaari wrote:
>>> On 12/09/2011 08:20 PM, Mauro Carvalho Chehab wrote:
>>>> The DRX-K doesn't change the delivery system at set_properties,
>>>> but do it at frontend init. This causes problems on programs like
>>>> w_scan that, by default, opens both frontends.
>>>>
>>>> Instead, explicitly set the format when set_parameters callback is
>>>> called.
>>>
>>> May I ask why you don't use mfe_shared flag instead?
>>
>> Tested with it. Works. It takes a little more time to switch, but the
>> solution will be cleaner. version 2 will follow.
>
> Yes, there is kind of loop timer which tries to take FE and swithing takes second or two
>because it waits FE is freed. I looked it when I did MFE and I did not understood why
>it was done like that.
>
> cxd2820r has earlier simple lock (inside of demod driver) that just
> returned error immediately when busy. It is a little bit mystery for
> me why mfe_shared has that kind of waiting mechanism.

Still, it doesn't make much sense, at least on w_scan, as the only thing that is
called with each adapter is FE_GET_INFO:


open("/dev/dvb/adapter0/frontend0", O_RDWR|O_NONBLOCK) = 3
ioctl(3, FE_GET_INFO, 0x635120)         = 0
write(2, "\t/dev/dvb/adapter0/frontend0 -> "..., 92	/dev/dvb/adapter0/frontend0 -> DVB-C "DRXK DVB-C": specified was DVB-T -> SEARCH NEXT ONE.
) = 92
close(3)                                = 0
open("/dev/dvb/adapter0/frontend1", O_RDWR|O_NONBLOCK) = 3
ioctl(3, FE_GET_INFO, 0x635120)         = 0
write(2, "\t/dev/dvb/adapter0/frontend1 -> "..., 52	/dev/dvb/adapter0/frontend1 -> DVB-T "DRXK DVB-T": ) = 52
write(2, "good :-)\n", 9good :-)
)               = 9
close(3)                                = 0

Still, the second open takes about 4 seconds to complete, _even_ with O_NONBLOCK.

There's something bad there, as it is violating POSIX.

>Could someone explain reason for that?

I dunno, but I think this needs to be fixed, at least when the frontend
is opened with O_NONBLOCK.

Regards,
Mauro.

  reply	other threads:[~2011-12-09 22:12 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-09 18:20 [PATCH] [media] drxk: Switch the delivery system on FE_SET_PROPERTY Mauro Carvalho Chehab
2011-12-09 18:26 ` Antti Palosaari
2011-12-09 18:58   ` Mauro Carvalho Chehab
2011-12-09 19:08     ` Antti Palosaari
2011-12-09 22:11       ` Mauro Carvalho Chehab [this message]
2011-12-09 22:33         ` Devin Heitmueller
2011-12-09 23:37           ` Mauro Carvalho Chehab
2011-12-09 23:43             ` Mauro Carvalho Chehab
2011-12-10  1:37               ` [PATCH] DVB: dvb_frontend: fix delayed thread exit Andreas Oberritter
2011-12-10  1:59                 ` Devin Heitmueller
2011-12-10  2:06                   ` Andreas Oberritter
2011-12-10  2:25                     ` Devin Heitmueller
2011-12-10 10:28                       ` Mauro Carvalho Chehab
2011-12-10 13:43                         ` Devin Heitmueller
2011-12-10 16:16                           ` Mauro Carvalho Chehab
2011-12-10 11:12                 ` Mauro Carvalho Chehab
2011-12-09 19:00   ` [PATCHv2] [media] drxk: Switch the delivery system on FE_SET_PROPERTY Mauro Carvalho Chehab
2011-12-09 20:04     ` Eddi De Pieri
2011-12-09 22:04       ` Mauro Carvalho Chehab
2011-12-10  4:00     ` Oliver Endriss
2011-12-10 11:18       ` Mauro Carvalho Chehab

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=4EE287A9.3000502@redhat.com \
    --to=mchehab@redhat.com \
    --cc=crope@iki.fi \
    --cc=linux-media@vger.kernel.org \
    /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