Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-24 Thread Hans Verkuil

 On Sat, 21 Mar 2009, Mauro Carvalho Chehab wrote:
  When this thread was started, it was about dropping support for
  kernels  2.6.22.  However, it has turned into a thread about moving
  to git and dropping support for *all* kernels less than the bleeding
  edge -rc candidate (only supporting them through a backport system for
  testers).  The two are very different things.

 Yes they are very different things.  I do not like a poll about dropping
 the current build system being disguised as a poll about dropping support
 for very old kernels.  How about a new poll, should developers be
 required
 to have multiple systems and spend the majority of their time recompiling
 new kernels and testing nvidia and wireless drivers?

The poll was just about dropping support for old kernels. Nothing more,
nothing less. There were a few who commented that they wouldn't mind
dropping all compatibility, but those were very much a minority. I for one
want to keep the compatibility code in one way or another so we can
support the last X kernels and make life easy for ourselves and for our
users.

Regards,

   Hans

-- 
Hans Verkuil - video4linux developer - sponsored by TANDBERG

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-21 Thread Devin Heitmueller
On Fri, Mar 20, 2009 at 11:04 PM, Mauro Carvalho Chehab
mche...@infradead.org wrote:
 Devin,

 Please, don't invert the things.

 I am the one that is trying to defend the need of keeping the backport, while
 most of you are trying to convince to me to just drop it, since developers 
 will
 run the bleeding edge -rc.

 With the argument that developers shouldn't run the bleeding edge kernel, I'd
 say you should do it. This is the way kernel development is. You shouldn't 
 send
 something upstream, if your patch doesn't run with the latest -rc. In my case,
 I have my alpha environment for such tests, separated from the environment I
 write my code. This allows me to do development on a more stable environment,
 being sure that it will keep running with the latest kernel.

 With the respect of using the backported environment for developing, you can 
 do
 it, if you want. It will be available for all usages. Have you ever seen the
 approach I'm proposing at my backported tree? I can't see why you couldn't use
 it for development also.

Mauro,

When this thread was started, it was about dropping support for
kernels  2.6.22.  However, it has turned into a thread about moving
to git and dropping support for *all* kernels less than the bleeding
edge -rc candidate (only supporting them through a backport system for
testers).  The two are very different things.

I agree with the general consensus that we should raise the minimum
bar from 2.6.16 to 2.6.22.  And I also believe that we need to ensure
that we do not want to lose testers by requiring them to run the
latest kernel release.  However, now we are talking about what the
*developers* are expected to run.  What has now been proposed is
changing the build system such that developers must run the latest -rc
kernel, which I do not believe is a good idea.  It makes it easier for
the maintainer to merge patches, however at the cost of the other
developers trying to focus on v4l-dvb development without having to
worry about whether this week's -rc kernel is going to work in their
environment.

It already takes me half an hour to checkout and build the latest
v4l-dvb tree.  Telling me that now I'm going to have to download and
build the entire kernel on a weekly basis, as well as deal with
whatever crap gets broken in my environment, is too much for many
developers who don't work for a distribution vendor.  For a developer
working nights and weekends on this stuff, this ends up being a
significant fraction of my development time.

I just want it to be clear that there are developers who are not
willing to run the latest -rc kernel just for the luxury of being able
to contribute to v4l-dvb.

Devin

-- 
Devin J. Heitmueller
http://www.devinheitmueller.com
AIM: devinheitmueller
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-21 Thread Mauro Carvalho Chehab
On Sat, 21 Mar 2009 08:05:51 -0400
Devin Heitmueller devin.heitmuel...@gmail.com wrote:

 On Fri, Mar 20, 2009 at 11:04 PM, Mauro Carvalho Chehab
 mche...@infradead.org wrote:
  Devin,
 
  Please, don't invert the things.
 
  I am the one that is trying to defend the need of keeping the backport, 
  while
  most of you are trying to convince to me to just drop it, since developers 
  will
  run the bleeding edge -rc.
 
  With the argument that developers shouldn't run the bleeding edge kernel, 
  I'd
  say you should do it. This is the way kernel development is. You shouldn't 
  send
  something upstream, if your patch doesn't run with the latest -rc. In my 
  case,
  I have my alpha environment for such tests, separated from the environment I
  write my code. This allows me to do development on a more stable 
  environment,
  being sure that it will keep running with the latest kernel.
 
  With the respect of using the backported environment for developing, you 
  can do
  it, if you want. It will be available for all usages. Have you ever seen the
  approach I'm proposing at my backported tree? I can't see why you couldn't 
  use
  it for development also.
 
 Mauro,
 
 When this thread was started, it was about dropping support for
 kernels  2.6.22.  However, it has turned into a thread about moving
 to git and dropping support for *all* kernels less than the bleeding
 edge -rc candidate (only supporting them through a backport system for
 testers).  The two are very different things.

 
 I agree with the general consensus that we should raise the minimum
 bar from 2.6.16 to 2.6.22.  And I also believe that we need to ensure
 that we do not want to lose testers by requiring them to run the
 latest kernel release.  However, now we are talking about what the
 *developers* are expected to run.  What has now been proposed is
 changing the build system such that developers must run the latest -rc
 kernel, which I do not believe is a good idea.  It makes it easier for
 the maintainer to merge patches, however at the cost of the other
 developers trying to focus on v4l-dvb development without having to
 worry about whether this week's -rc kernel is going to work in their
 environment.
 

