Re: Classification scheme for 2.6 kernel patches

2005-01-11 Thread Marc Haber
On Tue, Jan 11, 2005 at 10:25:37AM +0100, Florian Weimer wrote:
 * Marc Haber:
  On Sun, Jan 09, 2005 at 08:52:59PM +0100, Thiemo Seufer wrote:
  Cherrypicking makes little sense, because there are only cherries. :-)
 
  For my systems, I care about security holes being fixed, but I do not
  care about some obscure video hardware, or additional features. So
  Cherry is relative.
 
 Fix upstream's security process,

Broken beyond repair, IMO.

 or use vendor kernels.

Which is what I am trying to do. Debian is a vendor.

Greetings
Marc

-- 
-
Marc Haber | I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things.Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Classification scheme for 2.6 kernel patches

2005-01-09 Thread Marc Haber
Hi,

A few months ago, I asked on this list for more informative
description of patches enabling non-kernel hackers to choose
individual patchsets for their local kernels. Unfortunately, that
question was denied pretty fast. Looks like you guys don't have time
to write more extensive docs.

cleanup: Cosmetic change
bugfix: Fixes a bug that might result in errant behavior
crashfix: Fixes a bug that might result in a kernel crash
oopsfix: Fixes a bug that might result in a kernel oops
build: Fixes a build time issue
feature: Adds a new feature
maybe-security: Fixes an issue that might pose a security problem
security: Fixes a sure security problem
license: Patch accompanying driver removal due to license issues
documentation: Documentation patch only
patchfix: fixes a bug introduced by some other patch

Architecture-specific tags do not seem to be necessary as architecture
specific patches have the architecture in their file name.

To locate possible problems with the classification, I have tried to
roughly classify the patches from current 2.6.10 svn:

x86-i486_emu.dpatch feature
tty-locking-fixes9.dpatch   bugfix
sparc64-hme-lockup.dpatch   bugfix
sparc32-initrd-memcpy.dpatchbugfix
smbfs-overflow-fixes.dpatch maybe-security
smbfs-overflow-fixes-2.dpatch   maybe-security
sec_brk-locked.dpatch   security
remove-references-to-removed-drivers.dpatch license
powerpc-serial.dpatch   bugfix
powerpc-pegasos-via82cxxx.dpatchbugfix
powerpc-pegasos-2.dpatchfeature
powerpc-g4-l2-flush-errata.dpatch   bugfix
modular-vesafb.dpatch   feature
modular-vesafb-2.dpatch feature
modular-ide.dpatch  bugfix
modular-ide-pnp.dpatch  feature
modular-ide-2.dpatchfeature
marvell-pegasos.dpatch  feature
ia64-irq-affinity-upfix.dpatch  build
ia64-generic-no-smp.dpatch  build
ia64-generic-no-smp-1-to-2.dpatch   build
ia64-bte_error-missing-include.dpatch   build
fs-asfs.dpatch  feature
fix-mxser-compile.dpatchbuild
drm-locking-fixes.dpatchcrashfix
drivers-scsi_changer.dpatch feature
drivers-net-tg3-readd.dpatchlicense
drivers-net-8139too-locking.dpatch  crashfix
drivers-input-psaux-hacks.dpatchfeature
drivers-ide-dma-blacklist-toshiba.dpatchbugfix
drivers-ide-__devinit.dpatchcleanup
doc-post_halloween.dpatch   documentation
alsa-module-load-fix.dpatch crashfix
032-do_brk_security_fixes.dpatchsecurity
031-sg_scsi_ioctl_int_overflows.dpatch  security
030-moxa_user_copy_checking.dpatch  security
029-random_poolsize_overflow.dpatch security
028-do_brk_security_fixes.dpatchsecurity
027-track_dummy_capability-2.dpatch cleanup
026-nfs_o_direct_error.dpatch   maybe-security
025-track_dummy_capability.dpatch   maybe-security
024-nfs_incorrect_df_output.dpatch  bugfix
023-nfs_dentry_refcount.dpatch  bugfix
022-sunrpc_xdr_flush_pages.dpatch   bugfix
021-sunrpc_check_before_kill.dpatch bugfix
020-clear_cyrix_mii_ecx_reg.dpatch  bugfix
019-conntrack_tcp_RST_handling.dpatch   bugfix
018-ipt_recent_proc_remove.dpatch   bugfix
017-conntrack_sctp_sysctl.dpatchbugfix
016-cs461x_gameport.dpatch  feature
015-vmscan_total_scanned.dpatch bugfix
014-acpi_video_dev_slab_corruption.dpatch   maybe-security
013-conntrack_standalone_sysctl.dpatch  bugfix
012-conntrack_standalone_proc_removal.dpatchbugfix
011-parport_pc_module_parm_mixing.dpatchcleanup
010-sparc64_macro_pmd_offset.dpatch cleanup
009-ipt_ecn_corrupt_chksum.dpatch   bugfix
008-sock_without_ipv6.dpatchbuild
007-pci_ide_no_reserve.dpatch   bugfix
006-zatm_cast_fix_fix.dpatchbuild
005-sparc64_no_i_sock-2.dpatch  patchfix
004-sparc64_no_i_sock.dpatchbuild
003-libata_alpha_build_fix.dpatch   build
002-pio_err_handling.dpatch bugfix
001-acpi_ibm_exit.dpatchcleanup

