Bug#535922: firmware-nonfree: Need to include 'advansys' firmware

2009-07-05 Thread Nathanael Nerode
Package: firmware-nonfree
Version: 0.17
Severity: important

Starting with Linux 2.6.30, the advansys firmware is not built into the kernel,
but loaded.  This firmware is BSD-licensed so it's safe to put it in non-free 
(it
has no source so it's not free).

These are the four files needed:
3550.bin
38C0800.bin
38C1600.bin
mcode.bin

They go in /lib/firmware/advansys.

It's in the linux/kernel/git/dwmw2/linux-firmware.git repo.

It seems important to me that firmware-nonfree start distributing these files 
before
the 2.6.30 kernel hits 'testing', in order that users of the advansys SCSI 
cards can
have a smooth transition.

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (990, 'testing'), (499, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.29-2-686 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash



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



Bug#524382: firmware-linux: Package description written in broken English

2009-04-16 Thread Nathanael Nerode
Package: firmware-linux
Version: 0.16
Severity: minor

The package description for firmware-linux currently reads:
This package contains the binary firmware for all firmwares which was
formally shipped in the Linux image.

Note subject-verb agreement problem (firmwares was) and sound-alike 
word confusion (formally instead of formerly).

The package description SHOULD read as follows:
This package contains the binary firmware for all firmwares which were
formerly shipped in the Linux image.

Thanks.

-- System Information:
Debian Release: 5.0
  APT prefers testing
  APT policy: (990, 'testing'), (50, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-1-686 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

firmware-linux depends on no packages.

firmware-linux recommends no packages.

Versions of packages firmware-linux suggests:
ii  initramfs-tools   0.92o  tools for generating an initramfs
ii  linux-image-2.6.26-1-686 [lin 2.6.26-12  Linux 2.6.26 image on PPro/Celeron



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



Debian's Linux kernel continues to regress on freedom

2007-09-11 Thread Nathanael Nerode
I'm not sure I can take the Debian kernel team seriously any more.

http://wiki.debian.org/KernelFirmwareLicensing states, in part:
Debian kernel team identifies the following three types of firmware, currently
found in the Linux kernel:

1. Sourceless binary blobs with no license, no explicit permission to 
redistribute, or
   an explicit prohibition to redistribute.

   This category currently includes the dabusb, dgrs, emi62, keyspan, smctr,
   cops, emi26, and 3c359 drivers. Removal of these drivers will have minimal
   impact on the users, as they are believed to be unpopular and not likely to
   be required during the installation.

It has been agreed within Debian kernel team, that the firmware in category 1
is not acceptable in Debian. It is the intention of the kernel team to prune 
the
affected drivers from the upstream tarball.

The most recent linux-source-2.6.22 contains the following files:

drivers/media/video/dabfirmware.h
drivers/net/drgs_firmware.c
drivers/usb/misc/emi26_fw.h
drivers/usb/misc/emi62_fw_m.h 
drivers/usb/misc/emi62_fw_s.h
drivers/usb/serial/keyspan_mpr_fw.h
drivers/usb/serial/keyspan_usa*_fw.h (11 files)
drivers/net/tokenring/smctr_firmware.h
drivers/net/appletalk/cops_ltdrv.h
drivers/net/appletalk/cops_ffdrv.h
drivers/net/tokenring/3c359_microcode.h

In other words, *all* of the above drivers.  It's even worse than that.  Look
at the information about drgs:

may 20:

 Dear Andres:

 After further research, we found that this product was killed in place
 and never reached the market.  We would like to request that this not be
 included.  

There will be no users impacted by pulling support.

  -dil

Non-free material is being included in main for the benefit of *precisely zero* 
users.  There's no two ways about this: this is a Social Contract violation.

Coming back to looking at Debian after being preoccupied by family business, I 
see that the kernel team is not even seriously trying to separate out any 
non-free material.  There have been severe regressions from sarge and no 
attempt 
is being made to fix them.

I guess the Social Contract really is a joke.  I don't know why new applicants 
are supposed to agree to it.  Old members apparently violate it at will for 
years 
with no consequences.

It doesn't make me respect Debian very much.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Read it and weep.
http://rawstory.com/news/2005/Text_of_Gore_speech_0116.html


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



Bug#390978: Yes, I can reproduce

2006-12-31 Thread Nathanael Nerode
Yes, I can reproduce this bug with 2.6.18-3-686.

I've worked around it permanently by adding the line

blacklist ehci_hcd

to the file

modprobe.d/ncn

so if you need any testing you'll have to ask.


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



Re: Release team position on the state of kernel firmware, post GR2006-007

2006-10-24 Thread Nathanael Nerode
Steve Langasek wrote:
With the conclusion of GR 2006-007[1], we now have a clear statement from the
Debian developers that it is acceptable to release etch with firmware that
does not meet our usual requirements for inclusion in main, subject to three
principal conditions:

  1. the freedom of the kernel for etch will not be a regression relative to
 sarge

Unfortunately, the following additional hex lumps which you did
not mention fall in this category:

net/bnx2_fw.h
net/cassini.h
net/e100.c (e100 is salvagable for reasons noted in its specific bug.)
net/starfire_firmware.h
usb/serial/ti_fw_3410.h
usb/serial/ti_fw_5052.h

In addition, the readdition of tg3 and acenic are clearly regressions.
Interpreting the meaning of the GR to be directly contrary to its
actual text is, shall we say, questionable.  I'm not going to complain
too much about that because I expect this will be fixed immediately
after etch.  If it's not, I shall be ticked.


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



Bug#390994: Interesting discoveries in e100 microcode!

2006-10-15 Thread Nathanael Nerode
* D102_E_RCVBUNDLE_UCODE is identical in OpenBSD and Linux.
* D101M_B_RCVBUNDLE_UCODE is not.  OpenBSD contains version 2.10.
Linux 2.6.17 contains an unknown version. The differing sequence is near the
end:

0x00041000, 0x00010004, 0x003806A8 in Linux
0x00041000, 0x003806A8 in BSD

Looks like an extra opcode.  

* D101S_RCVBUNDLE_UCODE is not.  OpenBSD contains version 1.20; Linux
2.6.17 contains an unknown version.  There are two differences this time.

A one-bit difference:
0x000C0001, 0x00101213, 0x00260FF8, 0x00041000, 0x00010004 in BSD
0x000C0001, 0x00101213, 0x00260FF7, 0x00041000, 0x00010004 in Linux

And another difference later:
0x003805A7, 0x, 0x, 0x, 0x, \
0x, 0x, 0x, 0x, 0x, \
0x00130831, 0x0010090B, 0x00124813, 0x000CFF80, 0x00260703, \
0x00041000, 0x00380700, 0x,  in BSD

0x003805A7, 0x, 0x, 0x, 0x, \
0x, 0x, 0x, 0x, \
0x00130831, 0x0010090B, 0x00124813, 0x000CFF80, 0x00260703, \
0x00041000, 0x00010004, 0x00380700  in Linux

Notice that the sequence is moved back one byte in Linux, and the 0x0010004
is inserted (as in M_B).  There should be a trailing zero word in Linux; this 
is clearly a bug in the Linux driver, which currently writes a garbage byte 
to the hardware instead!

If we had source, we would know what these changes meant.  As it is, we don't 
know what they mean, but legally we cannot distribute them unless they are 
considered insignificant to copyright.  Now, it's likely that they *are* 
insignificant-- they're *tiny*.

The e100 firmware in the BSDs originates from a Linux e100 driver release from 
Intel, but a very old one (the 1.x series) which Intel is no longer 
distributing.

--
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


pgp0t4hXJS6Qo.pgp
Description: PGP signature


Bug#390994: that e100 bit

2006-10-10 Thread Nathanael Nerode
Sven Luther wrote:
Can you check that those binary blobs are indeed bit-to-bit identic ? 
I checked the first and last 20 or so bytes of each one -- it will require a 
little program-writing work to put them in a form where I can cmp them, but 
I'm pretty sure what the result will be.

snip
 However, the microcode is still non-free (lack of source).  Conversion to 
userland
 firmware loading should be done (and I might even get around to it myself).  
If
 this is done, I strongly advise that the *same format* and *same filenames* 
be used
 as in OpenBSD, so that the firmware files are interchangable; no point in 
deliberate
 incompatibility.

Indeed. Do you agree that we can do this post-etch, as the current GRs 
propose ? 

Yes.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

A thousand reasons. http://www.thousandreasons.org/
Lies, theft, war, kidnapping, torture, rape, murder...
Get me out of this fascist nightmare!


pgpoxNbOUZhcL.pgp
Description: PGP signature


Bug#390978: linux-image-2.6.17-2-686: USB support regression: USB stick fails with ehci_hcd loaded

2006-10-04 Thread Nathanael Nerode
Package: linux-image-2.6.17-2-686
Version: 2.6.17-9
Severity: normal

In 2.6.15-*, my USB pen drive worked normally.
In 2.6.16-* and 2.6.17-*, if I 'rmmod ehci_hcd' before inserting
it, it works normally.

But if ehci_hcd is loaded, it flakes out badly.  The way it
flakes out varies.

This is a Dell Dimension 4600.

I would be perfectly happy if I could force the kernel to recognize
the pen drive as full speed and not high speed.  But I don't
really want to lose the ability to have other high speed devices.

-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (990, 'testing'), (50, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.17-2-686
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages linux-image-2.6.17-2-686 depends on:
ii  module-init-tools 3.2.2-3tools for managing Linux kernel mo
ii  yaird [linux-initramfs-tool]  0.0.12-18  Yet Another mkInitRD

Versions of packages linux-image-2.6.17-2-686 recommends:
ii  libc6-i686   2.3.6.ds1-4 GNU C Library: Shared libraries [i

-- debconf information:
  linux-image-2.6.17-2-686/postinst/old-initrd-link-2.6.17-2-686: true
  shared/kernel-image/really-run-bootloader: true
  linux-image-2.6.17-2-686/postinst/old-dir-initrd-link-2.6.17-2-686: true
  linux-image-2.6.17-2-686/preinst/lilo-initrd-2.6.17-2-686: true
  linux-image-2.6.17-2-686/preinst/failed-to-move-modules-2.6.17-2-686:
  linux-image-2.6.17-2-686/postinst/depmod-error-initrd-2.6.17-2-686: false
  linux-image-2.6.17-2-686/postinst/create-kimage-link-2.6.17-2-686: true
  linux-image-2.6.17-2-686/postinst/bootloader-test-error-2.6.17-2-686:
  linux-image-2.6.17-2-686/preinst/lilo-has-ramdisk:
  linux-image-2.6.17-2-686/prerm/removing-running-kernel-2.6.17-2-686: true
  linux-image-2.6.17-2-686/preinst/abort-overwrite-2.6.17-2-686:
  linux-image-2.6.17-2-686/preinst/already-running-this-2.6.17-2-686:
  linux-image-2.6.17-2-686/postinst/old-system-map-link-2.6.17-2-686: true
  linux-image-2.6.17-2-686/preinst/bootloader-initrd-2.6.17-2-686: true
  linux-image-2.6.17-2-686/preinst/initrd-2.6.17-2-686:
  linux-image-2.6.17-2-686/preinst/abort-install-2.6.17-2-686:
  linux-image-2.6.17-2-686/preinst/overwriting-modules-2.6.17-2-686: true
  linux-image-2.6.17-2-686/postinst/kimage-is-a-directory:
  linux-image-2.6.17-2-686/preinst/elilo-initrd-2.6.17-2-686: true
  linux-image-2.6.17-2-686/prerm/would-invalidate-boot-loader-2.6.17-2-686: true
  linux-image-2.6.17-2-686/postinst/depmod-error-2.6.17-2-686: false
  linux-image-2.6.17-2-686/postinst/bootloader-error-2.6.17-2-686:


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



Bug#390994: linux-2.6: e100 microcode: distributable with BSD license, but license not in Linux source

2006-10-04 Thread Nathanael Nerode
Package: linux-2.6
Severity: serious
Justification: copyright

OK.  So the e100 microcode situation isn't as bad as we expected -- thanks 
entirely
to OpenBSD.

I'm opening this bug to track this issue because I expect it will be resolved 
relatively
quickly, and because the 'big bug' is getting to be way too much.

There are three different bundles of microcode:
/*  Micro code for 8086:1229 Rev 8  */
...
#define D101M_B_RCVBUNDLE_UCODE \

This is present in OpenBSD, in 
http://www.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/dev/microcode/fxp/rcvbundl.h?rev=1.2content-type=text/plain
under a 3-clause BSD license.  Under the same name.

/*  Micro code for 8086:1229 Rev 9  */
...
#define D101S_RCVBUNDLE_UCODE \

This is present in OpenBSD, in 
http://www.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/dev/microcode/fxp/rcvbundl.h?rev=1.2content-type=text/plain
under a 3-clause BSD license.  Under the same name.

/*  Micro code for the 8086:1229 Rev F/10   */
...
#define D102_E_RCVBUNDLE_UCODE \

This is present in OpenBSD, in 
http://www.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/dev/microcode/fxp/rcvbundl.h?rev=1.2content-type=text/plain
under a 3-clause BSD license.  Under the same name.

It's worth noting that OpenBSD has substantial additional downloadable 
microcode in that
file.

The copyright problem will be fixed as soon as the proper copyright notice and 
license
from OpenBSD's copy is added to Debian's copy.  Simple and excellent.  :-)  
Thanks
OpenBSD!

However, the microcode is still non-free (lack of source).  Conversion to 
userland
firmware loading should be done (and I might even get around to it myself).  If
this is done, I strongly advise that the *same format* and *same filenames* be 
used
as in OpenBSD, so that the firmware files are interchangable; no point in 
deliberate
incompatibility.


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



Re: Preparing linux-2.6 2.6.18-1

2006-10-02 Thread Nathanael Nerode
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Frederik Schueler wrote:
 Hello,
 
 On Mon, Sep 25, 2006 at 02:15:54PM -0400, Nathanael Nerode wrote:
 Change this policy.  You really must make two exceptions:
 (1) Removal of material which Debian cannot legally distribute, if
 upstream insists on keeping it.
 (2) Removal of material which does not satisfy the DFSG, if
 upstream insists on keeping it.
 
 Indeed, this should be another topic for the next kernel-team meeting.
 
 
 One piece of broken functionality is loading firmware before the
 root partition is mounted -- the lack of this breaks netbooting on the
 boards which need the firmware.  However, I can't do anything about this:
 it requires running udev in the initramfs.  This problem is not specific
 to this driver.
 
 the needed functionality is provided by the initramfs-hook in the
 firmware-nonfree package, which makes sure the firmware.agent from udev
 is present in the initramfs too.

Rocking!  I didn't know that was ready.

 A second piece of broken functionality is the functionality provided
 by the firmware: if the firmware isn't there and isn't loaded, the 
 functionality isn't there.  Duh.  I also can't do anything about this.
 
 Which functionality? TSO? 

I believe so.

 Then, firmware-loading support in d-i is still missing, this issue
 should be be fixed too before we consider the patch.
 Firmware loading support patches are being refused in d-i until after etch 
 is released.  Therefore, this amounts to a We will not accept any firmware 
 loading patches until after we release etch policy.  Good to know.  I can
 still queue them up for you to commit afterwards, though.
 
 if we want to release in time, we should indeed collect the patches for
 post-etch.

Excellent.

 2.6.20 should be the target for the first patches, as the
 merge window for 2.6.19 will not be open long enough anymore, except for
 the dgrs removal.

Okey-dokey.

I'm all happy now.  :-)
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFIbuSRGZ0aC4lkIIRArC3AJ99p6DQhY20+vGAO0eIjsWwcHjMZACeNr85
j4rC2towsqrguFtUIuiMc+4=
=5aGE
-END PGP SIGNATURE-


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



Re: Preparing linux-2.6 2.6.18-1

2006-10-02 Thread Nathanael Nerode
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Frederik Schueler wrote:
 Hello,
 
 On Mon, Sep 25, 2006 at 01:30:34PM -0400, Nathanael Nerode wrote:
 I emailed the contact address at Intel about e100, but it seems to forward
 to tech support.  We'll see if anything comes back.
 
 what did you write them?

Tried to describe the problem in detail and asked for either source or a
distribution license which didn't require source.  Fool at the other
end said It's licensed under GPL, so you don't need anything more
(even though I *said* that didn't work in my email).  I told him You're
wrong.  Please forward this to Intel's lawyers.

 IMHO, the topmost priority should be to get DFSG-free sources and an 
 in-tree build infrastructure for the firmwares, like the aic7xxx driver.
 
 We should ask the vendors to relicense the blob and implement 
 request_firmware only if they strictly refuse to provide sources. 
 
 It also would be interesting to know if the blobs are actually code or 
 register bank settings, as they don't need to be removed in the latter 
 case, not being software at all.
 
 Maybe we should prepare a document template which we can send to all
 vendors, listing the reasons for our actions and possible actions we see
 they could take, everything in a friendly legalese so we can expect a
 real answer.

We should.  I've had such bad luck that I suggest someone else write the
template.

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFIbwnRGZ0aC4lkIIRAkVMAJ9hyCXGFWAsAKToY1bXuevfaxvm8gCeIp1X
FSGVya7Z10aARlLz1B+OYRw=
=mOI0
-END PGP SIGNATURE-


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



Re: Preparing linux-2.6 2.6.18-1

2006-10-02 Thread Nathanael Nerode
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Sven Luther wrote:
 On Mon, Sep 25, 2006 at 05:55:22AM -0400, Nathanael Nerode wrote:
 tg3 may follow, if there is
 a good enough patch to do it nicely. This may come, either from someone like
 you (but the patch has to be upstream-quality, which apparently your patch 
 was
 not),
 Yes, it was upstream-quality.  (Although to be honest the *driver* is
 pretty ugly stuff.)  There was one bug spotted by Herbert Xu and fixed
 by him.
 
 This is not the opinion of others of the kernel team who looked at it.

Name one specific problem with it, or stop slandering it.

Really.  Seriously.  I've never gotten an actual technical criticism,
besides the ones I mentioned before, which are all problems with
firmware loading in general, and not problems with my patch itself.
I'd be happy to fix any actual problems, but I can't fix mythical
problems which nobody is willing to describe.

The code *is* ugly.  It's ugly because the upstream code is ugly --
nearly the whole driver is in a spinlock.  I'm not up to rewriting the
entire driver to increase lock granularity: that requires an extremely
detailed understanding of the hardware and driver.
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.5 (GNU/Linux)

iD4DBQFFIcY0RGZ0aC4lkIIRAngFAJ91LnvcBaFsz4XqvYTkFrWbZXRbHwCXVQXI
1tNQYIBlsz4OFrhL78uP5A==
=Y6s8
-END PGP SIGNATURE-


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



Bug#383403: Vicam driver appears to contain misappropriated code

2006-09-25 Thread Nathanael Nerode
In the Linux kernel,
drivers/media/video/usbvideo/vicam.c

contains *long* sequences which appear to have been lifted from some other
driver without permission or attribution, probably by wire-sniffing.

Not short sequences, really long ones.

This is not just nondistributable, it's actually likely to be sued over: the
company clearly didn't authorize this use.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

A thousand reasons. http://www.thousandreasons.org/
Lies, theft, war, kidnapping, torture, rape, murder...
Get me out of this fascist nightmare!


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



Re: proposal: kernel team IRC meeting on Saturday, 30th September 16:00 UTC

2006-09-25 Thread Nathanael Nerode
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Sven Luther wrote:
 Or you could also help us on this in making sure the tg3 patch in question is
 upstream-quality,
I think it is better than upstream.  What can I say?  :-)

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFF5VGRGZ0aC4lkIIRAt3sAJ96Xshq2E2e6B4SCNAbmLcSbvnVEQCZAf8g
ctxRAWtOy+wB98alDKZcgeg=
=OrB5
-END PGP SIGNATURE-


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



Re: Preparing linux-2.6 2.6.18-1

2006-09-25 Thread Nathanael Nerode
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Sven Luther wrote:
 The reality is not that the kernel team don't want those firmware in main, but
 that in the current state of the debian technology, it is not feasible to do
 it right, and it will take time, and will be best done during the etch+1
 development cycle.
 
 (In some cases, nonexistent users.  drivers/net/dgrs was killed in place
 and never reached the market.  No users were impacted by removing this
 driver, and we know that for a fact.  Why readd it?)
 
 Because it is a pain to remove them ?

Try looking at the X.org packages: they have a fairly simple
prune-non-free system.

snip

 Upstream is making progress, see the qlogic firmware for example, and the
 debian kernel team, which is the one who will be making this work, not the
 release team, has a strict policy of following upstream closely, in part
 because we don't have the ressources and work-force to maintain a huge set of
 forked patches.
See below.  I'm afraid we can't trust upstream to fix everything.  Some
driver and subsystem maintainers are quite aggressive about fixing this
stuff.  Somenot so much.

 A good start would be the tg3 patches.  Reintroducing the dgrs driver,
 which drives *no existing hardware at all*, would be a very bad move.
 
 So, you dismiss the qlogic firmware out of hand ?
No, it's good stuff.  Thanks to whoever did this upstream!

 tg3 may follow, if there is
 a good enough patch to do it nicely. This may come, either from someone like
 you (but the patch has to be upstream-quality, which apparently your patch was
 not),
Yes, it was upstream-quality.  (Although to be honest the *driver* is
pretty ugly stuff.)  There was one bug spotted by Herbert Xu and fixed
by him.

Upstream was a couple of people who at the time of last submission had a
marked hostility to all userland firmware loading, of any quality.  This
may have changed.

The patch is difficult to maintain because the *entire driver* must be
removed and replaced -- this is because upstream refuses to separate the
firmware into a separate file.

At the time of previous submission, I suddenly realized -- after testing
was done -- that distribution of the firmware was not legally safe, and
I stopped doing it.

This meant that the firmware-loading code lay unused, obviously causing
complaints from those few people who needed the firmware.  It also meant
that I could not satisfy the transition requirements which were
requested by upstream, which were to include the firmware in the hex
blobs in the driver *and* have userland firmware loading simultaneously.
I have asked more recently whether this transition scheme is still
desired, with no answer.

Thank goodness the firmware license has been fixed now.

These are the reasons the patch is not upstream: note that the only
technical one is the transition scheme request.  I will try again and
see what happens.

 or from the kernel team. tg3 is not the only case of such though, is it
 emblematic to you because you provided a patch when Herbert was still around 
 ? 

Yep.  And for the following other reasons:
* because the patch was accepted and later retracted.
* because I'm not aware of fully functional patches for any of the other
cases. (My radeon and r128 patches don't work properly, FYI.)
*  because it represents a case where, given upstream's previous
behavior, Debian may very well *have* to apply the fix itself, even if
Debian wants to track upstream closely.
* because users don't lose any hardware support if it's applied now
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFF6eKRGZ0aC4lkIIRAsbCAJ9z1XvUPo9blgLIE4a4bKF0hD1qDwCdGR+H
Kmd6BOs/J7Z0hST2Oee/M6A=
=K8N2
-END PGP SIGNATURE-


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



Re: Preparing linux-2.6 2.6.18-1

2006-09-25 Thread Nathanael Nerode
Sven Luther wrote:

 Also, i have many time asked for help on working on Larry's list, and find
 out the copyright holders of those files, and continue to fine-tune the

I emailed the contact address at Intel about e100, but it seems to forward
to tech support.  We'll see if anything comes back.

 analysis he has done, but upto now, nobody gave any indication that they
 are ready to help in this regard, and this includes you. So, what are you
 going to do to help us make sure the non-free firmware finds an adequate
 solution for etch+1 ?

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: Preparing linux-2.6 2.6.18-1

2006-09-25 Thread Nathanael Nerode
Sven Luther wrote:

 Please add that information to the firmware wiki page, so that it is not
 forgoten in a few days.

It was generated from Larry's page.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: Preparing linux-2.6 2.6.18-1

2006-09-25 Thread Nathanael Nerode
Frederik Schueler wrote:
 On Sun, Sep 24, 2006 at 11:25:15AM -0400, Nathanael Nerode wrote:
 If the firmware-loading tg3 driver is present in the next kernel package
 version, I will believe that the kernel team is acting in good faith to
 try to satisfy the Social Contract.
 
 According to the kernel-team patch policy, this patch needs to be either
 a backport from a newer version, or a patch submitted and accepted
 upstream.

I'm afraid this is an unacceptable policy.  According to this policy, an
intransigent upstream maintainer can and will hold Debian hostage by
forcing Debian to continue distributing unlicensed material in violation of
law, or by forcing Debian to violate its Social Contract.  I expect this to 
happen, though of course I hope it won't.

Change this policy.  You really must make two exceptions:
(1) Removal of material which Debian cannot legally distribute, if
upstream insists on keeping it.
(2) Removal of material which does not satisfy the DFSG, if
upstream insists on keeping it.

If you want to wait to remove material until it's clear that upstream is
intransigent, that's one thing, but if it becomes clear that upstream is 
intransigent, that's another thing.

 Where can I find the current version of your patch?

ldoolitt updated it to the current kernel: he's sending me a copy.  If he
doesn't send you a copy, I will.  Would you like it in a new bug report,
attached to the giant monolithic linux-2.6 license and freeness bug, or 
what?  :-)  (This is one reason I supported one bug per driver: it allows
tracking the individual problems separately in a straightforward way.)

I'm thinking of adding slightly more verbose logging to help testers
identify which board they're dealing with.

 AFAIK it was 
 rejected upstream because some functionality was broken,

This is, essentially, wrong.  I have explained the reasons why it was 
rejected upstream elsewhere.  I will submit it again, of course, but I 
expect hostility to any firmware loading patch for tg3,
and I will be pleasantly surprised if I get a fair hearing.

One piece of broken functionality is loading firmware before the
root partition is mounted -- the lack of this breaks netbooting on the
boards which need the firmware.  However, I can't do anything about this:
it requires running udev in the initramfs.  This problem is not specific
to this driver.

A second piece of broken functionality is the functionality provided
by the firmware: if the firmware isn't there and isn't loaded, the 
functionality isn't there.  Duh.  I also can't do anything about this.

Apart from those, the patch has no known functional regression (there was 
one bug fixed by Herbert Xu related to machines with multiple tg3 cards),
and I wish people would stop slandering my work.

 this regression 
 needs be fixed and the patch resubmitted in order for us to consider an
 inclusion.
 
 Then, firmware-loading support in d-i is still missing, this issue
 should be be fixed too before we consider the patch.

Firmware loading support patches are being refused in d-i until after etch 
is released.  Therefore, this amounts to a We will not accept any firmware 
loading patches until after we release etch policy.  Good to know.  I can
still queue them up for you to commit afterwards, though.

 I have a board with tg3, so I can perform the needed testing.

Maybe you can, maybe you can't.  The firmware is only used on certain 
boards: you are quite likely to have one of the needs-no-firmware boards.

Thanks for the offer; any testing is good, even on the needs-no-firmware
boards.

I'll try to get you a slightly revised patch relative to ldoolitt's version: 
I want to add a little extra logging.

 Best regards
 Frederik Schueler

Thanks for your time.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: Preparing linux-2.6 2.6.18-1

2006-09-24 Thread Nathanael Nerode
Frederik Schueler wrote:

 Second: this release contains ALL binary firmware blobs shipped 
 upstream, even those we kept pruning since the day Herbert Xu removed 
 them the first time in 2004. 

My apologies for blowing up, although it looks like my flaming message died 
in transit.

Anyway, it's neither acceptable or reasonable to regress the freeness status
of linux-2.6 to this extent.

At a minumum, the patch for tg3 exists and is fully 
functional: check with [EMAIL PROTECTED] for the version against the 
up-to-date kernel, and the corresponding loadable firmware files.  It works 
fine on at least the numerous boards which don't need firmware; the previous 
version worked on boards which do need firmware, and there's no substantial 
change, so I trust the patch.

If the firmware-loading tg3 driver is present in the next kernel package
version, I will believe that the kernel team is acting in good faith to try
to satisfy the Social Contract.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: proposal: kernel team IRC meeting on Saturday, 30th September 16:00 UTC

2006-09-24 Thread Nathanael Nerode
Frederik Schueler wrote:

 Hello,
 
 I would like to propose an IRC meeting for all kernel team members, to
 discuss where we stand and what we want to do in the future, concerning
 kernel firmwares.

Or, you could get the damn tg3 patches into Debian's kernel already.  It
would prove that you actually are interested in trying to follow the SC,
which would get some of us off your back and back to writing firmware
loading code.  :-)

(It's an egregious case, because the vast majority of tg3 users don't need
firmware at all.  Including the firmware in main in order to support 
network installs by the tiny number of users who do need it -- I have heard 
of three such users ever -- can't be considered sufficiently important to 
break the 100% free promise for, can it?  Furthermore, this is a case 
where the kernel team has *regressed* from a previous release.)

Of course, it would be a good idea to come to a common policy on what to
do about material which is technically illegal to distribute.  Perhaps some 
members of the kernel team would like to indemnify the rest of Debian and
Debian's users from any future liability which may (if very unlikely things 
happen) arise from this distribution.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: Preparing linux-2.6 2.6.18-1

2006-09-24 Thread Nathanael Nerode
Steve Langasek wrote:

 If it is the consensus of the project that sourceless firmware doesn't
 belong in main, this is a conscious regression in DFSG-compliance relative
 to sarge.  I don't think that's acceptable.  We obviously do have the
 means to remove this particular subset of non-free firmware from main
 (technically imperfect though it may be), and of the firmware that was
 removed for sarge the only one that was important enough to get me glared
 at personally was qla2xxx -- so what are these other already-removed
 firmwares that are so
 important to have re-added now?  (I did ask for a list, which no one has
 provided yet; I can't find the pruning script in the kernel team's svn
 repo, or I would look it up myself.)

Here you go, Steve.

drivers/media/video/dabfirmware.h
drivers/net/acenic_firmware.h
drivers/net/dgrs_firmware.c
drivers/net/tokenring/smctr_firmware.h
drivers/usb/misc/emi62_fw_m.h
drivers/usb/misc/emi62_fw_s.h

The above are all undistributable: smctr_firmware.h under a use-only 
license, the others because they are GPL without source or have no
license at all.

drivers/usb/serial/keyspan_mpr_fw.h
drivers/usb/serial/keyspan_usa18x_fw.h
drivers/usb/serial/keyspan_usa19_fw.h
drivers/usb/serial/keyspan_usa19qi_fw.h
drivers/usb/serial/keyspan_usa19qw_fw.h
drivers/usb/serial/keyspan_usa19w_fw.h
drivers/usb/serial/keyspan_usa28_fw.h
drivers/usb/serial/keyspan_usa28xa_fw.h
drivers/usb/serial/keyspan_usa28xb_fw.h
drivers/usb/serial/keyspan_usa28x_fw.h
drivers/usb/serial/keyspan_usa49w_fw.h
drivers/usb/serial/keyspan_usa49wlc_fw.h

These are all under a unique and annoying license:
redistributable as part of a Linux or other Open Source operating system
kernel

Additional regressions relative to sarge:
* tg3 was readded with the upstream firmware at some point after
the release of sarge, despite the existing firmware loading patches, 
and is already in the 2.6.17 packages
* The bnx2 driver was introduced upstream with sourceless, but 
distributable, firmware.
* e100 and starfire acquired sourceless, undistributable firmware upstream 
between the sarge release and now (God only knows why)
* New drivers were introduced upstream between the sarge release and now 
with the following sourceless, undistributable firmware: 
- drivers/net/cassini.h
- drivers/scsi/ql1040_fw.h
- drivers/usb/serial/ti_fw_3410.h
- drivers/usb/serial/ti_fw_5052.h

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: Preparing linux-2.6 2.6.18-1

2006-09-24 Thread Nathanael Nerode
Sven Luther wrote:

 On Fri, Sep 22, 2006 at 03:25:12AM -0700, Steve Langasek wrote:
snip
 On Fri, Sep 22, 2006 at 07:12:53AM +0200, Sven Luther wrote:
snip
(someone, I'm not sure who, wrote:)
   Re-adding them at this stage
   1) is against the current social contract
 
  Yes, but then so is shipping the firmware actually still in main,
 
 So two bugs is better than one?
 
 Yes, because re-adding the drivers which used to be pruned, allow a
 category of users to install, which they did not previously. Thus, your
 arithmetic is wrong, because you don't count the can't install bug, and
 if you do, it sorts out evenly, especially if you take in account that we
 put non-free software and users equally in the SC.

Our users cuts both ways.   There are users who use Debian *because* the
contents of main are (supposed to be) 100% free.  I'm one.  The two users 
complaining of Debian's hypocrisy on debian-legal recently are two more.  
Undoubtedly there are others, probably including many DDs.  Those users are 
being mistreated in order to benefit some other users.

(In some cases, nonexistent users.  drivers/net/dgrs was killed in place
and never reached the market.  No users were impacted by removing this
driver, and we know that for a fact.  Why readd it?)

Meanwhile, Debian will remain 100% free doesn't really leave much room for
argument.  Our users is a priority, as is free software, but Debian
will remain 100% free is a *promise*.

snip
 Indeed, but then you also need to backport all the fixes that the kernel
 team will put in 2.6.18 to 2.6.17, fine sharing of effort. Did you not
 read Frederik's GR, where the kernel team states that kernel dev
 ressources are rare, which is why we request a waival of the requirement
 for etch, in order to be able to work on this issue in peace for etch+1,

To be honest, if the release team was clearly making progress on removing
the non-free firmware, you'd be a *lot* more likely to get a waiver.

A good start would be the tg3 patches.  Reintroducing the dgrs driver,
which drives *no existing hardware at all*, would be a very bad move.

Today I sent an email asking  upstream to remove dgrs based on its
uselessness; we'll see what happens.

 without having to deal with the two new GRs a week over highly emotional
 issues, not mentioning the remaining bullshit that is going on beside it
 (RM payement, 
 duck stuff,
Duck stuff?  Quack, Quack?  looks confused

I have a wild turkey living in my front yard, but no ducks.

 DPL recall, assorted GRs for various stuff).  

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Bug#298099: Bug appears fixed

2006-08-21 Thread Nathanael Nerode
AGP_INTEL is on by default for x86_64 in the current 2.6 Linux kernels.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Could someone help me recover my tg3 patch?

2006-08-18 Thread Nathanael Nerode
I lost my copy.

If someone could point me to the last version of Debian's Linux kernel package
which shipped with the tg3 firmware loading patch -- I'm not sure which version
it was and I can't seem to figure it out -- I would greatly appreciate it.
(Heck, if you just sent me a copy of the most recent version of the patch, I 
would
greatly appreciate it.)

Thanks in advance.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Read it and weep.
http://rawstory.com/news/2005/Text_of_Gore_speech_0116.html


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



Re: linux-2.6: includes nondistributable and non-free binary firmware

2006-08-18 Thread Nathanael Nerode
 will
   probably bring more problematic firmware in in unsuspecting ways.

Actually, it probably won't bring very many: most of the identified items in
2.6 were already in linux 2.4.

I attribute this to three things:
* the new Signed-off-by scheme required for new submissions to upstream:
unattributed material doesn't get in any more
* the greater attention to licensing since the SCO cases: material with
licensing of questionable distributability doesn't get in as often any more
* and most importantly, the presence of firmware loading code, and the
upstream policy that new drivers should use it.  Not for freeness reasons,
but because embedding these large blobs into the kernel image is not a wise
use of space, and because it allows the firmware to be updated without
changing the kernel.

(There are exceptions, blobs which are new to linux-2.6.  I believe that
most of these merged early in the 2.6 development process, before any of the
factors I described above were true.  In particular, there are some blobs
added to already-blobby drivers; several blobs arrived with the ALSA merge;
ttusb-budget arrived before 2.6.0.

Howeveer, the cassini blob in arrived in 2.6.14-rc3 in September 2005, the
starfire blob arrived in 2.6.13, the bnx2 blob arrived in 2.6.12 in June
2005, and the ti_usb_3410_5052 blobs arrived in 2.6.10 in January 2005.   
So there are clearly *some* new blobs arriving upstream.

The starfire blob is a really sad case of incompetence.
The 2.4 driver states that the firmware is nondistributable, and not
included.  The 2.6 driver includes binary-only firmware, probably due to
the work of someone who contacted Adaptec -- but due to incompetence, it's
licensed under the GPL, which means that it's nondistributable.  AARGH!  I
wish people would contact someone with a clue before contacting
companies... GPLed material without source code is equivalent to you may
not distribute this material.)

snip
 There is not much time before the actual etch release is at hand, which is
Do I remember something to the effect of Debian releases when it is
ready? ;-)

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: Kernel schedule proposal for Etch

2006-08-17 Thread Nathanael Nerode
Frederik Schueler wrote:

 Hello,
 
 we should finally agree on which kernel version we want to release etch
 with, and on an appropriate timeframe.
 
 The goal should be obvious: release Etch on December, 4th.
 
 All kernel team members I asked so far would prefer a release with
 2.6.18, which is likely to be released upstream within the next 4 weeks.
 The Debian installer team obviously would like as much time as possible
 to find out and fix all emerging bugs.
 
 Trying to put both requirements together, the kernel release schedule
 could look as follows:
 
 today: start migration of 2.6.17 kernel and udebs to testing
 
 15.09: upload 2.6.18 to unstable [1]

This is barely feasible.  It would mean that the kernel team will have to
spend the next month doing the work to make 2.6.18 DFSG-free.  This could
of course be done very quickly by stripping out all the problematic drivers,
but this would probably be a very bad solution from the installer point of
view.

 01.10: migrate 2.6.18 kernel and udebs to testing
 
 04.11: freeze kernel - No more changes to the testing version. Start of
security support for the kernel on security.d.o [2]
 
 04.12: release
 
 
 I would like to keep the non-free firmware discussion as a separate topic,
 thus it is not considerer in this schedule.

That's simply unrealistic.  Ignoring what amounts to about 50 RC bugs in
designing a schedule is just stupid.

 I'd like some feedback from both the installer and release team if they
 think this is a feasible way for further action; if so, I'll also
 contact the security team for begin of security support.
 
 Best regards
 Frederik Schueler
 
 
 [1] The 2.6.18 release obviously depends on the upstream schedule, but 4
 weeks from now is realistic considering the 2.6.18-rc4 status.
 
 [2] Kernel freeze as in: security fixes will go into a branch targeted
 at security.d.o and proposed-updates. We won't touch the kernel in Etch
 after the freeze,

That means it *must* be DFSG-free.  See above.

For the smoothest results, the upload of a DFSG-free kernel (which is to
say, a freezable kernel) should come after the installer is capable of
loading non-free kernel modules from separate non-free udebs.

So the design of a plausible kernel upload schedule is primarily dependent
on non-free udeb support.  Anyone know what the ETA for that is?

 but for extreme security issues affecting the 
 installation process, like remote root exploits. All other issues will
 be addressed as needed in a security update and future point releases.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: Etch timeline is unrealistic because non-free firmware is NOT being dealt with

2006-08-09 Thread Nathanael Nerode
[EMAIL PROTECTED] wrote:
On 08/02/06 22:17, Nathanael Nerode wrote:

 Start with drivers/char/drm/mga_ucode.h.  This is distributable, because 
 it's under
 a BSD license, but it's not free software, because there's no source code.
There is no source code, because there never was any source code.

Do you have *actual evidence* of this?  Are you a Matrox employee?  Do you have 
an email from one?  Do you know the microcode format and can you explain how 
to easily edit the hex to make the microcode do different things?

If any of the above, please provide your evidence.  If the microcode was 
wriiten in hex, hex is the sorurce code and we can include it.

Otherwise, I contend that you are just making this up and Matrox actually has 
source code which it is withholding.  Replies to debian-kernel please.


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



Re: Etch timeline is unrealistic because non-free firmware is NOT being dealt with

2006-08-09 Thread Nathanael Nerode
I apologize for responding to Marco's post; in retrospect he was clearly
trolling and I should not have responded to him.

The point of my initial message was not to argue: it was that the etch
timeline is unrealistic, because I see no progress on removing the
substantial number of sourceless binaries from the Linux kernel source
package, and it's *after* the kernel was supposed to have frozen!

Is there a plan for dealing with this fast enough to avoid delaying the
release of etch?  If so, please post it.

If not, I suggest the following process improvements:

For each driver containing a sourceless binary, someone (probably me) will
file a single bug against the source package linux-2.6.  Currently there is
a single bug (242866/243022) covering multiple issues,  against 'kernel',
which is a pseudo-package.  Looking at the list of antique bugs
against 'kernel', I don't think anyone is reading them.  Also, with the
planned removal of
pre-2.6 kernel packages, a bug against linux-2.6 seems sufficient to cover
everything.

Why one bug per driver?   Because each driver's bug is slightly different
and I expect each to be fixed in a slightly different way.  Some bugs are
distributability issues, while some are clearly distributable and simply
non-free.  Some may be fixed by a new upstream version.  Some may be fixed
by implementing firmware loading and a non-free firmware package; some may
be fixed by moving the driver to an out-of-tree kernel module; others may
be fixed by removing the driver entirely; others (where the firmware is
unimportant) may be fixed by removing the firmware and the support for
whatever feature it enables.  In the case of the DRM modules, the result
may depend on the implementation of features in X, and bugs may block on
that.  The point is that each case is going to be different.  The progress
on the different drivers is already different.

This should make tracking the issues significantly clearer: specifically it
will make it clear exactly what needs to be done to fix this.  It would
also make it look a bit less like an infinite tentacled monster, perhaps
making it easier for people to bite off one bug at a time.  (Certainly I
get confused posting fixes for different drivers to the same bug.)  We
would then convert 242866 to a meta-bug blocking on each individual bug.

How does that sound?

http://wiki.debian.org/KernelFirmwareLicensing is grossly out-of-date, but I
will integrate the relevant information from that in the process.

Alternative option: the Wiki page could be revived and used to coordinate
the process.  Unfortunately it's quite out-of-date, and it's unwieldly.  I
prefer the BTS option because it's more permanent, harder to ignore, and
better at holding patches and whatnot.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Bush admitted to violating FISA and said he was proud of it.
So why isn't he in prison yet?...


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



Re: Etch timeline is unrealistic because non-free firmware is NOT being dealt with

2006-08-03 Thread Nathanael Nerode
In linux.debian.kernel Nathanael Nerode [EMAIL PROTECTED] wrote:

What can be done about this?
Accept that most people do not consider this a problem?

First of all, this is false.  Most Debian developers agree with me.  You
think not?  Prove it by proposing a GR.  More importantly, the release team
agrees with me that this is a problem, and it is explicitly a release blocker.

Further, majority opinion is irrelevant on issues of honesty.  Debian is 
lying to its users.  Debian needs to stop doing that.

Frankly, I no longer care which way Debian becomes honest:
(1) A GR amending the Social Contract to explicitly allow sourceless, non-free
binary material in Debian
(2) Removing the sourceless, non-free binary material from Debian main.

Debian must do one of the two if it is to be honorable.  I don't care which.

You probably agreed to uphold the Social Contract in your Debian work.
(Or were you grandfathered in before NM?)
If so *you agreed* to remove this firmware.  You have two honorable
options:

(1) Propose a GR amending the Social Contract to allow it.  Please do so!
(2) Remove it whenever it falls into your sphere of responsibility.

You have historically chosen to take the dishonorable option, and I do
not expect you to change, but I can hope.

-- 
Nathanael Nerode 
[EMAIL PROTECTED]

Read it and weep.
http://rawstory.com/news/2005/Text_of_Gore_speech_0116.html


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



Etch timeline is unrealistic because non-free firmware is NOT being dealt with

2006-08-02 Thread Nathanael Nerode
The kernel freeze must be delayed quite significantly for a fairly obvious 
reason: the Debian kernel *still* has a lot of non-free and sourceless firmware 
in 
it.  Unfortunately, little to no progress has been made on this.

I'm sorry to be the bearer of bad news, but this is pretty obvious from looking 
at the
linux-source-2.6.17 package: they're not trying very hard.

Start with drivers/char/drm/mga_ucode.h.  This is distributable, because it's 
under
a BSD license, but it's not free software, because there's no source code.
Continue with drivers/chare/drm/radeon_cp.h.  This is from ATI and has no
copyright notices from ATI or license from ATI, so it's likely undistributable.

And those are two of the more prominent ones.  I could list dozens.

If people will not take the firmware issue seriously, either etch will not 
release
on time, or etch will be *yet another* release where Debian *breaks* its Social 
Contract.

My patches for firmware loading for tg3 have been *removed* from the Debian 
kernel.
drivers/net/tg3.c *again* contains the proprietary firmware, compiled into the 
kernel.
At least it has proper copyright and license notices, so it's distributable, but
it's *still non-free*.  This is a positive disincentive to work on fixing these 
issues:
my fully functional work was simply rejected in favor of breaking the Social
Contract.

What can be done about this?  If there is no plan for progress, I intend to file
'serious' bugs against each kernel package for each piece of firmware, which 
might
at least make *someone* pay *some* attention.

-- 
Nathanael Nerode 
[EMAIL PROTECTED]

This space intentionally left blank.


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



Bug#256374: Still having this problem: CD-ROM Compaq Presario 1220

2006-05-31 Thread Nathanael Nerode
With only one distribution exception (which later fails for a different 
reason), most of the 2.6 kernel distributions do NOT install on a Compaq 
Presario 1220 including Debian GNU/Linux testing Etch.

I'm getting this exact problem; the exact problem described in the bug report.  
With a Compaq Preasio 1230.

I can't install with 2.4 for various other reasons.

Is there any way to force it to use IRQ 15 for ide1?  That seems to be the 
primary difference between the functional 2.4 kernel and the broken 2.6 
kernel.  I've tried adding options to the kernel command line, but it doesn't 
seem to work.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

This space intentionally left blank.



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



Re: non-free firmware

2006-01-14 Thread Nathanael Nerode
Sven Luther wrote:
No, i don't think this was the kind of framework i was refering to,
Well, another related issue is what format the firmware file should be stored 
in -- I advocate a fixed endianness so it doesn't depend on the host CPU 
details, for instance.

more of a 
set of rules on how we would patch the drivers to make them request_firmware
aware.
Ideally, you call request_firmware in the driver code immediately before the 
microcode is uploaded to the peripheral.  The firmware is stored in main 
memory until the upload and then the memory is released.

In a driver which minimizes its lock use, this gives pretty good results.  
Since it depends on hotplug to get the firmware, it won't work until root is 
mounted (until udev is made to run in the initramfs).

Spinlocks made this more complicated.  request_firmware must be called in a 
situation where sleeping is permitted.  Accordingly, you must trace the call 
sequence (of the function uploading the microcode to the peripheral) back 
upwards to the first point where no spinlocks are held, and call it there.  
The memory should be released on all exit paths after the upload, which can 
usually be done in the very same function you call request_firmware in.

The tg3 driver was a bear, because spinlocks are held in virtually the entire 
driver.  The latest point at which request_firmware could be called was 
driver initialization for a particular card.  This meant that the earliest 
point at which it could be released was driver unload for that card.

The conservative solution for a driver which is lock-happy is to load the 
firmware files at module load time and hang on to it until module unload 
time.  This loses the memory savings benefit but retains the other benefits.

The tg3 is unusual in that some of its firmware was optional.  In the case of 
tg3 this was pretty easy to handle by converting some #ifdefs to if () 
statements.

---
This was all before request_firmware_nowait was available and functional.  
This provides a callback interface instead of a synchronous sleeping 
interface.  Of course, coding to a callback interface is more invasive 
because the existing modules are generally not designed for it.   However, it 
is preferred long term.

Software suspend (Power Management) with hardware resets is the main function 
for which  request_firmware_nowait is essential -- but also needed is a 
substantial amount of additional kernel infrastructure which isn't present 
yet, so it's not as if using request_firmware_nowait will just make software 
suspend work.  For instance, one thing needed is an event which goes to the 
driver *before* the suspend, in response to which the driver grabs the 
firmware into RAM, since userspace may not be available at the beginning of 
the resume.

I haven't played around a lot with the asynchronous interface.  I expect that 
it will require essentially the same treatment of drivers as the synchronous 
interface, but perhaps with more code rearrangement.  After all, you can call 
it with a spinlock held, but I believe you still have to get out of the 
spinlock in order for the userland hotplug event to run, and therefore in 
order for the callback to actually arrive.

I believe there is also a request_firmware_nowait_nohotplug variety, which 
simply expects that the firmware has been manually dumped into sysfs before 
the driver starts initializing.  This might be suitable for some 
early-loading modules.


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



Re: non-free firmware in the linux kernel

2006-01-11 Thread Nathanael Nerode
Kyle McMartin wrote:

 The question is: when you remove the firmware from the driver, and all
 it is, is a file sitting in /lib/firmware/; and it's contents are just
 non-executable hex,
Sorry, it is executable.  For instance, the tg3 code is simply MIPS binary
which can be disassembled with binutils.  Factual error.  Try again!

 with no C-code structure, is it just a BSD-licensed 
 (in the qla2xxx case) data file, or is it still regarded as a piece of
 code.
 
 This, to me, is no different from a BSD licensed JPEG.
 
 I would argue it's the former. I can see the argument when it's a part of
 the source code, but not when it's a completely seperate entity.
 
 Of course, firmwares where the license has not been clarified by
 the copyright holder/IP owner would still be a problem; or where
 something is clearly unredistributable (ie: Intel IPW firmwares.)

Or where it's licensed without permission to modify, e.g. tg3 firmware.
Which is actually a very common result when the licenses do get cleared up
with the copyright holder.  :-P

-- 
ksig --random|


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



Re: non-free firmware in the linux kernel

2006-01-11 Thread Nathanael Nerode
Sven Luther wrote:

 Hi all,
 
 I am cross posting to debian-release and debian-boot, since this will
 affect them too.
snip

 Basically, the situation is like this :
 
   1) there where drivers under implicit GPL licence with binary only
   firmware. Since there was no explicit licence for this firmware, it was
   GPL, and since it was sourceless, it was non-distributable. We started
   work to get upstreams to relicence their code, which happened with the
   tg3 and qla2xxx drivers, but failed for others, like the acenic one,
   partly because of the demise of the company producing them and various
   acquisitions which left the IP in an unknown state nobody seems to
   bother with.
 
   2) there are now drivers which contains non-free firmware blobs, with
   explicit licence, and these are thus distributable. A quick search for
   fw_ revealed 159 such files in 2.6.15.