As I said before, this is not the proper moment for such discussions. People
are still focused on the 2.6.30 merge stuff. We should discuss it by the end of
the merge window, discussing the newly model to be used starting at the 2.6.31 
cycle.

It is important to discuss a new model, since the current one has some flaws,
like:
- bug fixes are sometimes postponed, since they depend on the bleeding edge
patches;
- our model is different from the rest of Linux kernel community;
- it is hard to merge patches that needs coordination with changes outside
drivers/media;
- the need of conversion for each -hg patch into -git;
- the need of backport upstream changes at the building system, and keeping
track of such changes.
- the increased volume of patches on v4l/dvb made our development model
incredible complex for submitting work upstream, since it doesn't scale well,
and has caused some hard to solve merge conflicts.

From my side, I never proposed to drop the backport system, but to improve it,
in a way that people can keep working and testing the subsystem with legacy
kernels, although I've seen several comments on this poll where people are
arguing to just drop all backports.

 It already takes me half an hour to checkout and build the latest
 v4l-dvb tree.  Telling me that now I'm going to have to download and
 build the entire kernel on a weekly basis, as well as deal with
 whatever crap gets broken in my environment, is too much for many
 developers who don't work for a distribution vendor.  For a developer
 working nights and weekends on this stuff, this ends up being a
 significant fraction of my development time.

It seems that you're afraid of the unknown. There are several ways to use -git.
You can even use a spare git clone, where, for example, only drivers/media will
be cloned on your local machine. 

Since we haven't discussed how a new development model would work, it is
pointless to be against something that were not even proposed. And it weren't
proposed yet due to the fact that people didn't have time yet to prepare a
proposal and test it.

Also, due to the need of providing fix packages for linux-next, the current
development kernel and the last stable one, this means that any model we use
will need to work properly on all those cases.

 I just want it to be clear that there are developers who are not
 willing to run the latest -rc kernel just for the luxury of being able
 to contribute to v4l-dvb.

