Re: Forthcoming changes in kernel-package

2009-04-07 Thread Manoj Srivastava
On Thu, Feb 26 2009, Theodore Tso wrote:

 On Fri, Feb 20, 2009 at 12:56:30PM -0600, Manoj Srivastava wrote:
  BTW, I have a set of patches you might want to consider.  I'll file
  them in BTS if you're currently making make-kpkg.
 
 Please. I have been thinking about the request you made for
  debugging symbols being packaged, and now I do have some time to play
  with building kernels again, I would like to see that in Squeeze.

 Sorry for the delay; I've sent you the private patches I've been using
 for make-kpkg.  Some of them are quite hackish, and some of they you
 may have fixed in other ways, so I won't feel bad at all if you need
 to significantly rework them before you can merge them into your
 master sources.

Most of these bugs had been fixed, and all but one have been
 fixed by last night's upload into experimental. The only one remaining
 is the one about creating a new debuginfo package; I am torn between
 letting the debuginfo remain with the image package, but move the debug
 infromation from /lib/modules into /usr/ or /var; and to creating a
 whole new package just for the debugging information.

manoj
-- 
The Gordian Maxim: If a string has one end, it has another.
Manoj Srivastava sriva...@debian.org http://www.debian.org/~srivasta/  
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Forthcoming changes in kernel-package

2009-04-07 Thread Manoj Srivastava
Hi,

A few hours ago, a new version of kernel-package was uploaded to
 Experimental.  This is a major change, the new kernel-package is far
 more nimble, more flexible, and supports people who make a minor change
 to a kernel, or who update the kernel sources (via git or otherwise),
 and want a minimal, simple, recompile. 

 79 files changed, 1776 insertions(+), 3706 deletions(-)

The full NEWS.Debian file is appended below, but I'll highlight
 the major differences: This version does not support the official
 images (which is OK, since the kernel  team thinks kernel-package is
 broken anyway, and have been deprecating it for a few years now), it
 does not run a bootloader, or manage symlinks, or create an init ram fs
 for you -- since the policies governing these actions were becoming too
 rigid, and had to cater to the lowest common denominator.

