Introducing the Linux-Staging Tree

Submitted by Jeremy
on June 14, 2008 - 7:01am

"Oh great, not yet-another-kernel-tree, just what the world needs..." began Greg KH, continuing, "yes, this is an announcement of a new kernel tree, linux-staging." He explained:

"In a long and meandering thread with some of the other kernel developers a week or so ago, it came up that there is no single place for companies and developers to put their code for testing while it gets cleaned up for submission into the kernel tree. All of the different subsystems have trees, but they generally only want code that is about to go into this release, or the next one. For stuff that is farther off, there is no place to go. So, here's the tree for it."

In a readme created for the new tree, Greg adds, "the linux-staging tree was created to hold drivers and filesystems and other semi-major additions to the Linux kernel that are not ready to be merged at this point in time." He also requested that the new tree be included in Linux -next, leading Theodore Ts'o to ask, "does this mean that the nature of linux-next is changing? I thought the whole point of linux-next was only to have what would be pushed to Linus in the near future, so we could check for patch compatibility issues." Greg explained that he was hoping for an exception for his new -staging tree as it only includes whole new drivers and filesystems, not changes to existng features, "there is stuff that users can use to get hardware to work that currently is not supported on kernel.org kernels at all." As an example he noted, "there are 2 big network drivers in there that support a wide range of devices that some people would like to see working :)"


From: Greg KH
Subject: [ANNOUNCE] linux-staging tree created
Date: Jun 10, 12:05 pm 2008

Oh great, not yet-another-kernel-tree, just what the world needs...

Yes, this is an announcement of a new kernel tree, linux-staging.  It is
a quilt series of patches that can be found at:
	git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git


In a long and meandering thread with some of the other kernel developers
a week or so ago, it came up that there is no single place for companies
and developers to put their code for testing while it gets cleaned up
for submission into the kernel tree.  All of the different subsystems
have trees, but they generally only want code that is about to go into
this release, or the next one.  For stuff that is farther off, there is
no place to go.

So, here's the tree for it.  From the README:

PURPOSE

The linux-staging tree was created to hold drivers and filesystems and
other semi-major additions to the Linux kernel that are not ready to be
merged at this point in time.  It is here for companies and authors to
get a wider range of testing, and to allow for other members of the
community to help with the development of these features for the
eventual inclusion into the main kernel tree.

This tree will be included in the daily linux-next builds, and will get
testing by all users of that tree.

The rules of what can be included here is as follows:
	- the code must be released under a Linux kernel-compatible
	  license
	- the goal of the developers must be to merge this code into the
	  main kernel tree in the near future, but not for the next
	  kernel release.
	- the code must build properly on the x86 platform
	- this is not a tree for bugfixes or rewrites of existing kernel
	  code, this should be for new features, drivers, and
	  filesystems.
	- the patches included must detail exactly what is needed to be
	  completed in order for them to be included into the main
	  kernel tree.
	- there must be some email address associated with the patch
	  that can be used for bug reporting and questions about
	  cleanups and testing the code.

What this tree is not:
	- it is not a place to dump features that are being actively
	  developed by a community of people (reiserfs4 for example.)
	- it is not a place to dump code and then run away, hoping that
	  someone else will do the cleanup work for you.  While there
	  are developers available to do this kind of work, you need to
	  get someone to agree to "babysit" the code.


I'll follow up this message with a list of the current status of the
individual patches and what is currently contained in the tree.  I hope
to release a status like this every week or so, depending on how the
development goes.

What I need from all of you:
  Kernel Janitors:
  	Here is the perfect way to get involved.  The code in this tree
	is in desparate need of cleanups and fixes that can be trivially
	found using 'sparse' and 'scripts/checkpatch.pl'.  I'll gladly
	take these kinds of patches and of course, correctly credit you.

  Linux driver project developers:
	Same as above, here's a great place to start out helping with
	real code.  If any of you wants to take any of these drivers
	over and become the primary contact point for them, just let me
	know.

  Linux-next developers:
	Stephen, I would really like this tree to be included in -next.
	Yes, I know it contains things that will not be included in the
	next release, but the inclusion and basic build testing that is
	provided by your tree is invaluable.  You can place it at the
	end, and if there is even a whiff of a problem in any of the
	patches, you have my full permission to drop them on the floor
	and run away screaming (and let me know please, so I can fix it
	up.)

  Linux kernel developers:
	If there are any external patches floating around for drivers
	that need to be cleaned up and gotten into the kernel tree,
	please point them out to me and I'll be glad to add them to this
	tree and work to get them included.  Right now we are pushing:
	 - 192 files changed, 131073 insertions(+), 651 deletions(-)
	so what's a few more thousand lines of code :)

Any questions?  Comments?

thanks,

greg k-h
--