If we review the poll comments, and include some occasional emails about our
development model, we'll have all sorts of different opinions:
- People that want to keep backports as-is;
- People that want to set the baseline to 2.6.22;
- People that want to set a higher line (some even proposed to cut it to support
  

Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-20 Thread Hans Werner
 Hans,
 
 On Mon, 2 Mar 2009 22:18:24 +0100
 Hans Verkuil hverk...@xs4all.nl wrote:
 
  In the final analysis I'm the boss of my own time. And I've decided that
  once the conversion of all the i2c modules is finished I'll stop
 spending 
  time on the compatibility code for kernels 2.6.22 as it is simply no 
  longer an effective use of my time. If someone else wants to spend time
 on 
  that, then that's great and I will of course answer questions or help in
  whatever way is needed.
  
  I know that Mauro thinks he can keep the backwards compat code in by
 doing 
  nifty code transformations. It would be nice if he succeeds (and I have
 no 
  doubt that it is possible given enough time and effort), but personally
 I 
  think it is time better spent elsewhere.
 
 It required just a couple of hours today, in order to add the I2C
 conversion
 rules on the backport tree:
 
   http://linuxtv.org/hg/~mchehab/backport/
 
 There, I used, as example, the tea6415c.c file that you sent me, meant to
 be an
 example of a driver converted to use just the new I2C API. I've removed
 from it
 all the other #ifdefs for 2.6.26, so, the module doesn't have any compat
 bits
 (except for compat.h that can also be handled by the script). I didn't
 compile
 the entire tree, since several drivers will break, as they aren't ported
 yet
 to the new I2C style.
 
 Maybe a few adjustments on the backport.pl may be needed, after having all
 drivers converted to 2.6.22, since the final version may need some other
 patching rules.
 
 That's said, the backport tree is still an experimental work. The scripts
 require more time to be tested, and the Makefiles need some cleanups.

Mauro,

neat, but I still think time spent on backporting work would be better
spent on cutting-edge development. Two hours here ... two hours there
... it all adds up to a significant investment of time.

 Beside the fact that we don't need to strip support for legacy kernels,
 the
 advantage of using this method is that we can evolute to a new development
 model. As several developers already required, we should really use the
 standard -git tree as everybody's else. This will simplify a lot the way
 we
 work, and give us more agility to send patches upstream.

Great! Do you have a plan for how soon a move to the standard git tree
will happen? The sooner the better IMO.

 With this backport script, plus the current v4l-dvb building systems, and
 after
 having all backport rules properly mapped, we can generate a test tree
 based on -git drivers/media, for the users to test the drivers against
 their
 kernels, and still use a clean tree for development.
 
 Cheers,
 Mauro

If I understand correctly you are suggesting that a backporting
system would continue to exist?

Why? Surely this would be a heavy ball-and-chain to drag around for 
eternity. Why not lose the backporting and go for the simplicity and 
agility you mentioned above?

Regards,
Hans W.

-- 
Release early, release often.

Pt! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: 
http://www.gmx.net/de/go/multimessenger01
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-20 Thread Mauro Carvalho Chehab
On Fri, 20 Mar 2009 21:47:07 +0100
Hans Werner hwern...@gmx.de wrote:

  That's said, the backport tree is still an experimental work. The scripts
  require more time to be tested, and the Makefiles need some cleanups.
 
 Mauro,
 
 neat, but I still think time spent on backporting work would be better
 spent on cutting-edge development. Two hours here ... two hours there
 ... it all adds up to a significant investment of time.

True. Yet, the more easy for end users to have their devices working on their
environments, the more number of end tail contributions we'll have, fixing
issues on specific devices whose the main developers don't have.

  Beside the fact that we don't need to strip support for legacy kernels,
  the
  advantage of using this method is that we can evolute to a new development
  model. As several developers already required, we should really use the
  standard -git tree as everybody's else. This will simplify a lot the way
  we
  work, and give us more agility to send patches upstream.
 
 Great! Do you have a plan for how soon a move to the standard git tree
 will happen? The sooner the better IMO.

Let's first finish 2.6.30 merge window. Then, we'll have more time to cleanup
the tree and think on moving to git. Now, everyone is focused on having their
work done for the next tree.

 If I understand correctly you are suggesting that a backporting
 system would continue to exist?
 
 Why? Surely this would be a heavy ball-and-chain to drag around for 
 eternity. Why not lose the backporting and go for the simplicity and 
 agility you mentioned above?

My suggestion is to keep a backporting system, but more targeted at the
end-users. The reasons are the ones explained above. Basically:

- Allow end-users to test the drivers without requiring immediate
  kernel upgrade to the latest -rc-git tree, on their environments;
- Offer a tree where people can use to generate contributions like adding
  new devices at cards table.

It should also be clear for all that the backported system is not targeted on
offering any kind of implicit or explicit warranty that a driver will work
on a legacy kernel. It is a paper of the distros to provide such kind of
support. Also, to provide such warranty, other files outside linux/media would
need to be patched [1].
 
So, the backport should keep being provided as a best-effort model, just like
what we have right now with all the backports on our tree: we expect it to
work, but it may not work on some environments. No warranties are given.

I intend to write a proposal about it sometime after the merge window, for
people to comment and to contribute with.

[1] Just as an example, the USB video drivers leak memory if you're using
isoc USB transfers on kernels bellow 2.6.29. So, after some stress conditions,
you can eventually run out of memory on legacy kernels. The fix is outside the
linux media scope (it is due to a bug at ehci_hcd scheduler).

Cheers,
Mauro
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-20 Thread Devin Heitmueller
On Fri, Mar 20, 2009 at 6:20 PM, Mauro Carvalho Chehab
mche...@infradead.org wrote:
 My suggestion is to keep a backporting system, but more targeted at the
 end-users. The reasons are the ones explained above. Basically:

Ok, so just so we're all on the same page - we're telling all the
developers not willing to run a bleeding edge rc kernel to screw off?

Got an Nvidia video card?  Go away!
The wireless broken in this week's -rc candidate?  Go away!
Your distro doesn't yet support the bleeding edge kernel?   Go away!
Want to have a stable base on which to work so you can focus on
v4l-dvb development?  Go away!

I can tell you quite definitely that you're going to lose some
developers with this approach.  You better be damn sure that the lives
you're making easier are going to significantly outweigh the
developers willing to contribute who you are casting aside.

Devin

-- 
Devin J. Heitmueller
http://www.devinheitmueller.com
AIM: devinheitmueller
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-20 Thread Mauro Carvalho Chehab
On Fri, 20 Mar 2009 22:03:21 -0400
Devin Heitmueller devin.heitmuel...@gmail.com wrote:

 On Fri, Mar 20, 2009 at 6:20 PM, Mauro Carvalho Chehab
 mche...@infradead.org wrote:
  My suggestion is to keep a backporting system, but more targeted at the
  end-users. The reasons are the ones explained above. Basically:
 
 Ok, so just so we're all on the same page - we're telling all the
 developers not willing to run a bleeding edge rc kernel to screw off?
 
 Got an Nvidia video card?  Go away!
 The wireless broken in this week's -rc candidate?  Go away!
 Your distro doesn't yet support the bleeding edge kernel?   Go away!
 Want to have a stable base on which to work so you can focus on
 v4l-dvb development?  Go away!
 
 I can tell you quite definitely that you're going to lose some
 developers with this approach.  You better be damn sure that the lives
 you're making easier are going to significantly outweigh the
 developers willing to contribute who you are casting aside.

Devin,

Please, don't invert the things. 

I am the one that is trying to defend the need of keeping the backport, while
most of you are trying to convince to me to just drop it, since developers will
run the bleeding edge -rc.

With the argument that developers shouldn't run the bleeding edge kernel, I'd
say you should do it. This is the way kernel development is. You shouldn't send
something upstream, if your patch doesn't run with the latest -rc. In my case,
I have my alpha environment for such tests, separated from the environment I
write my code. This allows me to do development on a more stable environment,
being sure that it will keep running with the latest kernel.

With the respect of using the backported environment for developing, you can do
it, if you want. It will be available for all usages. Have you ever seen the
approach I'm proposing at my backported tree? I can't see why you couldn't use
it for development also.


Cheers,
Mauro
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-20 Thread Trent Piepho
On Fri, 20 Mar 2009, Devin Heitmueller wrote:
 On Fri, Mar 20, 2009 at 6:20 PM, Mauro Carvalho Chehab
 mche...@infradead.org wrote:
  My suggestion is to keep a backporting system, but more targeted at the
  end-users. The reasons are the ones explained above. Basically:

 Ok, so just so we're all on the same page - we're telling all the
 developers not willing to run a bleeding edge rc kernel to screw off?

 Got an Nvidia video card?  Go away!
 The wireless broken in this week's -rc candidate?  Go away!
 Your distro doesn't yet support the bleeding edge kernel?   Go away!
 Want to have a stable base on which to work so you can focus on
 v4l-dvb development?  Go away!

Maybe you're supposed to have ten computers running different kernels?
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-19 Thread Trent Piepho
On Sun, 15 Mar 2009, Hans Verkuil wrote:
 On Sunday 15 March 2009 17:39:11 Trent Piepho wrote:
  Because there are patches that touch both the media tree and outside it?
  I don't buy it.  Even for sub-systems that only use full git trees, you
  almost never see a patch that touches multiple areas of maintainership.
  It's just too hard to deal with getting acks from everyone involved,
  dealing with the out-of-sync development git trees of the multiple areas
  you want to touch, figuring out who will take your patch, etc.

 Think embedded devices like omap, davinci and other SoC devices. These all
 require changes in both v4l-dvb and arch at the same time. Easy to do if
 you have a full git tree, much harder to do in the current situation.

 These devices will become much more important in the coming months and
 years, so having a proper git tree will definitely help.

 This is a relatively new development and before that it was indeed rare to
 see patches touching on areas outside the media tree. Not anymore, though.

ALSA has a full git tree now, so there should be all these patches that
touch sound/ and something out side of sound too?  I'm not seeing them.
The only patches that touch inside and outside of ALSA are the ones that
fix some misspelled word in 100 random files or rename a linux header file.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-15 Thread Devin Heitmueller
On Sun, Mar 15, 2009 at 12:39 PM, Trent Piepho xy...@speakeasy.org wrote:
 It seems like the real complaint is that dealing v4l-dvb's development
 system is more work for those people who choose not to use it.  Why don't
 we just switch to CVS while were at it, to make it easier for those who
 don't want to learn git?

Personally, the problem for me is not one of which source control
system we use.  I don't care if it's cvs, svn, bzr, hg, or git.  What
I do care about is what the tree contains.

I do all of my development on a stock Ubuntu box that is running the
latest stable release (Intrepid right now).  I want to do v4l-dvb
development, but I do *not* want to be required to run the bleeding
edge kernel.  I want to do v4l-dvb development without having to worry
about whether my wireless chipset is going to work today, or my video
driver.  Having a stable distro allows me to focus on *my* driver
without being susceptible to breakage unrelated to my work.

I know I'm not the only one who develops with this model.  This is not
just an issue about the people looking to test the tree.

Devin

-- 
Devin J. Heitmueller
http://www.devinheitmueller.com
AIM: devinheitmueller
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-07 Thread Adam Baker
On Saturday 07 March 2009, Trent Piepho wrote:
 Audio was out of tree.  If they had a better system, like v4l-dvb does,
 they might well still be out of tree.  And aren't there some wireless
 packages that are out of tree?

Wireless development is done in tree and then copied to a compat tree that 
contains just the wireless drivers, stack and compatibility stubs. A year or 
two back there were some drivers developed out of tree so they could be 
tested more easily but it became too much of an overhead to work that way.

Adam
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-06 Thread Trent Piepho
On Thu, 5 Mar 2009, Guennadi Liakhovetski wrote:
 On Thu, 5 Mar 2009, Trent Piepho wrote:
  ALSA used a partial tree, but their system was much worse than v4l-dvb's.
  I think the reason more systems don't do it is that setting up the build
  system we have with v4l-dvb was a lot of work.  They don't have that.

 Right, it was a lot of work, it is still quite a bit of work (well, I'm
 not doing that work directly, but it affetcs me too, when I have to adjust
 patches, that I generated from a complete kernel tree to fit
 compatibility-emhanced versions), and it is not going to be less work.

Why must you generate your patches from a different tree?  One could just
as well say that the linux kernel indentation style is more work, since
they use GNU style have to translate their patch from a re-indented tree.

You could just make your patches in the v4l-dvb tree and then you wouldn't
have the translate them.  In fact it could be easier, as you can develop
your patches against the kernel you are using now instead of needing to
switch to the latest kernel from a few hours ago.

I wish I could use the v4l-dvb system for embedded system development in
other areas.  In my experience most embedded hardware can't run the stock
kernel.  Most embedded system development is for new systems that don't
have all their code in the stock kernel yet.  They often have very device
specific things that aren't even wanted in the kernel.  So you end up
needing to do development with an older kernel that works for your device,
e.g. the kernel that came with the BSP.

In order to submit your patches, you then have to port them to the latest
kernel.  Not only is that extra work, you now have two patches, one in your
device tree and one in your kernel.org tree.  If you fix one patch you have
to manually keep the other in sync.  The v4l-dvb is much better as you can
have just _one_ patch that works on _both_ kernels.

  Lots of subsystems are more tightly connected to the kernel and compiling
  the subsystem out of tree against any kernel just wouldn't work.  Some
  subsystems (like say gpio or led) mostly provide a framework to the rest of
  the kernel so working on them without the rest of the tree doesn't make
  sense either.  Or they don't get many patches and don't have many active
  maintainers so they don't really have any development SCM at all.  Just
  some patches through email that get applied by one maintainer.

 That's why I didn't give LED or GPIO or SPI or I2C or SCSI or ATA or MMC
 or MTD or ... as examples, but audio and network, which are also largely
 consumer interfaces and are actively developed.

Audio was out of tree.  If they had a better system, like v4l-dvb does,
they might well still be out of tree.  And aren't there some wireless
packages that are out of tree?
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-06 Thread Guennadi Liakhovetski
On Fri, 6 Mar 2009, Trent Piepho wrote:

 On Thu, 5 Mar 2009, Guennadi Liakhovetski wrote:
  On Thu, 5 Mar 2009, Trent Piepho wrote:
   ALSA used a partial tree, but their system was much worse than v4l-dvb's.
   I think the reason more systems don't do it is that setting up the build
   system we have with v4l-dvb was a lot of work.  They don't have that.
 
  Right, it was a lot of work, it is still quite a bit of work (well, I'm
  not doing that work directly, but it affetcs me too, when I have to adjust
  patches, that I generated from a complete kernel tree to fit
  compatibility-emhanced versions), and it is not going to be less work.
 
 Why must you generate your patches from a different tree?  One could just
 as well say that the linux kernel indentation style is more work, since
 they use GNU style have to translate their patch from a re-indented tree.

[snip]

Hans has already answered your question very well in this thread. I don't 
think I can add anything.

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-06 Thread hermann pitton
Hi,

Am Samstag, den 07.03.2009, 01:46 +0100 schrieb Guennadi Liakhovetski:
 On Fri, 6 Mar 2009, Trent Piepho wrote:
 
  On Thu, 5 Mar 2009, Guennadi Liakhovetski wrote:
   On Thu, 5 Mar 2009, Trent Piepho wrote:
ALSA used a partial tree, but their system was much worse than 
v4l-dvb's.
I think the reason more systems don't do it is that setting up the build
system we have with v4l-dvb was a lot of work.  They don't have that.
  
   Right, it was a lot of work, it is still quite a bit of work (well, I'm
   not doing that work directly, but it affetcs me too, when I have to adjust
   patches, that I generated from a complete kernel tree to fit
   compatibility-emhanced versions), and it is not going to be less work.
  
  Why must you generate your patches from a different tree?  One could just
  as well say that the linux kernel indentation style is more work, since
  they use GNU style have to translate their patch from a re-indented tree.
 
 [snip]
 
 Hans has already answered your question very well in this thread. I don't 
 think I can add anything.
 
 Thanks
 Guennadi

for me Trent clearly has the better arguments, but I do have of course a
different point of view.

Let's have this embedded Linux conference and listen to the arguments we
hopefully get some links to.

There is a lot going on, but you must convince me at least to buy some
of this stuff I call gadgets. I don't see any need so far ;)

You likely can get still anybody seriously interested to build the
always next rc1 and then one close to the final next kernel release too,
but I seriously doubt that you can convince anybody at all to give up
totally what we have for embedded mixed trees fun on latest git and
break all others by will for your latest pleasure.

Cheers,
Hermann




--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-05 Thread Guennadi Liakhovetski
On Wed, 4 Mar 2009, Mauro Carvalho Chehab wrote:

 Beside the fact that we don't need to strip support for legacy kernels, the
 advantage of using this method is that we can evolute to a new development
 model. As several developers already required, we should really use the
 standard -git tree as everybody's else. This will simplify a lot the way we
 work, and give us more agility to send patches upstream.
 
 With this backport script, plus the current v4l-dvb building systems, and 
 after
 having all backport rules properly mapped, we can generate a test tree
 based on -git drivers/media, for the users to test the drivers against their
 kernels, and still use a clean tree for development.

Sorry, switching to git is great, but just to make sure I understood you 
right: by -git drivers/media you don't mean it is going to be a git tree 
of only drivers/media, but it is going to be a normal complete Linux 
kernel tree, right?

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-05 Thread Hans Verkuil
On Thursday 05 March 2009 21:57:16 Trent Piepho wrote:
 On Thu, 5 Mar 2009, Guennadi Liakhovetski wrote:
  On Thu, 5 Mar 2009, Trent Piepho wrote:
   On Thu, 5 Mar 2009, Guennadi Liakhovetski wrote:
On Wed, 4 Mar 2009, Mauro Carvalho Chehab wrote:
 Beside the fact that we don't need to strip support for legacy
 kernels, the advantage of using this method is that we can
 evolute to a new development model. As several developers already
 required, we should really use the standard -git tree as
 everybody's else. This will simplify a lot the way we work, and
 give us more agility to send patches upstream.

 With this backport script, plus the current v4l-dvb building
 systems, and after having all backport rules properly mapped, we
 can generate a test tree based on -git drivers/media, for the
 users to test the drivers against their kernels, and still use a
 clean tree for development.
   
Sorry, switching to git is great, but just to make sure I
understood you right: by -git drivers/media you don't mean it is
going to be a git tree of only drivers/media, but it is going to be
a normal complete Linux kernel tree, right?
  
   So there will be no way we can test a driver without switching to a
   new kernel hourly?  And there is no way we can test someone else's
   tree without compiling an entirely new kernel and rebooting?  And
   every tree we want to work on requires a complete copy of the entire
   kernel source?
 
  AFAIR, Mauro wanted to provide snapshots for those who absolutely
  prefer to work with partial trees. Although, to be honest, I don't
  understand what makes video drivers so special. Think about audio
  drivers, or network, including WLAN. I never heard about those
  subsystems working with or providing subtree snapshots. If only before
  specific drivers or subsystems are included in the mainline, but not
  long after that.

 ALSA used a partial tree, but their system was much worse than v4l-dvb's.
 I think the reason more systems don't do it is that setting up the build
 system we have with v4l-dvb was a lot of work.  They don't have that.

 Lots of subsystems are more tightly connected to the kernel and compiling
 the subsystem out of tree against any kernel just wouldn't work.  Some
 subsystems (like say gpio or led) mostly provide a framework to the rest
 of the kernel so working on them without the rest of the tree doesn't
 make sense either.  Or they don't get many patches and don't have many
 active maintainers so they don't really have any development SCM at all. 
 Just some patches through email that get applied by one maintainer.

Our model of just the subsystem is fine when all you are dealing with are 
PCI and USB devices, but especially with embedded devices you get a lot of 
links to the platform code. For that you need to have a full kernel.

I expect that the embedded drivers will be a very active area for the next 
several years so we have to make sure we can handle that.

Regards,

Hans

-- 
Hans Verkuil - video4linux developer - sponsored by TANDBERG
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-05 Thread Guennadi Liakhovetski
On Thu, 5 Mar 2009, Trent Piepho wrote:

 ALSA used a partial tree, but their system was much worse than v4l-dvb's.
 I think the reason more systems don't do it is that setting up the build
 system we have with v4l-dvb was a lot of work.  They don't have that.

Right, it was a lot of work, it is still quite a bit of work (well, I'm 
not doing that work directly, but it affetcs me too, when I have to adjust 
patches, that I generated from a complete kernel tree to fit 
compatibility-emhanced versions), and it is not going to be less work.

 Lots of subsystems are more tightly connected to the kernel and compiling
 the subsystem out of tree against any kernel just wouldn't work.  Some
 subsystems (like say gpio or led) mostly provide a framework to the rest of
 the kernel so working on them without the rest of the tree doesn't make
 sense either.  Or they don't get many patches and don't have many active
 maintainers so they don't really have any development SCM at all.  Just
 some patches through email that get applied by one maintainer.

That's why I didn't give LED or GPIO or SPI or I2C or SCSI or ATA or MMC 
or MTD or ... as examples, but audio and network, which are also largely 
consumer interfaces and are actively developed.

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-04 Thread Mauro Carvalho Chehab
Hans,

On Mon, 2 Mar 2009 22:18:24 +0100
Hans Verkuil hverk...@xs4all.nl wrote:

 In the final analysis I'm the boss of my own time. And I've decided that 
 once the conversion of all the i2c modules is finished I'll stop spending 
 time on the compatibility code for kernels 2.6.22 as it is simply no 
 longer an effective use of my time. If someone else wants to spend time on 
 that, then that's great and I will of course answer questions or help in 
 whatever way is needed.
 
 I know that Mauro thinks he can keep the backwards compat code in by doing 
 nifty code transformations. It would be nice if he succeeds (and I have no 
 doubt that it is possible given enough time and effort), but personally I 
 think it is time better spent elsewhere.

It required just a couple of hours today, in order to add the I2C conversion
rules on the backport tree:

http://linuxtv.org/hg/~mchehab/backport/

There, I used, as example, the tea6415c.c file that you sent me, meant to be an
example of a driver converted to use just the new I2C API. I've removed from it
all the other #ifdefs for 2.6.26, so, the module doesn't have any compat bits
(except for compat.h that can also be handled by the script). I didn't compile
the entire tree, since several drivers will break, as they aren't ported yet
to the new I2C style.

Maybe a few adjustments on the backport.pl may be needed, after having all
drivers converted to 2.6.22, since the final version may need some other
patching rules.

That's said, the backport tree is still an experimental work. The scripts
require more time to be tested, and the Makefiles need some cleanups.

Beside the fact that we don't need to strip support for legacy kernels, the
advantage of using this method is that we can evolute to a new development
model. As several developers already required, we should really use the
standard -git tree as everybody's else. This will simplify a lot the way we
work, and give us more agility to send patches upstream.

With this backport script, plus the current v4l-dvb building systems, and after
having all backport rules properly mapped, we can generate a test tree
based on -git drivers/media, for the users to test the drivers against their
kernels, and still use a clean tree for development.

Cheers,
Mauro

--

PS: the tea6415c.c fully ported to the new I2C API you sent in priv
doesn't compile fine with 2.6.28. Since this file is just an example, I didn't
care to fix it.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-03 Thread Trent Piepho
On Tue, 3 Mar 2009, Hans Verkuil wrote:
 On Monday 02 March 2009 23:47:31 Trent Piepho wrote:
  On Mon, 2 Mar 2009, Hans Verkuil wrote:
   There are good reasons as a developer for keeping backwards
   compatibility with older kernels:
 
  Do you mean no backwards compatibility with any older kernels?  Or do you
  mean just dropping support for the oldest kernels now supported.  What
  you've said above sounds like the former.

 This was about the advantages of having compat code at all to support
 kernels other than the bleeding edge git kernel.

I thought the poll was only about dropping support for kernels older than
2.6.22?

  Will you allow drivers to use a combination of probe based and detect
  based i2c using the new i2c api?  It's my understanding that you only
  support the new i2c api for probe-only drivers.  Probe/detect or ever
  detect-only drivers for the new i2c api haven't been done?  I think much
  of the difficulty of supporting 2.6.22 will be solved once there is a
  way to allow drivers to use both probe and detect with the new api.

 The difficulties are not with probe or detect, but with the fact that with
 the new API the adapter driver has to initiate the probe instead of the
 autoprobing that happened in the past by just loading the i2c module. The

That's not true.  Using the new API's -probe() method works like you say,
but using the new API's -detect() method is much more like the autoprobing
that happened in the past.

 I don't think we have to use the detect() functionality at all in i2c
 modules, although I need to look at bttv more closely to see whether that
 is a true statement. I'm at this moment opposed to the use of detect()
 since I fear it can lead to pretty much the same problems as autoprobing
 does when you start to rely on it. It's meant for legacy code where proper
 device/address information is not present. In the case of v4l-dvb the only
 driver that might qualify is bttv.

In some cases there is no way to identify the what hardware a card has and
there is also new cards that are still unknown.

  I think I would have gone about it from the other side.  Convert bttv to
  use detect and then make that backward compatible.  That compatibility
  should be much easier and less invasive.

 This wouldn't have made any difference at all.

But you said yourself that the difficulties are with the fact that with
the new API the adapter driver has to initiate the probe instead of the
autoprobing that happened in the past. Converting the bttv driver to use
detect with the new API would avoid those difficulties.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-02 Thread kilgota



On Mon, 2 Mar 2009, Hans Verkuil wrote:

snip

[...] The one argument I've seen that I thought had merit
was with regards to netbooks, and the Asus eeePC in particular. Apparently
that distro uses 2.6.21 and whether that will be upgraded to a newer kernel
in the future is dubious.

But in the end it is really the same story: where do you put the line? If
the eeePC will never receive an update, does that mean we have to keep
maintaining support for 2.6.21 for many years to come? That's ridiculous
IMHO.


Hans,

Just one comment. IIRC, I was the one who mentioned the eeePC, having 
recently bought one. I mentioned it, not because I disagree with anything 
else you write here, but because, in fact, I agree. Frankly, I think the 
use of the 2.6.21 kernel in the eeePC is somewhat perverse and just a 
little bit weird.


Essentially, the eeePC and the other Intel-based netbooks are not some 
kind of exotic hardware platforms, which might provide an explanation or 
excuse for using some specially crafted but old kernel. No. In fact, the 
eeePC and almost all the other current netbooks are just a new (and 
attractive) combination of some fairly standard types of hardware. 
Practically every hardware component in them is better supported in more 
recent kernels, with the possible exception of a wireless device which may 
not yet be supported in any kernel, new or old. Therefore, instead of 
worrying about whether to support and provide indulgence for apparently 
inexplicable behavior, let us hope that a decision of this nature will 
serve as a needed message.


Theodore Kilgore
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-02 Thread Trent Piepho
On Mon, 2 Mar 2009, Hans Verkuil wrote:
 There are good reasons as a developer for keeping backwards compatibility
 with older kernels:

Do you mean no backwards compatibility with any older kernels?  Or do you
mean just dropping support for the oldest kernels now supported.  What
you've said above sounds like the former.

 1) a larger testers base.
 2) that warm feeling you get when users can get their new card to work with
 just v4l-dvb without having to upgrade their kernel.
 3) as a developer you do not need to update to the latest kernel as well.
 Very useful if the latest kernel introduces a regression on your hardware
 as happened to me in the past.

