From: Andreas Oberritter <obi@linuxtv.org>
To: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: HoP <jpetrous@gmail.com>,
"Devin Heitmueller" <dheitmueller@kernellabs.com>,
"\"Sébastien RAILLARD (COEXSI)\"" <sr@coexsi.fr>,
"Rémi Denis-Courmont" <remi@remlab.net>,
linux-media@vger.kernel.org
Subject: Re: [RFC] vtunerc - virtual DVB device driver
Date: Tue, 21 Jun 2011 13:04:07 +0200 [thread overview]
Message-ID: <4E007AA7.7070400@linuxtv.org> (raw)
In-Reply-To: <4DFFF56D.5070602@redhat.com>
On 06/21/2011 03:35 AM, Mauro Carvalho Chehab wrote:
> Em 20-06-2011 18:31, HoP escreveu:
>> 2011/6/20 Mauro Carvalho Chehab <mchehab@redhat.com>:
>>> Em 20-06-2011 17:24, HoP escreveu:
>>>> 2011/6/20 Devin Heitmueller <dheitmueller@kernellabs.com>:
>>>>> On Mon, Jun 20, 2011 at 3:56 PM, HoP <jpetrous@gmail.com> wrote:
>>>>>> Do you think it is really serious enough reason to prevent of having
>>>>>> such virtualization driver in the kernel?
>>>>>>
>>>>>> Let check my situation and tell me how I should continue (TBH, I already
>>>>>> thought that driver can be accepted, but my dumb brain thought because
>>>>>> of non quality code/design or so. It was really big "surprise" which
>>>>>> reason was used aginst it):
>>>>>
>>>>> Yes, this is entirely a political issue and not a technical one.
>>>>
>>>> Political? So we can declare that politics win (again) technicians. Sad.
>>>
>>> This is not a political issue. It is a licensing issue. If you want to use
>>> someone's else code, you need to accept the licensing terms that the developers
>>> are giving you, by either paying the price for the code usage (on closed source
>>> licensing models), or by accepting the license when using an open-sourced code.
>>>
>>> Preserving the open-source eco-system is something that everyone
>>> developing open source expect: basically, you're free to do whatever
>>> you want, but if you're using a code written by an open-source developer,
>>> the expected behaviour that GPL asks (and that the developer wants, when he
>>> opted for GPL) is that you should return back to the community with any
>>> changes you did, including derivative work. This is an essential rule of working
>>> with GPL.
>>>
>>> If you're not happy with that, that's fine. You can implement another stack
>>> that is not GPL-licensed.
>>
>> Mauro, you totally misunderstood me. If you see on my first post in that thread
>> I was sending full GPL-ed driver to the mailinglist.
>
> You misunderstood me. Something that exposes the kernel interface to for an
> userspace client driver to implement DVB is not a driver, it is a wrapper.
>
> The real driver will be in userspace, using the DVB stack, and can even be
> closed source. Some developers already tried to do things like that and sell
> the userspace code. Such code submission were nacked. There is even one case
> where the kernelspace code were dropped due to that (and later, replaced by an
> opensource driver).
>
> We don't want to go on this way again.
Mauro and Devin, I think you're missing the point. This is not about
creating drivers in userspace. This is not about open or closed source.
The "vtuner" interface, as implemented for the Dreambox, is used to
access remote tuners: Put x tuners into y boxes and access them from
another box as if they were local. It's used in conjunction with further
software to receive the transport stream over a network connection.
Honza's code does the same thing.
You don't need it in order to create closed source drivers. You can
already create closed kernel drivers now. Also, you can create tuner
drivers in userspace using the i2c-dev interface. If you like to connect
a userspace driver to a DVB API device node, you can distribute a small
(open or closed) wrapper with it. So what are you arguing about?
Everything you're feared of can already be done since virtually forever.
If you're feared of exposing kernel interfaces to userspace, then I
think your only option is to remove the whole userspace. You might want
to remove i2c-dev and the loadable module interface first.
Regarding the code, Honza, I think the interface is neither clean nor
generic enough to be included in the kernel. It doesn't make much sense
to stay compatible to the interface used by the Dreambox. This interface
evolved from very old versions of the DVB API and therefore carries way
too much cruft and hacks for a shiny new interface. As a side note: Your
ioctl constants already differ from the original vtuner code.
IMO, at least these steps need to be taken:
- Remove unused code. You already mentioned it, but it really should be
removed before submitting code, because it makes review much harder.
- Remove redefined structs and constants.
- Drop support for anything older than S2API.
- Define a way to use an existing demux instead of registering a new
software demux. On hardware that supports it, an input channel should be
allocated for each vtuner, in order to use the hardware's filtering and
decoding capabilities.
- Drop VTUNER_SET_NAME, VTUNER_SET_HAS_OUTPUTS, VTUNER_SET_MODES,
VTUNER_SET_TYPE and VTUNER_SET_NUM_MODES. They are all either specific
to the Dreambox or already obsoleted by S2API commands or should be
implemented as new S2API commands.
Regards,
Andreas
next prev parent reply other threads:[~2011-06-21 11:04 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-19 0:10 [RFC] vtunerc - virtual DVB device driver HoP
2011-06-20 17:37 ` Rémi Denis-Courmont
2011-06-20 17:41 ` Devin Heitmueller
2011-06-20 18:17 ` HoP
2011-06-20 18:24 ` Devin Heitmueller
2011-06-20 19:10 ` Sébastien RAILLARD (COEXSI)
2011-06-20 19:36 ` Devin Heitmueller
2011-06-20 19:56 ` HoP
2011-06-20 20:02 ` Devin Heitmueller
2011-06-20 20:24 ` HoP
2011-06-20 20:47 ` Mauro Carvalho Chehab
2011-06-20 21:31 ` HoP
2011-06-21 1:35 ` Mauro Carvalho Chehab
2011-06-21 11:04 ` Andreas Oberritter [this message]
2011-06-21 12:05 ` Mauro Carvalho Chehab
2011-06-21 12:34 ` Andreas Oberritter
2011-06-21 12:54 ` Issa Gorissen
2011-06-21 12:34 ` HoP
2011-06-21 12:59 ` Mauro Carvalho Chehab
2011-06-21 13:44 ` Devin Heitmueller
2011-06-21 14:15 ` Andreas Oberritter
2011-06-21 14:34 ` Devin Heitmueller
2011-06-21 14:35 ` Mauro Carvalho Chehab
2011-06-21 15:09 ` Andreas Oberritter
2011-06-21 17:10 ` Mauro Carvalho Chehab
2011-06-21 17:38 ` HoP
2011-06-22 1:06 ` Markus Rechberger
2011-06-22 6:08 ` HoP
2011-06-22 12:17 ` Mauro Carvalho Chehab
2011-06-22 12:30 ` Andreas Oberritter
2011-06-22 12:55 ` Mauro Carvalho Chehab
2011-06-22 13:07 ` Andreas Oberritter
2011-06-22 13:21 ` HoP
2011-06-22 12:37 ` HoP
2011-06-22 13:03 ` Mauro Carvalho Chehab
2011-06-22 13:13 ` Andreas Oberritter
2011-06-22 13:45 ` Mauro Carvalho Chehab
2011-06-22 14:03 ` HoP
2011-06-22 14:23 ` Mauro Carvalho Chehab
2011-06-22 14:24 ` Andreas Oberritter
2011-06-22 15:19 ` Mauro Carvalho Chehab
2011-06-22 15:45 ` Andreas Oberritter
2011-06-22 19:18 ` Rémi Denis-Courmont
2011-06-22 22:24 ` Mauro Carvalho Chehab
2011-06-21 14:56 ` Bjørn Mork
2011-06-21 15:06 ` Mauro Carvalho Chehab
2011-06-21 14:59 ` Mauro Carvalho Chehab
2011-06-21 17:12 ` Markus Rechberger
2011-06-21 11:41 ` HoP
2011-06-22 16:20 ` Steven Toth
2011-06-20 22:11 ` Bjørn Mork
2011-06-20 22:36 ` HoP
2011-06-20 22:43 ` Devin Heitmueller
2011-06-20 19:40 ` Rémi Denis-Courmont
2011-06-22 17:08 ` Michael Krufky
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=4E007AA7.7070400@linuxtv.org \
--to=obi@linuxtv.org \
--cc=dheitmueller@kernellabs.com \
--cc=jpetrous@gmail.com \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@redhat.com \
--cc=remi@remlab.net \
--cc=sr@coexsi.fr \
/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