From: Theodore Tso Subject: Re: [ANNOUNCE] linux-staging tree created Date: Jun 10, 3:52 pm 2008 On Tue, Jun 10, 2008 at 12:05:40PM -0700, Greg KH wrote: > PURPOSE > > The linux-staging tree was created to hold drivers and filesystems and > other semi-major additions to the Linux kernel that are not ready to be > merged at this point in time. It is here for companies and authors to > get a wider range of testing, and to allow for other members of the > community to help with the development of these features for the > eventual inclusion into the main kernel tree. > > This tree will be included in the daily linux-next builds, and will get > testing by all users of that tree. Does this mean that the nature of linux-next is changing? I thought the whole point of linux-next was only to have what would be pushed to Linus in the near future, so we could check for patch compatibility issues. For that reason, for example, I don't push the unstable set of patches in the ext4 tree to linux-next, since they aren't ready for merging yet in their current form. But if linux-staging is going to be pushed to linux-next, doesn't that violate the ground rules of Linux-next? Or are we allowing in this case because these are filesystems and/or device drivers that don't exist at all in the mainline tree yet? - Ted --
From: Greg KH Subject: Re: [ANNOUNCE] linux-staging tree created Date: Jun 10, 4:05 pm 2008 On Tue, Jun 10, 2008 at 06:52:22PM -0400, Theodore Tso wrote: > On Tue, Jun 10, 2008 at 12:05:40PM -0700, Greg KH wrote: > > PURPOSE > > > > The linux-staging tree was created to hold drivers and filesystems and > > other semi-major additions to the Linux kernel that are not ready to be > > merged at this point in time. It is here for companies and authors to > > get a wider range of testing, and to allow for other members of the > > community to help with the development of these features for the > > eventual inclusion into the main kernel tree. > > > > This tree will be included in the daily linux-next builds, and will get > > testing by all users of that tree. > > Does this mean that the nature of linux-next is changing? I thought > the whole point of linux-next was only to have what would be pushed to > Linus in the near future, so we could check for patch compatibility > issues. For that reason, for example, I don't push the unstable set > of patches in the ext4 tree to linux-next, since they aren't ready for > merging yet in their current form. > > But if linux-staging is going to be pushed to linux-next, doesn't that > violate the ground rules of Linux-next? Or are we allowing in this > case because these are filesystems and/or device drivers that don't > exist at all in the mainline tree yet? I'm asking for the rule to be bent for this tree, not that the whole nature of linux-next is changing. -staging is for only whole new drivers/filesystems, not changes/features to existing code that is not yet ready for merging. The main reason these drivers are not in mainline is usually: - coding style issues - sparse cleanups needed - ioctl 32/64 cleanups - locking review - direct access to hardware through memory pointers (only works on x86) If you look at what I currently have, there's nothing earth-shattering there, but there is stuff that users can use to get hardware to work that currently is not supported on kernel.org kernels at all. It would be nice if distros also pick it up if they want to support these devices and give me some feedback. There are 2 big network drivers in there that support a wide range of devices that some people would like to see working :) thanks, greg k-h --

From: Greg KH
Subject: linux-staging status for June 10, 2008
Date: Jun 10, 12:06 pm 2008

Here is a list of the current patches in the linux-staging tree, and
their current status.

 - 17 patches
 - 192 files changed, 131073 insertions(+), 651 deletions(-)

---------
Patch: aectc: add the aectc driver
Contact: Brandon Philips <brandon@ifup.org>

Status:
  Being reworked to use the UIO interface instead of char driver
  Part of the linuxdriverproject.org development effort.

---------
Patch: DVB: add firesat driver
Contact: Manu Abraham <manu@linuxtv.org> and Greg KH <greg@kroah.com>

Status:
  Currently waiting for more DVB tuner development to finish off the
  remaining features.  Will be submitted to the DVB developers for
  inclusion in the kernel tree soon, as waiting for that effort might be
  a while.
  Part of the linuxdriverproject.org development effort.

---------
Patch: Framebuffer: add the VIA framebuffer driver
Contact: Benjamin Pan <BenjaminPan@viatech.com> and Greg Kroah-Hartman <greg@kroah.com>

Status:
  many TODOs still left to finish (see patch for details)
  Part of the linuxdriverproject.org development effort.

---------
Patch: Input: add appleir driver
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  looks like this is not needed at all, but still need to determine the
  proper HID quirk.
  Part of the linuxdriverproject.org development effort.

---------
Patch: me4000: add pci data collection driver
Patch: me4000 firmware file
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  many TODOs still left to finish (see patch for details)
  Part of the linuxdriverproject.org development effort.

---------
Patch: NET: add Alacritech slicoss driver
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  many TODOs still left to finish (see patch for details)
  Part of the linuxdriverproject.org development effort.

---------
Patch: NET: add et131x driver
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  many TODOs still left to finish (see patch for details)
  Part of the linuxdriverproject.org development effort.

---------
Patch: novfs: Add the Novell filesystem client kernel module
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  many TODOs still left to finish (see patch for details)
  Part of the linuxdriverproject.org development effort.