It's also very useful for working on/testing multiple trees.  I can test
your zoran tree, switch to a different tree for some cx88 work, and then
switch back to a know good tree to record some tv shows tonight.  I can
switch back and forth between your zoran tree and a months older one in
*seconds* to check differences in behavior.  Without having to reboot two
dozen times a day to a half dozen different kernels.

For the most part the v4l-dvb compat system works behind the scenes very
well.  I'm sure there have been cases where a developer who doesn't reboot
hourly to the latest git kernel produced a patch that wouldn't have worked
on the kernel they were themselves using if the compat system hadn't made
it work automatically without the developer even knowing.

 2) as time goes by the code becomes ever harder to maintain due to the
 accumulated kernel checks.

Unless you want to maintain backwards compat forever, the idea is to reach
some kind of equilibrium were old compat code is removed at the same rate
new compat code is added.

 3) the additional complication of backwards compatibility code might deter
 new developers.

But needing to run today's kernel and have your closed source video card
driver stop working might deter developers who just want to produce a few
small patches.

 There has to be a balance here. Currently it is my opinion that I'm spending
 too much time on the backwards compat stuff. And that once all the i2c
 modules are converted to the new framework both the maintainability and the
 effort required to maintain the compat code will be improved considerably
 by dropping support for kernels 2.6.22.

