FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Debian > Debian Kernel

 
 
LinkBack Thread Tools
 
Old 02-17-2012, 07:35 PM
Tim Abbott
 
Default Bug#660288: Please enable CONFIG_KALLSYMS_ALL

Package: linux-2.6
Severity: wishlist

(Moving this topic from a debian-kernel thread to the BTS).

Would it be possible to turn on CONFIG_KALLSYMS_ALL in the Debian kernel
for Wheezy? It's a useful debugging option, and makes it easier to
implement useful tools like Ksplice that inspect the code and data
structures of the running kernel, in particular in relation to operating
on modules (one can use System.map to look up addresses for data
structures in the core kernel). Most other major Linux distributions
have had CONFIG_KALLSYMS_ALL enabled in their kernels for some time now
(RHEL, Fedora, Ubuntu, etc.).


The discussion so far of why this option is useful on the debian-kernel
thread is at:

<http://lists.debian.org/debian-kernel/2012/01/msg01017.html>.

-Tim Abbott



--
To UNSUBSCRIBE, email to debian-kernel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 4F3EB9FA.3060100@oracle.com">http://lists.debian.org/4F3EB9FA.3060100@oracle.com
 
Old 08-02-2012, 08:31 PM
Tim Abbott
 
Default Bug#660288: Please enable CONFIG_KALLSYMS_ALL

On 06/07/2012 07:34 PM, Ben Hutchings
wrote:






On Mon, Jun 04, 2012 at 05:26:28PM -0400, Tim Abbott wrote:
> Hi Ben,
>
> Your comment about source code is rather off-topic for this bug
> report, but since there seems to be a misunderstanding on this
> point, I'd like to clarify: Every Ksplice update tarball ships with
> a README file containing instructions on how to request the source
> code for that update from the appropriate people in Oracle Legal.
> Anyone who follows those instructions can get a copy of the relevant
> source code.

I understand that Matthew Garrett tried to take up this offer a while
ago, and is still waiting for complete source code. It doesn't seem
to be a good faith attempt to fulfil GPL obligations.

This is not my department, but as I understand it, Matthew Garrett
received complete source code in response to each of his various
requests for Ksplice source code.




> To briefly clarify my original email, it is true that enabling
> CONFIG_KALLSYMS_ALL would make life slightly easier for Ksplice and
> similar tools that look at kernel data structures (e.g. debugging
> tools).

No doubt true, but it is also strictly redundant with debuginfo.

This is where I disagree.* Debuginfo is both huge (since it contains
lots of data beyond the basic symbol information in kallsyms) and is
also not necessarily available on user systems, meaning that any
sort of patching or debugging tool intending to get wide use can't
rely on it.* Further, any system which contains third-party modules
(open source or not) will not have symbol data for those modules
unless the vendors of those third-party modules provide a separate
debuginfo package (many do not); with kallsyms, you're guaranteed to
have accurate information that comes from the modules that are
actually loaded on the system.



As I think I mentioned before, when folks upgrade the kernel version
on disk on a Debian system and don't immediately reboot (which folks
do _all the time_ whether they're using Ksplice or not), and then
load kernel modules, they'll get kernel modules from the upgraded
kernel (at least in the common case where the ABI doesn't change).*
As a consequence, if you're any sort of debugging/instrumentation
tool that inspects the running kernel's code, you need to be able to
handle the case where the kernel is running modules that don't
actually go with either the running kernel (via "uname -a") or the
currently version of the linux-image-* package installed on disk.*
Trying to do anything to get symbol information in that sort of
situation using debuginfo is a disaster; what you want is kallsyms.

*


> That said, Ksplice doesn't require CONFIG_KALLSYMS_ALL --
> the Ksplice Uptrack service has been providing updates for systems
> running Debian Linux since 2009. While your enabling
> CONFIG_KALLSYMS_ALL might allow us to delete like 50 lines of code 2
> years from now when Squeeze reaches end of life, I submitted this
> bug report primarily because I'd like it to be the case that other
> folks developing similar innovative new technologies don't have to
> do the extra work of supporting !CONFIG_KALLSYMS_ALL in order to
> support all the major Linux distributions. I hope you'll consider
> my suggestion on its technical merits.

I'm going to have see a request from an actual other person before I
care to spend time on this.

(In case anyone else in the kernel team wants to proceed with this,
that's not a NAK. The issue is that memory and/or flash partition
constraints make this unsuitable for some configurations, and you'll
need to work out which ones to enable it for.)


CONFIG_KALLSYMS_ALL adds less than 1% to the size of the kernel over
CONFIG_KALLSYMS (obviously this depends on what options one had
enabled in the first place), so only on truly embedded settings will
that matter at all.* Could you at least just enable it for the
architectures where none of Debian's stock kernels are designed for
embedded environments (e.g. x86, sparc, power)?



*** *** -Tim Abbott
 
Old 09-09-2012, 07:13 PM
Ben Hutchings
 
Default Bug#660288: Please enable CONFIG_KALLSYMS_ALL

On Thu, 2012-08-02 at 16:31 -0400, Tim Abbott wrote:
> On 06/07/2012 07:34 PM, Ben Hutchings wrote:
>
> >
> > On Mon, Jun 04, 2012 at 05:26:28PM -0400, Tim Abbott wrote:
> > > Hi Ben,
> > >
> > > Your comment about source code is rather off-topic for this bug
> > > report, but since there seems to be a misunderstanding on this
> > > point, I'd like to clarify: Every Ksplice update tarball ships with
> > > a README file containing instructions on how to request the source
> > > code for that update from the appropriate people in Oracle Legal.
> > > Anyone who follows those instructions can get a copy of the relevant
> > > source code.
> >
> > I understand that Matthew Garrett tried to take up this offer a while
> > ago, and is still waiting for complete source code. It doesn't seem
> > to be a good faith attempt to fulfil GPL obligations.
> This is not my department, but as I understand it, Matthew Garrett
> received complete source code in response to each of his various
> requests for Ksplice source code.

I'm satisfied that this is no longer an issue.

[...]
> > I'm going to have see a request from an actual other person before I
> > care to spend time on this.

So this is no longer the case - but that is no guarantee that I will
find the time to deal with this before release.

> > (In case anyone else in the kernel team wants to proceed with this,
> > that's not a NAK. The issue is that memory and/or flash partition
> > constraints make this unsuitable for some configurations, and you'll
> > need to work out which ones to enable it for.)
> CONFIG_KALLSYMS_ALL adds less than 1% to the size of the kernel over
> CONFIG_KALLSYMS (obviously this depends on what options one had
> enabled in the first place), so only on truly embedded settings will
> that matter at all. Could you at least just enable it for the
> architectures where none of Debian's stock kernels are designed for
> embedded environments (e.g. x86, sparc, power)?

Yes, this will probably work.

Ben.

--
Ben Hutchings
Time is nature's way of making sure that everything doesn't happen at once.
 

Thread Tools




All times are GMT. The time now is 01:30 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org