---------
Patch: OMS: add OMS MAXp driver
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  many TODOs still left to finish (see patch for details)
  Part of the linuxdriverproject.org development effort.

---------
Patch: USB: add USB test and measurement class drive
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  many TODOs still left to finish (see patch for details)
  Part of the linuxdriverproject.org development effort.

---------
Patch: USB: add option HSO driver
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  Minor bugfixes waiting to be merged in
  will be resubmited to the netdev list afterward
  Part of the linuxdriverproject.org development effort.

---------
Patch: USB: add Sensoray 2255 v4l driver
Contact: Dean Anderson <dean@sensoray.com> and Greg Kroah-Hartman <greg@kroah.com>

Status:
  review cycle cleanup already happened, will be resubmitted to v4l
  developers shortly.

---------
Patch: via agp driver (3 patches)
Contact: Greg Kroah-Hartman <greg@kroah.com>

Status:
  Still waiting for VIA to produce their xorg driver
  portions have already gone into the drm and agp tree
  Part of the linuxdriverproject.org development effort.

---------

--

staging tree,gpg: Can't check signature: public key not found

Anonymous (not verified)
on
June 24, 2008 - 3:55am

Hi All,

I tried dowloading the linux staging tree through git clone
and in the next step " ketchup `cat ../staging/version`" downloaded few MB of partial kernel to root/.ketchup and while checkig for gpg signature it failed.

I am pasting the same contents below, kindly please help me in resolving this or if any mistakes i have made(please do point out). i am newbbie, learning applying patches, this is the nice way to learn stuff getting stagign tree.

[root@turtle22 linux-staging]# ketchup `cat ../staging/version`
None -> 2.6.26-rc7
Downloading linux-2.6.25.tar.bz2
--12:16:54-- http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.tar.bz2
Resolving www.kernel.org... 204.152.191.37, 204.152.191.5
Connecting to www.kernel.org|204.152.191.37|:80... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 48601689 (46M), 44302160 (42M) remaining [application/x-bzip2]
Saving to: `/root/.ketchup/linux-2.6.25.tar.bz2.partial'

100%[+++++=======================================================>] 48,601,689 5.06K/s in 76m 31s

13:33:32 (9.42 KB/s) - `/root/.ketchup/linux-2.6.25.tar.bz2.partial' saved [48601689/48601689]

Downloading linux-2.6.25.tar.bz2.sign
--13:33:32-- http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.tar.bz2.sign
Resolving www.kernel.org... 204.152.191.37, 204.152.191.5
Connecting to www.kernel.org|204.152.191.37|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 248 [application/pgp-signature]
Saving to: `/root/.ketchup/linux-2.6.25.tar.bz2.sign.partial'

100%[============================================================>] 248 --.-K/s in 0s

13:33:39 (36.8 MB/s) - `/root/.ketchup/linux-2.6.25.tar.bz2.sign.partial' saved [248/248]

Verifying signature...
gpg: Signature made Thu 17 Apr 2008 08:52:46 AM IST using DSA key ID 517D0F0E
gpg: Can't check signature: public key not found
ketchup: gpg returned 512
ketchup: removing files...
Downloading linux-2.6.25.tar.gz
--13:33:40-- http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.tar.gz
Resolving www.kernel.org... 204.152.191.5, 204.152.191.37
Connecting to www.kernel.org|204.152.191.5|:80... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 61517918 (59M), 61482230 (59M) remaining [application/x-gzip]
Saving to: `/root/.ketchup/linux-2.6.25.tar.gz.partial'

100%[============================================================>] 61,517,918 12.6K/s in 2h 8m

15:41:56 (7.81 KB/s) - `/root/.ketchup/linux-2.6.25.tar.gz.partial' saved [61517918/61517918]

Downloading linux-2.6.25.tar.gz.sign
--15:41:56-- http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.tar.gz.sign
Resolving www.kernel.org... 204.152.191.5, 204.152.191.37
Connecting to www.kernel.org|204.152.191.5|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 248 [application/pgp-signature]
Saving to: `/root/.ketchup/linux-2.6.25.tar.gz.sign.partial'

100%[============================================================>] 248 --.-K/s in 0s

15:41:57 (33.9 MB/s) - `/root/.ketchup/linux-2.6.25.tar.gz.sign.partial' saved [248/248]

Verifying signature...
gpg: Signature made Thu 17 Apr 2008 08:43:18 AM IST using DSA key ID 517D0F0E
gpg: Can't check signature: public key not found
ketchup: gpg returned 512
ketchup: removing files...
ketchup: Tarball download failed

Thanks in advance

Please follow the Ketchup

xxxxxx (not verified)
on
July 7, 2008 - 5:15am

Please follow the Ketchup setup in section 1.3 in Linux Kernel Tester’s Guide
http://www.stardust.webpages.pl/files/handbook/handbook-en-0.3-rc1.pdf

HTH

TEJ

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.