Will you allow drivers to use a combination of probe based and detect based
i2c using the new i2c api?  It's my understanding that you only support the
new i2c api for probe-only drivers.  Probe/detect or ever detect-only
drivers for the new i2c api haven't been done?  I think much of the
difficulty of supporting 2.6.22 will be solved once there is a way to
allow drivers to use both probe and detect with the new api.

I think I would have gone about it from the other side.  Convert bttv to
use detect and then make that backward compatible.  That compatibility
should be much easier and less invasive.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-02 Thread Simon Kenyon

kilg...@banach.math.auburn.edu wrote:
Just one comment. IIRC, I was the one who mentioned the eeePC, having 
recently bought one. I mentioned it, not because I disagree with 
anything else you write here, but because, in fact, I agree. Frankly, 
I think the use of the 2.6.21 kernel in the eeePC is somewhat perverse 
and just a little bit weird.


Essentially, the eeePC and the other Intel-based netbooks are not some 
kind of exotic hardware platforms, which might provide an explanation 
or excuse for using some specially crafted but old kernel. No. In 
fact, the eeePC and almost all the other current netbooks are just a 
new (and attractive) combination of some fairly standard types of 
hardware. Practically every hardware component in them is better 
supported in more recent kernels, with the possible exception of a 
wireless device which may not yet be supported in any kernel, new or 
old. Therefore, instead of worrying about whether to support and 
provide indulgence for apparently inexplicable behavior, let us hope 
that a decision of this nature will serve as a needed message.