One possible source of problems is that some patches, for example the
patchfix patches, depend on some other patches. In those case, that
dependency needs to be documented more clearly.

Additionally, maybe the bugfix category needs to be split into more
categories, we have too 

Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Thiemo Seufer
Marc Haber wrote:
 Hi,
 
 A few months ago, I asked on this list for more informative
 description of patches enabling non-kernel hackers to choose
 individual patchsets for their local kernels. Unfortunately, that
 question was denied pretty fast. Looks like you guys don't have time
 to write more extensive docs.
[snip]
 I would like to solicit your comments about this concept.

I think the effort to do so is better invested elsewhere. As a
general rule, the kernel team strives to keep the debian-specific
patches to a minimum. For people without in-depth kernel knowledge
it's probably best to take the full set of patches and add their
own (feature- ?) patches on top.


Thiemo




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Christoph Hellwig
On Sun, Jan 09, 2005 at 07:40:06PM +0100, Thiemo Seufer wrote:
 I think the effort to do so is better invested elsewhere. As a
 general rule, the kernel team strives to keep the debian-specific
 patches to a minimum. For people without in-depth kernel knowledge
 it's probably best to take the full set of patches and add their
 own (feature- ?) patches on top.

Agreed. The package is not a repository for cherrypicking patches
but intended to used as a whole thing.




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Marc Haber
On Sun, Jan 09, 2005 at 07:40:06PM +0100, Thiemo Seufer wrote:
 I think the effort to do so is better invested elsewhere. As a
 general rule, the kernel team strives to keep the debian-specific
 patches to a minimum. For people without in-depth kernel knowledge
 it's probably best to take the full set of patches and add their
 own (feature- ?) patches on top.

Actually, the kernel of my dreams is more near to the vanilla
kernel.org kernel, so I'd like to be able to throw out patches that
you need to apply because of your _much_ broader user base.

otoh, I would like to run a 2.6.10 kernel _now_ and cannot take the
distribution kernel because it is still stuck in NEW. It is adviseable
to take a snapshot from the Debian kernel svn?

And, without trolling, I'd like to build my local kernels from sources
that haven't had drivers removed because of non-free licenses.

Greetings
Marc

-- 
-
Marc Haber | I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things.Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Marc Haber
On Sun, Jan 09, 2005 at 08:25:33PM +0100, Christoph Hellwig wrote:
 Agreed. The package is not a repository for cherrypicking patches
 but intended to used as a whole thing.

I am pretty disappointed about that attitude towards your users. What
exactly is the problem with a little more docs to _allow_ cherrypicking?

Greetings
Marc

-- 
-
Marc Haber | I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things.Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Matthew Wilcox
On Sun, Jan 09, 2005 at 08:33:51PM +0100, Marc Haber wrote:
 Actually, the kernel of my dreams is more near to the vanilla
 kernel.org kernel, so I'd like to be able to throw out patches that
 you need to apply because of your _much_ broader user base.
 
 otoh, I would like to run a 2.6.10 kernel _now_ and cannot take the
 distribution kernel because it is still stuck in NEW. It is adviseable
 to take a snapshot from the Debian kernel svn?
 
 And, without trolling, I'd like to build my local kernels from sources
 that haven't had drivers removed because of non-free licenses.

I think only one of my machines is running a Debian-built kernel.  Debian
is much more forgiving of using a stock kernel than some other distributions.

-- 
Next the statesmen will invent cheap lies, putting the blame upon 
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince 
himself that the war is just, and will thank God for the better sleep 
he enjoys after this process of grotesque self-deception. -- Mark Twain




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Marc Haber
On Sun, Jan 09, 2005 at 07:36:47PM +, Matthew Wilcox wrote:
 On Sun, Jan 09, 2005 at 08:33:51PM +0100, Marc Haber wrote:
  Actually, the kernel of my dreams is more near to the vanilla
  kernel.org kernel, so I'd like to be able to throw out patches that
  you need to apply because of your _much_ broader user base.
  
  otoh, I would like to run a 2.6.10 kernel _now_ and cannot take the
  distribution kernel because it is still stuck in NEW. It is adviseable
  to take a snapshot from the Debian kernel svn?
  
  And, without trolling, I'd like to build my local kernels from sources
  that haven't had drivers removed because of non-free licenses.
 
 I think only one of my machines is running a Debian-built kernel.  Debian
 is much more forgiving of using a stock kernel than some other distributions.