I would like to add that I have volunteered to
(a) assist with converting these to the request_firmware infrastructure
(b) package the blobs for 'non-free'.  Udebs provided on request.

I actually *did* this for tg3 (back when the firmware was undistributable,
but before I'd noticed that).  However, all my work so far has been
rejected by upstream for reasons which I can only call pure hostility (I
have seen few technical reasons, and have received no response to requests
regarding what would be an acceptable patch).  The corresponding patches
have been removed from the Debian kernel because the kernel maintainers at
the time did not want to maintain patches relative to upstream.  This does
not exactly encourage me to work on other drivers.  I have since misplaced
my tg3 work, and would have to retrieve it from an old Debian kernel
package.  Help doing so would be appreciated :-)

   3) an effort seems to be happening inside the upstream kernel to use the
   request_firmware infrastructure which allows to load firmware code from
   userland through an hotplug mechanism. There seem to be more and more
   drivers going this way, since there aare more in current git than in
   2.6.15 which was released a week ago, qla2xxx being among them.
 
 Here is a link to the relevant wiki page about the cleaning up of messy
 licences : http://wiki.debian.org/KernelFirmwareLicensing
 
 So, basically this means we have the following options :
 
   a) we move the whole kernel to non-free :)
 
   b) we move the affected modules to non-free. Well those that have their
   licencing solved, the others will simply no more be distributed, or
   distributed form an unofficial source.