just as another data point
i have an eee 900 and i run gentoo on it
i have 2.6.27 running just fine (wireless and all)

i know gentoo is a little too hardcore for most people
but living with a distro kernel forever is not a real requirement
--
simon
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Results of the 'dropping support for kernels 2.6.22' poll

2009-03-02 Thread Hans Verkuil
On Monday 02 March 2009 23:47:31 Trent Piepho wrote:
 On Mon, 2 Mar 2009, Hans Verkuil wrote:
  There are good reasons as a developer for keeping backwards
  compatibility with older kernels:

 Do you mean no backwards compatibility with any older kernels?  Or do you
 mean just dropping support for the oldest kernels now supported.  What
 you've said above sounds like the former.

This was about the advantages of having compat code at all to support 
kernels other than the bleeding edge git kernel.

  1) a larger testers base.
  2) that warm feeling you get when users can get their new card to work
  with just v4l-dvb without having to upgrade their kernel.
  3) as a developer you do not need to update to the latest kernel as
  well. Very useful if the latest kernel introduces a regression on your
  hardware as happened to me in the past.

 It's also very useful for working on/testing multiple trees.  I can test
 your zoran tree, switch to a different tree for some cx88 work, and then
 switch back to a know good tree to record some tv shows tonight.  I can
 switch back and forth between your zoran tree and a months older one in
 *seconds* to check differences in behavior.  Without having to reboot two
 dozen times a day to a half dozen different kernels.

 For the most part the v4l-dvb compat system works behind the scenes very
 well.  I'm sure there have been cases where a developer who doesn't
 reboot hourly to the latest git kernel produced a patch that wouldn't
 have worked on the kernel they were themselves using if the compat system
 hadn't made it work automatically without the developer even knowing.

  2) as time goes by the code becomes ever harder to maintain due to the
  accumulated kernel checks.

 Unless you want to maintain backwards compat forever, the idea is to
 reach some kind of equilibrium were old compat code is removed at the
 same rate new compat code is added.