It definetely is, and it is exceptionally good in allowing usage of
infrastructure for local builds and installation as well.
kernel-package is one of the big advantages that has driven me to
Debian years ago.

Using infrastructure that makes individual patch files is a big step
forward as well as this enables people to individually choose their
patch sets.

The progress is impressive. What we need now are better docs, and a
few minor tweaks in the tools.

Greetings
Marc

-- 
-
Marc Haber | I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things.Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Thiemo Seufer
Marc Haber wrote:
 On Sun, Jan 09, 2005 at 07:40:06PM +0100, Thiemo Seufer wrote:
  I think the effort to do so is better invested elsewhere. As a
  general rule, the kernel team strives to keep the debian-specific
  patches to a minimum. For people without in-depth kernel knowledge
  it's probably best to take the full set of patches and add their
  own (feature- ?) patches on top.
 
 Actually, the kernel of my dreams is more near to the vanilla
 kernel.org kernel, so I'd like to be able to throw out patches that
 you need to apply because of your _much_ broader user base.

Well, then you need detailed knowledge about those patches in any case.
(If you know you don't use that code, why bother? The patch won't make
a difference for you.)

 otoh, I would like to run a 2.6.10 kernel _now_ and cannot take the
 distribution kernel because it is still stuck in NEW.

http://www.acm.rpi.edu/~dilinger/

 It is adviseable to take a snapshot from the Debian kernel svn?

You can use the appopriate SVN tag as well if you like.

 And, without trolling, I'd like to build my local kernels from sources
 that haven't had drivers removed because of non-free licenses.

Disable the purge script in the kernel-source source package.


Thiemo




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Thiemo Seufer
Marc Haber wrote:
 On Sun, Jan 09, 2005 at 08:25:33PM +0100, Christoph Hellwig wrote:
  Agreed. The package is not a repository for cherrypicking patches
  but intended to used as a whole thing.
 
 I am pretty disappointed about that attitude towards your users. What
 exactly is the problem with a little more docs to _allow_ cherrypicking?

It generates work. The time is better used for pushing those patches
upstream.

Cherrypicking makes little sense, because there are only cherries. :-)


Thiemo




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Marc Haber
On Sun, Jan 09, 2005 at 08:52:59PM +0100, Thiemo Seufer wrote:
 Cherrypicking makes little sense, because there are only cherries. :-)

For my systems, I care about security holes being fixed, but I do not
care about some obscure video hardware, or additional features. So
Cherry is relative.

Greetings
Marc

-- 
-
Marc Haber | I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things.Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Andres Salomon
On Sun, 09 Jan 2005 20:41:41 +0100, Marc Haber wrote:

 On Sun, Jan 09, 2005 at 08:25:33PM +0100, Christoph Hellwig wrote:
 Agreed. The package is not a repository for cherrypicking patches
 but intended to used as a whole thing.
 
 I am pretty disappointed about that attitude towards your users. What
 exactly is the problem with a little more docs to _allow_ cherrypicking?
 
 Greetings
 Marc

A large problem with this is that patches in our -source packages assume a
certain order.  A patch may depend upon another patch; removing one breaks
the other.  We have this problem when cherry-picking changes from
bitkeeper; I'd imagine it gets even worse when you attempt to pick changes
from -source packages.






Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Marc Haber
On Sun, Jan 09, 2005 at 03:56:48PM -0500, Andres Salomon wrote:
 On Sun, 09 Jan 2005 20:41:41 +0100, Marc Haber wrote:
  On Sun, Jan 09, 2005 at 08:25:33PM +0100, Christoph Hellwig wrote:
  Agreed. The package is not a repository for cherrypicking patches
  but intended to used as a whole thing.
  
  I am pretty disappointed about that attitude towards your users. What
  exactly is the problem with a little more docs to _allow_ cherrypicking?
  
  Greetings
  Marc
 
 A large problem with this is that patches in our -source packages assume a
 certain order.  A patch may depend upon another patch; removing one breaks
 the other.  We have this problem when cherry-picking changes from
 bitkeeper; I'd imagine it gets even worse when you attempt to pick changes
 from -source packages.

Choosing a working patchset would be the responsibility of the picking
user, no work on your side involved.

Greetings
Marc

-- 
-
Marc Haber | I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things.Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835