Instead, the package comes with example scripts that can be
 dropped into /etc/kernel/*.d directories to do all that, and more (you
 can change the number of symlinks you keep,  for example). Now you can
 add actions to {pre,post}{inst,rm} stages of the package installation or
 removal, independently, for image, header, source, and doc packages.

More importantly, the initramfs scripts provided work with the
 make-kpkg images as well as the official images, and are thus better
 than the script shipped with initramfs-tools themselves, as they offer
 a super set of functionality.

This version of kernel-package also demonstrates how the
 postsinst script communicates with the initramfs scripts so that no
 initramfs is generated in case you do not want it (I personally compile
 all modules in my non-laptop kernel, and thus do not need an
 initramfs).

I have not yet seeded the  env with the maintainer script
 parameter arguments, but I'll put in what Frans suggested unless there
 are objections.

Please take this for a spin. Kick the tires. I need helpe from
 people who run Xen machines, since  I do not use Xen, and would like to
 make the Xen images work better.

manoj

kernel-package (12.001) experimental; urgency=low

  * This is a major change in functionality; do not upgrade unless you are
prepared for the changes required on target machines.
  * make-kpkg removes and re-creates ./debian on every invocation

This does make the kernel-package far more nimble; we now offer less
surprise to users who did not expect stampts that the kernel-packagge
used to not do duplicate work. Now, if you edit a couple of files in
the kernel source, and run make-kpkg, the kernel will build as
expected. There are no more version mismatch errors, and the kernel
version can be modified using localconfig as one desires. With this,
kernel-package can rountinely be used to build kernels out of the git
tree.

The con is that we no longer cater to official kernels, or to anyone who
expected content in ./debian to persist. At some point, there are plans
to implement an overlay directory that will shadow
/usr/share/kernel-package/ruleset, but that is not yet implemented.
  * Get rid of the facility to patch kernel sources

The patch the kernel facility was adding complexity, and failing to
provide the flexibility required for a generic patching facility. It used
to be useful at one point, but in the modern parlance, witht he
widespread use of distribute version control systems, and various
facilities to manage source and patch them, the built in version was
clunky.  This means the --added-patches option of make-kpkg is gone,
the work-around is to prepare the kernel sources _before_ calling
make-kpkg. 
  * Remove special case code for official kernels

For the longest tine (well, ever since Herbert Xu too over building
kernel images from me), kernel-package has carried specal case code
for official images. This has caused some problems, recently, since
the need to preserve ./debian has caused no end of problems when the
version changed out from under ./debian, or when people wanted to edit
a file and expected kernel-package to do a minimal recompile.

However, sometime in the Etch release cycle, the kernel team
deprecated kernel-package as the means of building official kernels,
and therefore, a full release cycle later, we can get rid of the
special case rules used for official packages. Also, this allows us to
drop ./debian at teh drop of a hart, and recreate it with an version
that reflects the current state of the kernel sources.
  * No longer ship header debs that create symbolic links in /usr/src,
instead, ship an example shell script that replicated the old
behaviour. This script can then be deployed on the target machines,
and could be a part of a locally created kernel configuration package,
if one needs to deploy the same behavior across a cluster of
machines. 
  * 

Re: Forthcoming changes in kernel-package

2009-02-26 Thread Theodore Tso
On Fri, Feb 20, 2009 at 12:56:30PM -0600, Manoj Srivastava wrote:
  BTW, I have a set of patches you might want to consider.  I'll file
  them in BTS if you're currently making make-kpkg.
 
 Please. I have been thinking about the request you made for
  debugging symbols being packaged, and now I do have some time to play
  with building kernels again, I would like to see that in Squeeze.

Sorry for the delay; I've sent you the private patches I've been using
for make-kpkg.  Some of them are quite hackish, and some of they you
may have fixed in other ways, so I won't feel bad at all if you need
to significantly rework them before you can merge them into your
master sources.

The BTS bug numbers are #517290, #517291, #517292, and #517293.

Best regards,

- Ted


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Forthcoming changes in kernel-package

2009-02-25 Thread Goswin von Brederlow
Manoj Srivastava sriva...@ieee.org writes:

 On Wed, Feb 18 2009, Theodore Tso wrote:

 On Mon, Feb 09, 2009 at 12:14:49AM -0600, Manoj Srivastava wrote:
 Hi,
 
 This is a heads up for a major change in kernel-package, the
  tool to create user packaged kernel images and headers; which will
  make the make-kpkg script far less error prone, and far more
  deterministic.
 
a. Every invocation of kernel-package will remove ./debian directory,
   and regenerate the changelog and control files. This will get rid
   of any remaining issues with the ./debian directory getting out of
   sync with the kernel sources; and will allow people to make small
   tweaks to the kernel sources and have  make-kpkg reflect those
   changes.

 Is there going to be a way for people to replace the changelog with
 one that contains useful information in that case?  I've been doing
 this by doing a make-kpkg configure and then editing the
 debian/changelog file afterwards...

 I have a plan for something like this, though currently there is
  no code. I was thinking of doing an overlay for ./debian, kind of
  like what ikiwiki and request-tracker do; so /usr/share/kernel-package
  contain the information that goes into ./debian; but if there is a user
  specified overlay, then files present in the overlay are used instead
  (files not in the overlay dir still come from the default location).

It might be nice to have a changelog.d/ directory in the source with
sniplets for the debian/changelog. All files would be cated together
and used as the text for the current changelog entry.

This would have two use cases:

1) Patch packages can drop a file in there (when the user applies the
   patch) saying what got applied.

2) Users can add their own files there detailing what they changed.
   E.g. '  * added CONFIG_SCSI_DISK=y'

As I write this I notice that (2) doesn't quite work. For my manual
entries I would like to specify a version. E.g. in 2.6.26-1 I added
CONFIG_SCSI_DISK=y, in 2.6.26-2 I added CONFIG_SCSI_CDROM=y and in
2.6.26-3 I removed it again.

But maybe that goes too far. Just being able to add to the current
entry would be a good start already.

MfG
Goswin


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Forthcoming changes in kernel-package

2009-02-25 Thread Manoj Srivastava
On Wed, Feb 25 2009, Goswin von Brederlow wrote:

 Manoj Srivastava sriva...@ieee.org writes:

 On Wed, Feb 18 2009, Theodore Tso wrote:

 On Mon, Feb 09, 2009 at 12:14:49AM -0600, Manoj Srivastava wrote:
 Hi,
 
 This is a heads up for a major change in kernel-package, the
  tool to create user packaged kernel images and headers; which will
  make the make-kpkg script far less error prone, and far more
  deterministic.
 
a. Every invocation of kernel-package will remove ./debian directory,
   and regenerate the changelog and control files. This will get rid
   of any remaining issues with the ./debian directory getting out of
   sync with the kernel sources; and will allow people to make small
   tweaks to the kernel sources and have  make-kpkg reflect those
   changes.

 Is there going to be a way for people to replace the changelog with
 one that contains useful information in that case?  I've been doing
 this by doing a make-kpkg configure and then editing the
 debian/changelog file afterwards...

 I have a plan for something like this, though currently there is
  no code. I was thinking of doing an overlay for ./debian, kind of
  like what ikiwiki and request-tracker do; so /usr/share/kernel-package
  contain the information that goes into ./debian; but if there is a user
  specified overlay, then files present in the overlay are used instead
  (files not in the overlay dir still come from the default location).

 It might be nice to have a changelog.d/ directory in the source with
 sniplets for the debian/changelog. All files would be cated together
 and used as the text for the current changelog entry.

 This would have two use cases:

 1) Patch packages can drop a file in there (when the user applies the
patch) saying what got applied.

 2) Users can add their own files there detailing what they changed.
E.g. '  * added CONFIG_SCSI_DISK=y'

 As I write this I notice that (2) doesn't quite work. For my manual
 entries I would like to specify a version. E.g. in 2.6.26-1 I added
 CONFIG_SCSI_DISK=y, in 2.6.26-2 I added CONFIG_SCSI_CDROM=y and in
 2.6.26-3 I removed it again.

 But maybe that goes too far. Just being able to add to the current
 entry would be a good start already.

Both these options are far more complex than anything I had
 planned on doing; since while they are laudable goals, the effort
 required seems to be kind of high based on the return -- espescially
 now that the official kernels are not built with kernel-package; the
 audience of kernel-package created images is lower.

However, I'll be happy to incorporate any patches people submit
 to get this feature into kernel-package.

manoj
-- 
People think love is an emotion.  Love is good sense. Ken Kesey
Manoj Srivastava sriva...@debian.org http://www.debian.org/~srivasta/  
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Forthcoming changes in kernel-package

2009-02-20 Thread Manoj Srivastava
On Wed, Feb 18 2009, Theodore Tso wrote:

 On Mon, Feb 09, 2009 at 12:14:49AM -0600, Manoj Srivastava wrote:
 Hi,
 
 This is a heads up for a major change in kernel-package, the
  tool to create user packaged kernel images and headers; which will
  make the make-kpkg script far less error prone, and far more
  deterministic.
 
a. Every invocation of kernel-package will remove ./debian directory,
   and regenerate the changelog and control files. This will get rid
   of any remaining issues with the ./debian directory getting out of
   sync with the kernel sources; and will allow people to make small
   tweaks to the kernel sources and have  make-kpkg reflect those
   changes.

 Is there going to be a way for people to replace the changelog with
 one that contains useful information in that case?  I've been doing
 this by doing a make-kpkg configure and then editing the
 debian/changelog file afterwards...

I have a plan for something like this, though currently there is
 no code. I was thinking of doing an overlay for ./debian, kind of
 like what ikiwiki and request-tracker do; so /usr/share/kernel-package
 contain the information that goes into ./debian; but if there is a user
 specified overlay, then files present in the overlay are used instead
 (files not in the overlay dir still come from the default location).

I have not yet written the code, since there are several places
 in the build where we look for files in ./debian; and currently there
 is a fallback to /usr/share/kernel-package if ./debian does not exist;
 either I have to remove the fallback, or enhance the fallback mechanism
 (at potentially significant run-time cost).

The cleaner solution would be for make-kpkg to always remove and
 re-create ./debian (with overlays), but make -f ./debian/rules never
 have to deal with anything outside (so to remove the fallback code that
 has sprouted all over the rules files). It might take a few iterations
 to do these changes, but I think it is worth it, for robstness' sake if
 nothing else.

 BTW, I have a set of patches you might want to consider.  I'll file
 them in BTS if you're currently making make-kpkg.

Please. I have been thinking about the request you made for
 debugging symbols being packaged, and now I do have some time to play
 with building kernels again, I would like to see that in Squeeze.

manoj
-- 
Men are from Earth, women are from Earth. Deal with it. George Carlin
Manoj Srivastava sriva...@acm.org http://www.golden-gryphon.com/  
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Forthcoming changes in kernel-package

2009-02-18 Thread Theodore Tso
On Mon, Feb 09, 2009 at 12:14:49AM -0600, Manoj Srivastava wrote:
 Hi,
 
 This is a heads up for a major change in kernel-package, the
  tool to create user packaged kernel images and headers; which will
  make the make-kpkg script far less error prone, and far more
  deterministic.
 
a. Every invocation of kernel-package will remove ./debian directory,
   and regenerate the changelog and control files. This will get rid
   of any remaining issues with the ./debian directory getting out of
   sync with the kernel sources; and will allow people to make small
   tweaks to the kernel sources and have  make-kpkg reflect those
   changes.

Is there going to be a way for people to replace the changelog with
one that contains useful information in that case?  I've been doing
this by doing a make-kpkg configure and then editing the
debian/changelog file afterwards...

BTW, I have a set of patches you might want to consider.  I'll file
them in BTS if you're currently making make-kpkg.

- Ted


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Forthcoming changes in kernel-package

2009-02-13 Thread Bernd Zeimetz
Hi Mano,

 This is a heads up for a major change in kernel-package, the
  tool to create user packaged kernel images and headers; which will
  make the make-kpkg script far less error prone, and far more
  deterministic.

kernel-package works well for me since years now, thanks for for your work!

Bernd

-- 
 Bernd Zeimetz   Debian GNU/Linux Developer
 GPG Fingerprint: 06C8 C9A2 EAAD E37E 5B2C BE93 067A AD04 C93B FF79


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Forthcoming changes in kernel-package

2009-02-09 Thread Michael Tautschnig
[...]
c. his means there will be no need for /etc/kernel-img.conf file any
   more.

[...]

Isn't this file also read in the postinst of the official kernels? In FAI we
had several issues when kernel-img.conf was missing or hadn't had the proper
values in there.

Best,
Michael



pgpuCuaKQ5MHq.pgp
Description: PGP signature


Re: Forthcoming changes in kernel-package

2009-02-09 Thread Stefan Lippers-Hollmann
Hi

On Montag, 9. Februar 2009, Michael Tautschnig wrote:
 [...]
 c. his means there will be no need for /etc/kernel-img.conf file any
more.
 
 [...]
 
 Isn't this file also read in the postinst of the official kernels? In FAI we
 had several issues when kernel-img.conf was missing or hadn't had the proper
 values in there.
[...]

As of yet kernel-package is still used in the official kernel builds[1], 
by using make-kpkg to build and create the linux-image packages 
(linux-headers is assembled manually).

linux-2.6/debian/rules.real
[...]
kpkg_image := $(setup_env)
ifdef DEBIAN_KERNEL_JOBS
  kpkg_image += CONCURRENCY_LEVEL=$(DEBIAN_KERNEL_JOBS)
endif
kpkg_image += make-kpkg --arch '$(firstword $(KPKG_ARCH) $(ARCH))' 
--cross-compile=- --stem linux --config silentoldconfig
ifneq ($(INITRAMFS),False)
  kpkg_image += --initrd
endif
ifdef KPKG_SUBARCH
  kpkg_image += --subarch '$(KPKG_SUBARCH)'
endif
[...]

Which is called from the following targets:
$(STAMPS_DIR)/setup_$(ARCH)_$(FEATURESET)_$(FLAVOUR)_kernel-package:
[...]$(kpkg_image) configure
[...]

$(STAMPS_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)_kernel-package:
[...]$(kpkg_image) build
[...]

install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR)_kernel-package:
[...]$(kpkg_image) kernel-image
[...]

Due to this, the bootloader setup relies on postinst_hook/ postrm_hook and 
do_initrd in /etc/kernel-img.conf and honours the rest of the settings.

Regards
Stefan Lippers-Hollmann

[1] 
http://svn.debian.org/viewsvn/kernel/dists/trunk/linux-2.6/debian/rules.real?view=markup


signature.asc
Description: This is a digitally signed message part.


Re: Forthcoming changes in kernel-package

2009-02-09 Thread Manoj Srivastava
On Mon, Feb 09 2009, Michael Tautschnig wrote:

 [...]
c. his means there will be no need for /etc/kernel-img.conf file any
   more.

 [...]

 Isn't this file also read in the postinst of the official kernels?
 In FAI we had several issues when kernel-img.conf was missing or
 hadn't had the proper values in there.

I think that is a carry over from the days when the official
 kernels were based on kernel-package. I am given to understand that is
 not how things are supposed to work post lenny.

In any case, I guess what I meant to say was that images created
 by kernel-package will stop paying attention to /etc/kernel-img.conf,
 and thus there will be no reason to keep that file for the sake of
 kernel-package images. kernel-package shall also stop creating the file
 if it does not exist.

Another thing going away is the on-th-fly patching of the
 sources; the preferred way to patch the sources will be to do so
 outside of make-kpkg, before invoking the make-kpkg script to package
 the kernel images.

All that convoluted code excised from kernel-package ought to
 improve robustness.

manoj
-- 
Love may laugh at locksmiths, but he has a profound respect for money
bags. Sidney Paternoster, The Folly of the Wise
Manoj Srivastava sriva...@acm.org http://www.golden-gryphon.com/  
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Forthcoming changes in kernel-package

2009-02-08 Thread Manoj Srivastava
Hi,

This is a heads up for a major change in kernel-package, the
 tool to create user packaged kernel images and headers; which will
 make the make-kpkg script far less error prone, and far more
 deterministic.

   a. Every invocation of kernel-package will remove ./debian directory,
  and regenerate the changelog and control files. This will get rid
  of any remaining issues with the ./debian directory getting out of
  sync with the kernel sources; and will allow people to make small
  tweaks to the kernel sources and have  make-kpkg reflect those
  changes.
   b. make-kpkg will no longer have special case code to  run boot
  loaders and init ram fs creator invocations. Instead, it will pay
  attention to scripts dropped into  the directories
  /etc/kernel/{src_,header_,}{pre,post}{inst,rm}.d/
  This is far more flexible, and allows all  kinds of packages to
  drop in scripts there
   c. his means there will be no need for /etc/kernel-img.conf file any
  more.
   d. The make-kpkg infrastructure will try to leverage the KBUILD
  system far more than it has done in the past, which will make it
  more robust against  upstream kernel changes.

Since make-kpkg has been deprecated by the kernel team, and thei
 advice has been to not use kernel package for kernel image building,
 this should have no impact on official kernels.

manoj
-- 
Apples have meant trouble since eden. MaDsen Wikholm,
mwikh...@at8.abo.fi
Manoj Srivastava sriva...@debian.org http://www.debian.org/~srivasta/  
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org