Right.

  3) the additional complication of backwards compatibility code might
  deter new developers.

 But needing to run today's kernel and have your closed source video card
 driver stop working might deter developers who just want to produce a few
 small patches.

  There has to be a balance here. Currently it is my opinion that I'm
  spending too much time on the backwards compat stuff. And that once all
  the i2c modules are converted to the new framework both the
  maintainability and the effort required to maintain the compat code
  will be improved considerably by dropping support for kernels 2.6.22.

 Will you allow drivers to use a combination of probe based and detect
 based i2c using the new i2c api?  It's my understanding that you only
 support the new i2c api for probe-only drivers.  Probe/detect or ever
 detect-only drivers for the new i2c api haven't been done?  I think much
 of the difficulty of supporting 2.6.22 will be solved once there is a
 way to allow drivers to use both probe and detect with the new api.

The difficulties are not with probe or detect, but with the fact that with 
the new API the adapter driver has to initiate the probe instead of the 
autoprobing that happened in the past by just loading the i2c module. The 
compat issues are for the most part limited to the i2c modules themselves, 
since those changed the most because of this.

I don't think we have to use the detect() functionality at all in i2c 
modules, although I need to look at bttv more closely to see whether that 
is a true statement. I'm at this moment opposed to the use of detect() 
since I fear it can lead to pretty much the same problems as autoprobing 
does when you start to rely on it. It's meant for legacy code where proper 
device/address information is not present. In the case of v4l-dvb the only 
driver that might qualify is bttv.

 I think I would have gone about it from the other side.  Convert bttv to
 use detect and then make that backward compatible.  That compatibility
 should be much easier and less invasive.

This wouldn't have made any difference at all.

Regards,

Hans

-- 
Hans Verkuil - video4linux developer - sponsored by TANDBERG
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html