OK, but (c) is better.  However, we can use a combination of (b) and (c).

   c) we move the firmware in non-free, and actively use the
   request_firmware mechanism.
Great idea!

   d) we go for a new GR, asking for an exception for the linux kernel, in
   order to still stay in main, even though the firmware is non-free,
   arguing that said firmware is more akin to hardware, since it replaces
   firmware on a prom or flash on the expansion card, and you thus lose no
   freedom if we distribute it, and the pain the other solutions will cause
   to ourselves and our users.
If my DD application ever goes through, I would definitely vote against
this, because the argument is completely bogus.  For an similar argument,
An implementation of BASIC is more akin to hardware, because it replaces
IBM BASIC which used to be kept in ROM.  This argument might wash if the
firmware was not code at all, but in the cases I know of, the firmware
is in fact code for MIPS, ARM, and other ordinary CPUs which are on the
expansion card.

 I think everyone agrees that a) is not a possibility. Both b) and c)
 require a non-negligible amount of work, altough b) is less work than c),
 but c) is the better solution, and also to the best of my knowledge the
 one which upstream seems to favour, altough both may mean a long-term
 additional work for the kernel-team, work which the kernel team is not
 really prepared to make, which leaves d). Not sure if d) is politically
 right right now with regard to the GFDL situation, but that is another
 issue, which will then need to be debated.