Re: Classification scheme for 2.6 kernel patches

2005-01-09 Thread Andres Salomon
On Sun, 09 Jan 2005 19:01:38 +0100, Marc Haber wrote:

 Hi,
 
 A few months ago, I asked on this list for more informative
 description of patches enabling non-kernel hackers to choose
 individual patchsets for their local kernels. Unfortunately, that
 question was denied pretty fast. Looks like you guys don't have time
 to write more extensive docs.
 
 cleanup: Cosmetic change

Shouldn't be in Debian kernels.

 bugfix: Fixes a bug that might result in errant behavior

This applies to pretty much every patch.  Even feature additions are
usually fixing bugs of the type machine XYZ doesn't boot! or I
can't use my network card with your kernel

 crashfix: Fixes a bug that might result in a kernel crash
 oopsfix: Fixes a bug that might result in a kernel oops
 build: Fixes a build time issue

Not worth classifying the differences, imo.  Something that might crash
one machine might oops on another; it depends on hardware, what the kernel
config is, etc.  Build problems are the most clear-cut on this list, but 
I can't imagine why you wouldn't want to include them.  There's also
warning build fixes, which might be necessary (if the code in question
causes an oops/crash), or might simply be to shut the compiler up.

 feature: Adds a new feature

Aside from non-x86 stuff, we try to avoid these.  Some archs need them
for basic hardware; in which case, they could easily be considered a bugfix.
The general rule is, if it's not needed to boot/install, it should be in
a separate kernel-patch package.

 maybe-security: Fixes an issue that might pose a security problem

Pretty much any bugfix is possibly a security hole that no one's
figured out how to exploit yet.  This is just another name for bugfix.

 security: Fixes a sure security problem

We already try to use this one.

 license: Patch accompanying driver removal due to license issues

I believe we have exactly 1 patch (tg3-readd) that would be classified
as this.  That patch needs to go away, as well, as it's a hassle to
maintain.

 documentation: Documentation patch only

I would think this would be easy enough to determine simply by
looking at the patch?  We don't really have too many of these to
begin with.

 patchfix: fixes a bug introduced by some other patch

When you end up with a large number of patches, this becomes quite
an annoyance.  

 
 Architecture-specific tags do not seem to be necessary as architecture
 specific patches have the architecture in their file name.
 
 To locate possible problems with the classification, I have tried to
 roughly classify the patches from current 2.6.10 svn:
 
 x86-i486_emu.dpatch   feature
 tty-locking-fixes9.dpatch bugfix
 sparc64-hme-lockup.dpatch bugfix
 sparc32-initrd-memcpy.dpatch  bugfix
 smbfs-overflow-fixes.dpatch   maybe-security
 smbfs-overflow-fixes-2.dpatch maybe-security
 sec_brk-locked.dpatch security
 remove-references-to-removed-drivers.dpatch   license
 powerpc-serial.dpatch bugfix
 powerpc-pegasos-via82cxxx.dpatch  bugfix
 powerpc-pegasos-2.dpatch  feature
 powerpc-g4-l2-flush-errata.dpatch bugfix
 modular-vesafb.dpatch feature
 modular-vesafb-2.dpatch   feature
 modular-ide.dpatchbugfix
 modular-ide-pnp.dpatchfeature
 modular-ide-2.dpatch  feature
 marvell-pegasos.dpatchfeature
 ia64-irq-affinity-upfix.dpatchbuild
 ia64-generic-no-smp.dpatchbuild
 ia64-generic-no-smp-1-to-2.dpatch build
 ia64-bte_error-missing-include.dpatch build
 fs-asfs.dpatchfeature
 fix-mxser-compile.dpatch  build
 drm-locking-fixes.dpatch  crashfix
 drivers-scsi_changer.dpatch   feature
 drivers-net-tg3-readd.dpatch  license
 drivers-net-8139too-locking.dpatchcrashfix
 drivers-input-psaux-hacks.dpatch  feature
 drivers-ide-dma-blacklist-toshiba.dpatch  bugfix
 drivers-ide-__devinit.dpatch  cleanup
 doc-post_halloween.dpatch documentation
 alsa-module-load-fix.dpatch   crashfix
 032-do_brk_security_fixes.dpatch  security
 031-sg_scsi_ioctl_int_overflows.dpatchsecurity
 030-moxa_user_copy_checking.dpatchsecurity
 029-random_poolsize_overflow.dpatch   security
 028-do_brk_security_fixes.dpatch  security
 027-track_dummy_capability-2.dpatch   cleanup

This actually fixes 025.  It could be considered security, or
cleanup, or patchfix.  Kind of hard to classify it with one
word.

 026-nfs_o_direct_error.dpatch