← Back to team overview

team-kcheck team mailing list archive

[Bug 432732] Re: Cannot download kernel information from kernel.org

 

So apparently there has been some questions and concerns over the, now,
lack of the kdist fragments.  So here's the story / reasoning and then
to answer the questions in no particular order from what's been said:

Story:
-----------------------------------------

The short version is that with the now ever changing target of what's
available as kernels that the files would be complicated to maintain and
would have exceedingly limited scope of use.

The longer version is that with the re-write of the kdist scripts there
was a required change that we needed to now support an ever changing
list of "active" kernels, instead of just the limited set that we were
tracking before.

Before:

The latest stable version of the Linux kernel is: 2.6.23.12
The latest prepatch for the stable Linux kernel tree is: 2.6.24-rc6
The latest snapshot for the stable Linux kernel tree is: 2.6.24-rc6-git9
The latest 2.4 version of the Linux kernel is: 2.4.36
The latest 2.2 version of the Linux kernel is: 2.2.26
The latest prepatch for the 2.2 Linux kernel tree is: 2.2.27-rc2
The latest -mm patch to the stable Linux kernels is:      2.6.24-rc6-mm1

Current:

The latest linux-next version of the Linux kernel is:      next-20091016
The latest mainline 2.6 version of the Linux kernel is:       2.6.32-rc5
The latest snapshot 2.6 version of the Linux kernel is:  2.6.32-rc4-git5
The latest stable 2.6.31 version of the Linux kernel is:      2.6.31.4
The latest stable 2.6.30 version of the Linux kernel is:      2.6.30.9
The latest stable 2.6.29 version of the Linux kernel is:      2.6.29.6
The latest stable 2.6.28 version of the Linux kernel is:      2.6.28.10
The latest stable 2.6.27 version of the Linux kernel is:      2.6.27.37
The latest stable 2.4.37 version of the Linux kernel is:      2.4.37.6

The current list, while it looks simple is not.  If a kernel does not
have a release within a 6 month time frame (currently) it is dropped
from the list, if a new kernel tree shows up it is added.  As you can
see there are 5 individual trees right now that are stable 2.6 trees. In
a couple of weeks (November 2nd to be exact) the 2.6.28 series of
kernels will fall off the list and I'm sure that the 2.6.32 kernel will
show up in the near future as well.  So the list here is quite an ever
changing.

To make this a more complicated setup you'll notice that 2.6.27.37 is
newer (date wise) than 2.6.28.10, with the former having been released a
few of days ago.  So those files that, apparently, kernelcheck had been
depending were dropped due to the complexity the newer kernels would
present and the plethora of other mechanisms to get the same data.

Comments:
-----------------------------------------

- Don't use the fragments.disabled - it should be obvious from the name
'disabled' that it's not intended to be used, updated, etc.  It's legacy
data, and I'll be honest I didn't expect someone to go digging enough to
find it vs. just deleting the data outright.

- Finger Banner: really probably isn't quite what your looking for since
all that is going to give you is a text string and a version, no other
reference to where the file lives

- "kernel.org have since removed the fragment pages without
explanation." considering that the number of people actually using those
files was insanely low, and with the above explanation it wasn't felt
necessary to really make a big announcement out of them being removed.
Also removing them made it obvious to people that the data was now stale
/ not being maintained instead of just leaving the stale data there.

- The RSS feed is one possible source, but it doesn't include the required information for all the support patches and kernels. Plus, it can contain old patch information.
&
Another alternative being looked into, is parsing the kernel.org home page. It will be a nightmare to parse, but it has most of the information needed.

I'll answer that one in the same go: the information on the front page,
and that's in the rss feed is *identical* information, in fact it's the
same string sets that get created and copied to two different places,
the file for inclusion on the front page and the rss feed - so claiming
that the rss feed doesn't have information that the front page has is
bogus.  I also wouldn't try to parse our front page, because it's really
not guaranteed to be stable we can and will make changes there more
often.  The RSS feed's location is stable and used by a large number of
people and it contains the same information as the front page and will
be a *LOT* easier to parse than trying to parse the whole front page.

- Another alternative being looked into, is parsing the download folders
for the patches and kernel. This might be the easiest option, because
there are sym-links within these folders to the latest patches and
kernel. I believe a similar method is already being used to capture the
old kernels list, and the linux-next patch.

You don't want to parse the folders on your own, because it means (1)
that your doing weird stuff and (2) when kernels change, linux-next
moves away, etc you have to manually do the same work that I will
already have to do to fix the front page and the rss feeds already.  I'd
really suggest using the rss feed as a baseline as it is...

- http://master.kernel.org/kdist/version.html <-- I wouldn't rely on
that, it's the file that is being used to include on the front page but
it is not something kernel.org is going to absolutely garauntee.

Again from a personal stand point I'd snag the rss feed file, run that
through an rss parser (most languages have one around these days, and if
not it's just an xml file almost everything has an xml parser) itterate
over what's available there, the links and what not are embedded in the
data block and your old regexs won't need a lot of modification to fix.

-- 
Cannot download kernel information from kernel.org
https://bugs.launchpad.net/bugs/432732
You received this bug notification because you are a member of The
KernelCheck Team, which is a bug assignee.

Status in KernelCheck: Confirmed

Bug description:
Output of my kernelcheck after i click  "Get kernel information" :

Testing your network connection...
Connection found.
Kernel.org server couldn't fulfill request.
Error code: 404

The same behavior in 1.2.5 and also in trunk.