(d) is unacceptable.  I have *volunteered* to work on (b) and (c) and I am
happy to be the effective maintainer for any involved patches and packages. 
I see no reason why that would not be acceptable to the kernel team.  I'm
even happy to leave any individual non-free lump in 'main' while the work
on making it loadable from non-free is in progress. 

 So, Andreas, you proposed help and bug squasing parties focused on this, i
 guess it is now clear what needs done :), and i can only stress that this
 needs an additional comitment of help, since any patch which will come up
 will probably have to be maintained by the debian kernel team for a long
 time.
Committment made.  Will it be accepted?

 Also, if we go the BSP way, it has to make clear that it had to be a long
 standing and coordinated effort, since random patches of 

Re: non-free firmware

2006-01-11 Thread Nathanael Nerode
Andreas Barth wrote:

 As this is a release blocker, not release until this is fixed? (And try
 to search for someone who can work on this issue,
Ping!  Dispirited volunteer here!

 perhaps also say 
 something in the next release update.)

-- 
ksig --random|


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



Re: non-free firmware in the linux kernel

2006-01-11 Thread Nathanael Nerode
Bastian Blank wrote:

 On Tue, Jan 10, 2006 at 09:13:27PM +0100, Sven Luther wrote:
 how can you consider it as non-program. It is indeed composed of machine
 code destined to run on the controller of the device the driver is
 written for.
 
 This is incorrect. I know firmware[tm] blobs which only includes data.

Please name them.  I could likely be convinced that *those* firmware blobs
do not need source code.  That's different from *all* firmware blobs.

-- 
ksig --random|


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


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



Re: non-free firmware in the linux kernel

2006-01-11 Thread Nathanael Nerode
Andreas Barth wrote:

 * Bastian Blank ([EMAIL PROTECTED]) [060111 12:57]:
 On Tue, Jan 10, 2006 at 09:13:27PM +0100, Sven Luther wrote:
  how can you consider it as non-program. It is indeed composed of
  machine code destined to run on the controller of the device the driver
  is written for.
 
 This is incorrect. I know firmware[tm] blobs which only includes data.
 You can't decide if it is something which can be executed somewhere.
 
 Can you define what execute means? Is it execution if e.g. data is
 processed that defines a sound-wave for a DSP?

OK, let's agree that DSP sound-wave definitions and similar transformation
tables of data for sound cards are fine and free, because binary blobs
probably *are* the preferred form for modification of those (if anyone
actually wanted to modify them).  (Of course, that's just based on my
minimal knowledge; if a sound card hacker steps up and says no, those
blobs are definitely not the preferred form for modification, I would have
to defer to his/her superior knowledge.)

-- 
ksig --random|


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


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



Re: non-free firmware

2006-01-11 Thread Nathanael Nerode
Sven Luther wrote:

 On Sun, Jan 08, 2006 at 11:52:20AM +0100, Andreas Barth wrote:
 * Sven Luther ([EMAIL PROTECTED]) [060108 11:12]:
  There where two fully independent issues here :
  
1) some (many) of those firmware using modules had a sloppy licencing
situation, which meant the compiled kernels where indeed
non-distributable.
  
2) those firmware blurbs come without source, and are thus non-free.
  
  We where working to solve 1), since without that, it was not even
  possible to distribute these non-free firmwares from even non-free. I
  think once this is solved the plan was to :
  
1) either make those drivers be able to load the firmware from an
external file, which we could then include in the initramfs from a
non-free source.

For instance, now that the tg3 firmware is under a distributable license,
with my tg3 patch reinstituted the firmware for specialized tg3 cards would
simply be three files which go in a specific place in the directory tree
and are picked up by hotplug/udev.

2) remove those drivers entirely from the main linux-2.6, and have
them distributed from the linux-nonfree-2.6 package from our non-free
section.
 
 This matches with what I remember.

 Well, there might be cases where the binary blob is enough, but I think
 we agree that
 a) this is probably the exception and not the rule, and
 b) this requires a case-per-case-inspection.
 
 And how exactly can you guarantee this is the case without being the guy
 who wrote the code, and even so, how could we be sure to thrust such a guy
 claiming that it is the ultimate source code ?
I'm willing to accept a claim from the guy who wrote the code.  However, as
a debian-legal regular, I can honestly say that that situation has not come
up even *once* yet.

 The main problem is one of ressources, and we need a single person who can
 devote time and effort to follow up on all those drivers, and see if the
 firmware can be removed from them or not. Right now everyone is focused
 on other stuff.

I volunteer.  But I need to know that the debian-kernel team iss willing to
*accept* my volunteering.  That means being willing to revive the
fully functional tg3 firmware loading patch which was already included in
earlier driver versions.

Now that the tg3 firmware is under a distributable license, I can package it
for non-free, no problem.

  I suppose the right way to solve this (doing 1) is another matter and
  more of the area of upstream work than debian work, it is the better
  solution though, not sure if it would be ready for the etch timeframe
  though.
 
 The question of sloppy licenses is indeed an upstream issue - however,
 that doesn't mean we can shut our eyes when we come over such an issue.
 The DFSG-freeness is our own issue.
 
 Nope, upstream didn't care about sloppy licence, the upstream issue is to
 have the firmware removed from the driver and provide infrastructure to
 load it from initramfs.
 
 But the real problem is we are all volunteers, and if nobody has the will
 to work on this, what can you do ?
I do have the will!

 And if those more likely to work on 
 this are not convinced by the non-freeness or do not care ...
Or if those who do have the will to work on it find themselves obstructed by
those who don't :-(

-- 
ksig --random|


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



Re: non-free firmware

2006-01-11 Thread Nathanael Nerode
[EMAIL PROTECTED] wrote: 
licenced modules. If we don't want to do that, the most honest way to
handle it is to get another GR out the door,explaining that this is not
easily possible or convenient at this time, and asking for an explicit
exception for kernel firmware. I would second such a GR.

I would be comfortable with a specific exception for *etch only* for drivers
which *may need to load in order to mount root*.  I would also be
comfortable with an exception for *etch only* allowing the *installer* to
contain and install such non-free material.  I would not be happy with a
general exception for the regular kernel packages in 'main'.  Rationale for
those rules follows; it is based on practical considerations.

It would be dangerous to have a permanent exception, because it would just
lead to more and more non-free stuff in the kernel -- because it would
encourage the people who don't care to avoid fixing it and to reject
patches from other people.  :-P  Observe the foot-dragging on the GFDL
issue.

It is dishonest to say that it is not easily possible or convenient to fix
this issue for drivers which don't need to load early, particularly if the
installer is exempted; the work for this is quite far advanced.

First the issues if the installer is exempted:
--
For any userspace-firmware-loading driver which does not need to be loaded
in order to mount root, it requires only a deb containing the needed file
for /lib/firmware (trivial).  The kernel firmware loading code and
udev/hotplug take care of the rest.  

For a non-early-loading driver which has embedded firmware, it requires a
deb for the driver matching each possible installed kernel (tedious, but
certainly feasible, and very straightforward).

For a firmware-blob-embedding driver which needs to load before root is
mounted, it requires no additions on the installed system, just the debs
for the driver module for each possible installed kernel.

For a userspace-firmware-loading driver which needs to load before root is
mounted, it additionally requires:
(1) udev and /lib/udev/firmware.agent available and in the initramfs 
-- I believe this is being worked on for other reasons anyway, right?
(2) patches to yaird/initramfs-tools to install the files from /lib/firmware
in the initramfs
-- this is easy
If these two steps are not ready by freeze time, I would be happy to have an
exception for such drivers, as noted above.

Second, the issues with the installer
--
For any userspace-firmware-loading driver which does not need to be loaded
in order to mount the CD or floppy drive, it requires 
(1) an easy facility for inserting an extra debs CD or floppy in the
installer (already present)
(2) an easy facility for inserting an extra udebs CD or floppy in the
installer (already present, I think?)
(3) a udeb (probably the same one) for each such piece of firmware, which
puts the file in /lib/firmware on the installer ramdisk (almost trivial)
(4) a facility to load such a udeb *before* the probing for kernel modules
(shouldn't be too hard)
(5) working udev/hotplug  firmware.agent in the installer
(this is being worked on already for other reasons, right?)
The kernel firmware loading code and udev/hotplug take care of the rest.  
If the infrastructure for this was not ready by freeze time, an exception
would be warranted, though I don't see any reason why it wouldn't be ready.

For a non-early-loading driver which has embedded firmware, it requires:
(1) an easy facility for inserting an extra debs CD or floppy in the
installer (already present)
(2) an easy facility for inserting an extra udebs CD or floppy in the
installer (already present, I believe)
(3) a udeb for the driver matching the kernel used in the installer
(tedious, but certainly feasible)
(4) a facility to load such a udeb *before* the probing for kernel modules
(shouldn't be too hard)
If the infrastructure for this was not ready by freeze time, an exception
would be warranted, but I also don't see any reason why it wouldn't be
ready.  Yes, you'd have to build a bunch of drivers out of tree in non-free
until they were converted to userland-firmware-loading.  You already know
how to do this, folks.

For any driver which needs to load before the CD drive is mounted, it would
appear to require 
(a) provisions in the installer for loading extra udebs (from where?) before
mounting the CD, which are almost certainly infeasible
(b) or an entire non-free installer release
This is the only genuinely impractical case, and an exception *should* be
made for it in the interests of installing on as much hardware as possible.


This message is public domain.  Please feel free to copy it to whereever you
think it needs to be read.

-- 
ksig --random|


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



Re: non-free firmware

2006-01-11 Thread Nathanael Nerode
Sven Luther wrote:
 If we are going to do this, we obviously need to find out a strong framework
 how this is supposed to work, and all need to follow the same schema.
Upstream hasn't done this.  I realized this need and started asking people 
about an appropriate naming scheme for the files in /lib/firmware 
(or /usr/lib/hotplug/firmware as it was then) and attempted to keep it.

 I heard rumors about your patch being too disruptive, and was thus rejected 
by
 davem, we don't want that to happen.

I'll be blunt: those rumors are false, and whoever started them is slandering 
my work.

For the original patch, the reasons given for rejection were the following:
(1) Either Jeff Garzik or Dave Miller (I don't remember which) wanted a 
transition period when the firmware loader would fall back to a built-in 
firmware copy.  I was willing to write a patch which did that, but I thought 
it was a bit silly.  I later asked if a patch would be accepted if it did 
that, but received no reply.
(2) Reasonable concerns were raised about needing firmware to be available in 
order to mount /usr, creating a nasty chicken-and-egg problem.  This has 
mostly been addressed by the creation of /lib/firmware.  Similar problems may 
arise with the mounting of root, I suppose, but with the switch to 
initramfs-all-the-time, these can be addressed trivially by modification of 
the initramfs.
(3) Jeff Garzik and Dave Miller didn't think that firmware loading was a good 
idea at all, ever.  Well, if they still think that, then they'll naturally 
reject the patch, and there's nothing we can do about it.

None of these concerns has any relevance to Debian today.

Dave Miller didn't feel that the (former) non-distributable licensing of the 
tg3 firmware, or indeed his own failure to put correct copyright notices on 
it, mattered.  I felt very strongly that it did, and perhaps he took a 
dislike to me because of my stridency on that matter.

The last time I proposed a patch -- which simply separated the firmware into a 
separate file, so as to make life slightly easier for Debian, and on general 
tidiness grounds -- he accused me of trying to disguise my intentions, which 
I certainly was not.  (Come on!  I'm the poster child for strident and 
outspoken!)  He then dropped my patch on the floor with no technical 
commentary at all.  He did say that he didn't see the point unless it was 
combined with a full firmware loading patch; so I asked what technical 
requirements would be required of a full firmware loading patch (keeping in 
mind the responses earlier), and got absolute dead silence.

The only technical criticism which I have ever heard of my patch was the claim 
that firmware loading should not be done, and that firmware blobs should be 
compiled into the kernel.  I don't consider this to be relevant commentary.

During the original period of use of the patch in Debian, I discovered that 
the firmware was not only non-free but also not actually legal to distribute.  
This led to some unfortunate problems because people were unable to get 
copies of the loadable firmware, and I certainly don't want to repeat the 
situation where the driver tries to load firmware which people can't find.  I 
made several efforts to contact the copyright holders without sucess (no 
replies at all).  I also asked Dave Miller, who claimed to know the authors, 
if he could put me in contact with someone who might be able to do something 
about the licensing problems, but he refused.  Thankfully this has been 
resolved now.

The patch is not very invasive at all; I actually bent over backwards to avoid 
interfering with the call sequence (since request_firmware can't be called in 
a spinlock, and nearly the whole tg3 driver is in a single spinlock).  I have 
had several people testify that it works just fine.

Again, those rumors are entirely false, so pay no attention to them.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

Make sure your vote will count.
http://www.verifiedvoting.org/


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



Re: Bug 346028

2006-01-07 Thread Nathanael Nerode
I retested this and I can't reproduce it with 2.6.15-1.  So it seems to be 
fixed.  Perhaps I was confused, or perhaps there was some transitory thing 
going on when I had both 2.6.15-1 and 2.6.14-1 installed.

:-)

-- 
Nathanael Nerode  [EMAIL PROTECTED]

A thousand reasons. http://www.thousandreasons.org/
Lies, theft, war, kidnapping, torture, rape, murder...
Get me out of this fascist nightmare!


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



Bug#346028: moreinfo

2006-01-06 Thread Nathanael Nerode
Also, could you please give us the output of ls -lR /etc/kernel

No such file or directory.

-- 
Nathanael Nerode  [EMAIL PROTECTED]

This space intentionally left blank.



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



Bug#346028: linux-2.6: Hangs while attempting to purge

2006-01-04 Thread Nathanael Nerode
Package: linux-2.6
Severity: serious
Justification: Won't uninstall cleanly


It hangs on this line of the postrm script:

my $ret = purge();

I can get it to work by deleting this line.  Perhaps this is because a
debconf routine is being called after stop has been called?  I don't know,
but anyway it's a serious bug.

This bug appears in linux-image-2.6.14-2-686 and linux-image-2.6.15-1-686,
and I assume in other flavours as well.


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



Bug#325192: udev generates outrageous numbers of ttyS nodes

2005-11-26 Thread Nathanael Nerode
close 325192
thanks

Marco d'Itri wrote:
 On Sep 22, Nathanael Nerode [EMAIL PROTECTED] wrote:
 
 
Marco d'Itri wrote:

Please check if this bug has been fixed by 2.6.13, on my system the four
extra ttyS devices which were claimed by serial8250 are gone.

I'll be sure to do this.  2.6.13 isn't in unstable yet though, is it?
 
 It's not.
 Also, check that ACPI support is enabled and working.

Yes, fixed in 2.6.14.




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



Bug#325192: udev generates outrageous numbers of ttyS nodes

2005-09-22 Thread Nathanael Nerode
Marco d'Itri wrote:
 Please check if this bug has been fixed by 2.6.13, on my system the four
 extra ttyS devices which were claimed by serial8250 are gone.
I'll be sure to do this.  2.6.13 isn't in unstable yet though, is it?




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



Re: linux-2.6_2.6.12-1_i386.changes is NEW

2005-07-24 Thread Nathanael Nerode
 - readdition of tg3 driver, as firmware license has been fixed
It's distributable, but only in non-free.  No source code for the firmware 
program.  Sorry.  :-P   Ask debian-legal if you have further questions about 
that.

If anyone's interested, I've got a patched version of the tg3 in Debian's 
linux-source-2.6.12 package which does firmware loading (it builds), *and* a 
package ready for non-free containing the firmware.  (Well, it's ready except 
that it would need some sort of Depends: appropriate-kernel-version) 
Since I don't actually have a tigon 3, I need someone else to test it for me, 
of course.  Files at http://home.twcny.rr.com/nerode/neroden/debian/ .

If you're not interested in that, I suppose I could arrange for the driver to 
build out-of-tree.  I would *like* to get the firmware loading upstream, but 
they have some... interesting requirements before they'll accept it, so we'll 
see when that happens.  :-P



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



Re: broadcom proposed firmware licence, please comment ...

2005-06-02 Thread Nathanael Nerode
Taking off debian-legal, since this is so not legal discussion anymore.

Andres Salomon wrote:
  I think they said they'd accept a patch which loaded the firmware but fell
  back to firmware built into the kernel if it wasn't present, as a
  transitional requirement.  Ugh squared.  But I can do it; I can even do
  it in such a way that the tg3 patch to the kernel would consist of a 
single
  file deletion.
 
 Are they looking for a transition, or are they just looking for proof that
 the firmware loading will actually work?  Transition code doesn't sound
 overly useful to me.

They said they were looking for a transition.  (And I agree, it doesn't sound 
that useful to me either.)

I believe, however, that the idea was to avoid causing difficulties for people 
who didn't know where to find the firmware or how to install it.  If the 
kernel installation files were changed to properly install firmware files in 
the right place per default, that would likely satisfy them.  (I can 
integrate my generate-binary-firmware-file-from-hex code into the kernel 
patch if this sort of solution is desired.)  Fixing up the installation files 
is just a little bit beyond what I'm personally willing to do at the moment, 
though, since I haven't yet figured out the kernel installation file system.  
So someone else would have to write that part.

If anyone's volunteering to do so :-), I believe we'd decided that the right 
place was:
/usr/lib/hotplug/firmware/tg3/5701_a0-0.0.0
/usr/lib/hotplug/firmware/tg3/tso-1.4.0
/usr/lib/hotplug/firmware/tg3/tso_5705-1.1.0
(This forms the beginnings of a namespace and conventions for loadable 
firmware files, and is where my existing code puts them.)

 Keep in mind the patch we'd have would have to simply readd the tg3
 driver; the patch can't delete the file.
Oh, what I was thinking was this:
(1) reorganize the upstream kernel driver so that the included firmware was in 
a separate file (#included, for instance), as is done in most such drivers
(2) include the firmware loading code upstream
(3) Debian's tar.gz.orig simply omits the firmware-containing file
(4) The patch simply removes the references to it in the driver file

 As such, it would still need to 
 be maintained (although shouldn't be too complex, as long as it doesn't
 include firmware loading features and such).


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



Re: broadcom proposed firmware licence, please comment ...

2005-06-02 Thread Nathanael Nerode
Andres Salomon wrote:
 Yes, that's what I was thinking.  Vendors will be taking care of
 firmware file installation; kbuild should be handling it when running
 modules_install.  Perhaps a firmware_install target that takes care of
 the various firmware blobs?
Sounds good.

 I can do that, if necessary.  What form was broadcom supplying firmware
 in in the first place?  If it's a binary firmware file, there's no need
 to have a hex code converter; we can just throw the binary firmware file
 in the directory tree.
Hex.  I have the files from the Broadcom-released driver.  :-)

If anyone's volunteering to do so :-), I believe we'd decided that the right 
place was:
/usr/lib/hotplug/firmware/tg3/5701_a0-0.0.0
/usr/lib/hotplug/firmware/tg3/tso-1.4.0
/usr/lib/hotplug/firmware/tg3/tso_5705-1.1.0
(This forms the beginnings of a namespace and conventions for loadable 
firmware files, and is where my existing code puts them.)

 
 
 I haven't bothered looking at other drivers in the tree that support
 firmware loading; are paths hardcoded in there, or is the firmware
 location simply a module/kernel arg?
Hardcoded, consistently.  The few present have erratically chosen names
hardcoded.  Indeed I have no idea where to find the firmware files to go
with some of those names, which is an issue.

I think the feeling was that the file in that location can be replaced
rather than changing the name searched for, and that that was simpler.
I'm not doctrinaire about it or anything though!

Oh, what I was thinking was this:
 (1) reorganize the upstream kernel driver so that the included firmware was 
 in 
 a separate file (#included, for instance), as is done in most such drivers
 
 
 This alone would go a long way towards making my life easier, if
 upstream accepted it.
Well, maybe I should do that first.  :-)


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



Re: broadcom proposed firmware licence, please comment ...

2005-05-31 Thread Nathanael Nerode
Andres Salomon wrote:
 As I remember, upstream (jgarzik/davem) was not overly interested in such
 a patch to tg3. Is this still the case, or are they amenable to such
 changes?

Upstream was not interested in legal niceties like including copyright
statements, either.  I suppose both are still the case.

I think they said they'd accept a patch which loaded the firmware but fell
back to firmware built into the kernel if it wasn't present, as a
transitional requirement.  Ugh squared.  But I can do it; I can even do
it in such a way that the tg3 patch to the kernel would consist of a single
file deletion.

 I'd rather not maintain a tg3 patch again, if possible. 
I understand.  :-(

-- 
This space intentionally left blank.


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



Re: broadcom proposed firmware licence, please comment ...

2005-05-29 Thread Nathanael Nerode
Sven Luther wrote:
 The text of the new licence proposal is as follows :
 
  +/* xxx.h: Broadcom tg3 network driver.
  + *
  + * Copyright (c) 2004, 2005 Broadcom Corporation
  + *
  + * This program is free software; you can redistribute it and/or modify
  + * it under the terms of the GNU General Public License as published by
  + * the Free Software Foundation, except as noted below.
  + *
  + * This file contains firmware data derived from proprietary unpublished
  + * source code, Copyright (c) 2004, 2005 Broadcom Corporation.
  + *
  + * Permission is hereby granted for the distribution of this firmware 
data
  + * in hexadecimal or equivalent format, provided this copyright notice is
  + * accompanying it.
  + */
 
 I would have liked a clear identification of the firmware blob, but i guess
 that to anyone familiar with C, it is immediately evident what is the 
firmware
 blob and what is normal code.
 
 So, before i reply to them, i would like to have feedback from debian-legal,
 and we can then move ahead and upload this driver to the non-free part of 
our
 archive, including a working .udeb.

Great!  This license is totally distributable.  I'm not sure, unfortunately, 
what counts as equivalent to hexadecimal.  I think that's the only problem.  
If it was just permission to distribute, unmodified, in any form, it would 
be clear.

Before you move the whole driver to non-free, you should know that I have made 
a version of the driver which loads the firmware from files if it is 
available (many tg3 users don't *need* the firmware), and I believe that is 
the one currently in Debian's kernel tree.  I have also designed a package 
containing appropriate firmware files for this version of the driver.  The 
only reason I have not published the package yet is that it was under this 
legal cloud.

The package generates the firmware files as arch-independent binary files 
(with a specified endianness) by writing out the hex in a really 
simple-minded way.  (Each lump of hex has a length and a lump in the C file, 
and I just write the the length and the lump out binary, in a defined order.)

If this binary form counts as equivalent, then I have a package for you :-), 
and I just have to fix it up to generate a udeb (and get a sponsor).  If the 
binary form doesn't, we can rewrite the kernel driver to actually parse hex, 
but that seems a bit silly to me.  They seem equivalent to me.  I suspect 
they're meant to be equivalent, because the compiled version of the stock 
kernel contains binary rather than hex, and they want it to be possible to 
distribute that.  Do we need clarification here?

In any case, I believe we do not need to move the whole driver to non-free in 
this case, just the firmware.  Remember that this one works for many cards 
without the firmware, so people will certainly appreciate that.

--Nathanael Nerode


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



Bug#284221: Bug #284221: acenic firmware situation summary

2004-12-14 Thread Nathanael Nerode
Not really.  That licence doesn't allow Debian to distribute whatever
it is that's being licenced.  There's only permission for personal use.

Hmm.  My initial reading was that you could
(1) create, test and provide programs for use with ALTEON network cards
(2) license the object code of such a program provided it is restricted to 
use with ALTEON network cards

It's obviously non-free, but -- depending on who you is -- could allow 
distribution.

Looking at it closer, it suffers from being a contract, and being inherently 
click-wrap, and Debian can't implement click-wrap, so it's unsuitable for 
non-free.  :-(

It does look like it's probably legal for someone to make the object code for 
the firmware available somewhere, under that click-wrap license, as an 
interim measure before independent firmware is created.




acenic firmware situation summary

2004-12-12 Thread Nathanael Nerode
Warning: long. CC'ed to debian-legal in case anyone there knows anything more.

The source for the acenic driver is in fact in the source package for 
the kernel.

The firmware is absent from Debian for *very* good reasons: the version in
the Linux kernel is distributed without proper copyright notices or a license.
(SCO should really have bought up firmware copyrights if it wanted to sue Linux
distributors.)  I do so wish people wouldn't go off ranting about
anti-firmware fanatics before checking the facts.

(If someone wants to try to change Debian policy so that Debian can distribute
copyright-encumbered works with no clear license, go ahead.  However,
Debian's current policy is, I believe, to follow the law strictly in
copyright matters.)

--
As a point of interest, the source code for the ACENIC firmware is
actually available at http://alteon.shareable.org/, but it comes without
a proper license, so it's no good if you want to do things legally.

The web page says:
Look at the source files yourself to understand any licensing restrictions on
their use.  Alteon's license may be summarised like this: you may share
and develop the firmware, but it is only for use with Alteon NIC
products.

Unfortunately, looking at the source files, I find that they are all rights
reserved and I can find no license grant.  The Alteon Open Firmware
Agreement doesn't appear to exist any more.  So his summary of the license
appears to be wrong.

Perhaps someone can track down the original license
listed on the now-defunct web page (supposedly http://alteonwebsystems.com/)
where Alteon allowed people to download the firmware?
(This is a sad lesson for the developers of the Arsenic enhanced firmware:
Never, ever, point to someone else's license on a web page; *always* put a
verbatim copy in your distribution.)


At least they have proper copyright notices; I suppose Alteon's successor
might be convinced to release it under a Free license, or at least a
license which grants permission to distribute.  Alteon is now owned by Nortel,
but apparently sold the ACENIC business to 3Com.  Did that include the firmware?
Who knows?  Unfortunately, 3Com seems to be pretty bad about responding to
licensing-related requests.  If anyone knows someone on the inside, it would
help.  :-P

(Parts are also copyright Essential Communication Corp., and I have no
idea what's become of them; I think they may be the Essential
Communications Corp. which was bought by ODS Networks according to
http://www.bizjournals.com/dallas/stories/1998/05/04/daily7.html.  Also,
Alteon presumably had a license from them, and it may allow Alteon to
sublicense arbitrarily; http://www.socratek.com/Agreement-Preview.asp?num=37354
may have something to do with this, or may not.)

--
More usefully, the alteon.shareable.org web page features the documentation
for the board, and although that's all under copyright too, it could certainly
be legally used as a reference for writing your own firmware.  (And if you do,
you can release it under a Free license and everyone will be happy.)

Jamie Lokier's tools on the same webpage, in contrast to the firmware itself,
are GPL, and could certainly be used to help develop new firmware.

A related page is http://www.cl.cam.ac.uk/~tjd21/alteon/, with more
GPL tools which might be useful for anyone developing new firmware.

In addition, if someone gets the original firmware licensed acceptably (or
writes new firmware to which the changes can be applied), there's some
serious improvements -- the Arsenic firmware -- released under a
4-clause BSD license from http://www.cl.cam.ac.uk/Research/SRG/netos/arsenic/.

I think that sums it up.

-- 
This space intentionally left blank.




Bug#250468: Supposed security hole in kernel patch

2004-10-09 Thread Nathanael Nerode
It would help a lot if someone could include a pointer to the appropriate 
thread(s) on lkml, or to something else which explained the purported 
security hole.  I can't find a description of it anywhere.  




Re: Bug#258082: missing advansys module

2004-08-30 Thread Nathanael Nerode
Nathanael Nerode wrote:
 Some of them already *have* provided freely-licensed source (Advansys);
Thinko.  Of course I meant Adaptec, with the aic7xxx driver.

The keyspan_pda module by Brian Warner (USB Keyspan PDA Single Port Serial
Driver, USB Xircom / Entregra Single Port Serial Driver) is another example

Also the sym53c8xx_2 driver, though it is taking a rather different
approach.

 that microcode is of course just fine to have in the kernel.

-- 
This space intentionally left blank.




Re: Bug#258082: missing advansys module

2004-08-29 Thread Nathanael Nerode
Joshua Kwan wrote:
Nathanael Nerode wrote:
* Since I actually have an advansys card to test on, I should be able to
convert this driver to userland firmware loading without the 
annoyances of
a remote testing cycle.

But how do you expect people to install Sarge on systems where the only 
mass storage controller is an advansys card? Certainly, telling people 
to download a bunch of firmware udebs first before they can install, or 
making them do so within the installer, is a huge setback in installer 
userfriendliness.
Non-free udebs CD.
(So first of all, please let me implore you to let this slide for Sarge, 
at the very least.
I already intend to do so.  On the rather straightforward grounds that 
it's no worse than what was in woody, and therefore it isn't a regression.

But eventually, if you keep up this crusade, installing Debian will 
involve having megabytes of firmware files at hand. Chances are that NIC 
drivers will get de-blobbed at some point, and will need firmware to 
work. Ooops. There goes the idea of downloading the firmware from the 
Internet at install time.

I don't want to turn Debian into a speech-free, crippled distribution. 
That's not what I joined the project for. I suggest that you reconsider 
the long term effects of all this and perhaps try to come up with a less 
destructive to the situation (which I do believe is a valid one, within 
reason.)
Contact the microcode providers and ask them to provide source.  That's 
by far the least destructive solution.

Unfortunately, most of them appear to simply not be willing to talk at 
all, not even to say no.  :-P

Some of them already *have* provided freely-licensed source (Advansys); 
that microcode is of course just fine to have in the kernel.

Alternately, propose a GR to amend the Social Contract to allow non-free 
programs in main (under whatever limited circumstances you like).  It 
quite obviously and clearly doesn't as of now, but feel free to try to 
change it if you think it should.  I strongly encourage you to do so, as 
a matter of fact; if I were a DD, I'd even second it just to get it to a 
vote, though I would oppose it.

I find that the unwillingness of the pro-sourceless-microcode-in-main 
camp to actually try to make their views compatible with most DD's 
agreement to follow the Social Contract in Debian work rather undermines 
their argments; proposing a GR to legitimate this stuff would be a lot 
more honest than encouraging people to blatantly violate the SC in their 
Debian work.

(There's still the GPL-compatilibility issue, but in the case of 
properly licensed material like the Advansys microcode, userland 
firmware loading would presumably deal with that, and if the SC were 
amended to allow sourceless code in main, then the microcode could just 
be shipped along with the kernel, in the installer, etc.)




upgrade-i386 problem: test my kernel?

2004-08-28 Thread Nathanael Nerode
So, since nobody else was dealing with populating the upgrade-i386 directory,
I took a crack at it.

Background is in #241497.  The essence is that woody users using real i386
boxes (not 486 or higher) need a patched kernel installed before they can
upgrade to woody.  I have therefore made such a patched kernel, by taking
the last version of the kernel in woody, hacking out all support for anything
except upgrading on real-i386, hacking in the necessary patch, and building
in a woody chroot.  This seemed the safest option.

I have therefore made the following kernel packages:
kernel-image-2.4.18-i386upgrade_2.4.18-1.dsc
kernel-image-2.4.18-i386upgrade_2.4.18-1.tar.gz
kernel-image-2.4.18-i386upgrade_2.4.18-1_i386.changes
kernel-image-2.4.18-386upgrade_2.4.18-1_i386.deb
kernel-pcmcia-modules-2.4.18-386upgrade_2.4.18-1_i386.deb

At the moment they sit on my home computer because I don't have a reasonable
place to upload them which has enough quota.

I would like someone with a real i386 to
volunteer to test these packages in a woody-sarge upgrade.  I can't
really test them myself because I don't have a real i386.

But what I would like *first* is a place to put them for now so that such
volunteer testers can get them.

They are nearly lintian and linda clean (there are some warnings which
are unavoidable due to the unusual way kernel packages were built).

If they survive testing, I'll write up a little how to upgrade
from woody to sarge if you have a real i386 and propose them for the
upgrade-i386 directory.

-- 
This space intentionally left blank.




Re: Bug#258082: missing advansys module

2004-08-28 Thread Nathanael Nerode
Norbert Tretkowski wrote:

 * Nathanael Nerode wrote:
 I unflagged it and built my own kernel, and it appears to work just
 fine.
 
 Perhaps Debian should allow it to build; the card is rather common.
 
 Mr. binary firmware is evil,
s/evil/non-free/, please.

 did you realize that the advansys 
 driver contains a small firmware blob?
No, in a word.  Thanks for pointing it out.  (Actually, it contains at least
three moderately large microcode blobs.)  That's one thing which makes this
stuff so annoying; it's not immediate or trivial to find all the embedded
binary microcode in the kernel, or even in a particular file.  I certainly
can't claim to have found all the contaminated files.

* Since I actually have an advansys card to test on, I should be able to
convert this driver to userland firmware loading without the annoyances of
a remote testing cycle.
* The advansys driver is licensed under a very permissive non-copyleft
license which doesn't require distribution of source.  This makes it the
first driver I've found with binary microcode which is actually licensed
correctly!  Hooray for that!  This means I would be entirely comfortable
making a package for non-free to contain the microcode.

Actually, thanks for pointing this out; I now have a new project which
should be significantly less frustrating than the other firmware-separation
projects.  :-)

-- 
This space intentionally left blank.




Re: Debian kernel maintainter takeover

2004-05-30 Thread Nathanael Nerode
Adam Majer wrote:
Nathanael Nerode wrote:
Adam Majer wrote:
 

As to the non-free binary blobs, these are to be moved to non-free. 
There should be an automatic 'non-free removal patches' (not part of 
the actual debian source).
  
To follow the X Strike Force model (which seems to work) I suggest a 
'prune-non-free' script, which should be shipped in the debian/ 
directory of the source package .diff for convenience.  This script 
would convert an upstream source tree to a 'debian-clean' source tree.
 

I don't think we can do that. The source to the package has to be free. 
The patches to remove non-free things and put them in non-free need to 
applied to the vanilla kernel to make a Debian kernel source 
(orig.tar.gz) and a non-free blob source.
Yes.  I'm saying that the script should be included in the source 
package for the convenience of people who want to build their own 
versions of the package, and so that it is easy to find.  It would not 
actually be run at package build time (since it would be run *before* 
the upload of the .orig.tar.gz), but it would be shipped in the source 
package so that it's easy to find.  This is what XFree86 packaging does.