Bug#787814: get-iplayer: unable to download anything

2015-06-07 Thread James Bottomley
On Fri, 05 Jun 2015 15:24:09 +0100 Peter J Ross peadar.ru...@gmail.com wrote:
 On Fri, 05 Jun 2015 12:04:52 +0100 =?utf-8?b?SnVoYSBKw6R5a2vDpA==?= 
 ju...@iki.fi wrote:
  Not a SCALAR reference at /usr/bin/get-iplayer line 7099.
 
 This has been fixed upstream in version 2.93.
 
 Current upstream version is 2.94.

I confirm this.  Simply copying get_iplayer version 2.94 from the git
repository over the existing binary file makes everything work again.

Can we update the version please?  Having a non-working package doesn't
really help anyone.


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



Bug#672851: netbase 5.0: network connection does not come up upon reboot

2012-05-20 Thread James Bottomley
On Sat, 2012-05-19 at 22:40 +0100, Adam D. Barratt wrote:
 On Sat, 2012-05-19 at 19:55 +0100, James Bottomley wrote:
  On Sat, 2012-05-19 at 16:19 +0200, Marco d'Itri wrote:
   There is no bug, just don't do stupid things to your system.
  
  Yes, there is.  The bug is that testing breaks networking on an upgrade
  and will do so for at least the next six days.
 
 No, it won't.
 
   ifupdown |0.7~rc3 |   testing | source, amd64, armel, armhf, i386, 
 ia64, kfreebsd-amd64, kfreebsd-i386, mips, mipsel, powerpc, s390, s390x, sparc

Great ... that's all I asked for: acceleration of ifupdown or backoff of
netbase in testing.

This bug can be closed now.

James





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



Bug#672851: netbase 5.0: network connection does not come up upon reboot

2012-05-19 Thread James Bottomley
Package: netbase
Version: 5.0
Followup-For: Bug #672851

This bug is still present in testing

It means that anyone who does a dist-upgrade -t testing gets no
networking.  This just happened to me with a co-lo box resulting in a
wasted hour investigating the source of an apparent boot failure.

This is a really serious problem.  It may be fixed by ifupdown-0.7~rc3
but that's stuck in unstable for another 6 days according to

http://bjorn.haxx.se/debian/testing.pl?package=ifupdown

Having networking break on dist upgrade to testing for another six
days (at least) looks to be irresponsible to say the least.  Please
revert the netbase update or accelerate ifupdown into testing.

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 3.2.0-2-686-pae (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

Versions of packages netbase depends on:
ii  lsb-base  4.1+Debian3

Versions of packages netbase recommends:
ii  ifupdown  0.7~alpha5+really0.6.16

netbase suggests no packages.

-- no debconf information



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



Bug#672851: netbase 5.0: network connection does not come up upon reboot

2012-05-19 Thread James Bottomley
On Sat, 2012-05-19 at 16:19 +0200, Marco d'Itri wrote:
 On May 19, James Bottomley james.bottom...@hansenpartnership.com wrote:
 
  It means that anyone who does a dist-upgrade -t testing gets no
  networking.  This just happened to me with a co-lo box resulting in a
 Don't do it then ffs.

Interesting idea, but back to the real world where people do actually
upgrade their systems, telling them not to isn't so hot for all those
new release things people do.

 There is no bug, just don't do stupid things to your system.

Yes, there is.  The bug is that testing breaks networking on an upgrade
and will do so for at least the next six days.

James





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



Bug#614968: has now impacted testing

2011-03-06 Thread James Bottomley
On Sat, 2011-03-05 at 10:34 -0600, James Bottomley wrote:
 If I remove the transactions and just do a straight delete, everything
 works (at least in my test environment; I'll try it on the real program
 tonight).  There's actually no real reason for the deletes to be done
 transactionally.  Even if we get a crash, we don't care whether all the
 keys or none are deleted ... if we get partial deletion, the next
 cleanup will get the rest.

OK, so confirmed last night that the cleanup ran correctly without the
transactional logic and that postgrey didn't die:

Mar  6 02:17:23 bedivere postgrey[32282]: cleaning main database finished. 
before: 9349, after: 4484
Mar  6 02:17:24 bedivere postgrey[32282]: cleaning clients database finished. 
before: 2844, after: 2336

The patch below is what I'm running.

James

---

--- /usr/sbin/postgrey.orig 2011-01-11 13:15:43.0 -0800
+++ /usr/sbin/postgrey  2011-03-05 08:40:02.0 -0800
@@ -275,11 +275,7 @@
 $nr_keys_after++;
 }
 }
-my $db_obj = $self-{postgrey}{db_obj};
-my $txn = $db_env-txn_begin();
-$db_obj-Txn($txn);
 for my $key (@old_keys) { delete $db-{$key}; }
-$txn-txn_commit();
 
 $self-mylog(1, cleaning main database finished. before: 
$nr_keys_before, after: $nr_keys_after);
 
@@ -299,11 +295,7 @@
 $nr_keys_after++;
 }
 }
-my $db_cawl_obj = $self-{postgrey}{db_cawl_obj};
-$txn = $db_env-txn_begin();
-$db_cawl_obj-Txn($txn);
 for my $key (@old_keys_cawl) { delete $cawl_db-{$key}; }
-$txn-txn_commit();
 
 $self-mylog(1, cleaning clients database finished. before: 
$nr_keys_before, after: $nr_keys_after);
 }





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



Bug#614968: has now impacted testing

2011-03-05 Thread James Bottomley
On Fri, 2011-03-04 at 15:06 -0400, Joey Hess wrote:
 James Bottomley wrote:
  I picked this up on a recent testing upgrade (last Saturday).  My
  postgrey process is now dying every night as well (I've set up a harness
  to restart it, but it's not ideal).
  
  Following what happened in #441069 I tried
  
  db5.1_recover -h /var/lib/postgrey/
  
  but that doesn't fix the problem.  Whatever it is, it looks to be deeper
  than simply an incompatible database update.
 
 My workaround has been to simply disable the broken part on line 249:
 
 if(0 and $hour  1 and $hour  7 and
 $now - $self-{postgrey}{last_maint_keys} = 82800)

Well, that means your database never gets cleaned.  I was going to say
that simply restarting at least meant the main database got cleaned
(because it's crashing on the AWL transaction).  However, I stripped the
cleaning code from postgrey and ran it on a copy of the database.  In
spite of the fact that there's no error on the first $txn-commit(), the
transaction hasn't committed.  The next transaction you try to create in
the $db_env is empty, which is why the crash.

What's even stranger is that the entire db and db_cawl ties look to be
non functional after $txn-commit() ... it's like setting up the
transaction actually causes the entire perl DB mechanism to fall over.

This all smells like a libdb5.1 problem.

If I remove the transactions and just do a straight delete, everything
works (at least in my test environment; I'll try it on the real program
tonight).  There's actually no real reason for the deletes to be done
transactionally.  Even if we get a crash, we don't care whether all the
keys or none are deleted ... if we get partial deletion, the next
cleanup will get the rest.

James





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



Bug#561203: threads and fork on machine with VIPT-WB cache

2010-04-06 Thread James Bottomley
On Tue, 2010-04-06 at 08:37 -0500, James Bottomley wrote:
  (5) Child process B is waken up and sees old value at x in
 oldpage,
  through different cache line.  B sleeps.
 
 This isn't possible.  at this point, A and B have the same virtual
 address and mapping for oldpage this means they are the same cache
 colour, so they both see the cached value.

Perhaps to add more detail to this.  In spite of what the arch manual
says (it says the congruence stride is 16MB), the congruence stride on
all manufactured parisc processors is 4MB.  This means that any virtual
addresses, regardless of space id, that are equal modulo 4MB have the
same cache colour.

James
 




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



Bug#561203: threads and fork on machine with VIPT-WB cache

2010-04-06 Thread James Bottomley
On Tue, 2010-04-06 at 13:57 +0900, NIIBE Yutaka wrote:
 John David Anglin wrote:
  It is interesting that in the case of the Debian bug that
  a thread of the parent process causes the COW break and thereby corrupts
  its own memory.  As far as I can tell, the fork'd child never writes
  to the memory that causes the fault.
 
 Thanks for writing and testing a patch.
 
 The case of #561203 is second scenario.  I think that this case is
 relevant to VIVT-WB machine too (provided kernel does copy by kernel
 address).
 
 James Bottomley wrote:
  So this is going to be a hard sell because of the arch churn. There are,
  however, three ways to do it with the original signature.
 
 Currently, I think that signature change would be inevitable for
 ptep_set_wrprotect.

Well we can't do it by claiming several architectures are wrong in their
implementation.  We might do it by claiming to need vma knowledge ...
however, even if you want the flush, as I said, you don't need to change
the signature.

   1. implement copy_user_highpage ... this allows us to copy through
  the child's page cache (which is coherent with the parent's
  before the cow) and thus pick up any cache changes without a
  flush
 
 Let me think about this way.
 
 Well, this would improve both cases of the first scenario of mine and
 the second scenario.
 
 But... I think that even if we would have copy_user_highpage which
 does copy by user address, we need to flush at ptep_set_wrprotect.  I
 think that we need to keep the condition: no dirty cache for COW page.
 
 Think about third scenario of threads and fork:
 
 (1) In process A, there are multiple threads, and a thread A-1 invokes
 fork.  We have process B, with a different space identifier color.

I don't understand what you mean by space colour ... there's cache
colour which refers to the line in the cache to which the the physical
memory maps.  The way PA is set up, space ID doesn't factor into cache
colour.

 (2) Another thread A-2 in process A runs while A-1 copies memory by
 dup_mmap.  A-2 writes to the address x in a page.  Let's call
 this page oldpage.
 
 (3) We have dirty cache for x by A-2 at the time of
 ptep_set_wrprotect of thread A-1.  Suppose that we don't flush
 here.
 
 (4) A-1 finishes copy, and sleeps.
 
 (5) Child process B is waken up and sees old value at x in oldpage,
 through different cache line.  B sleeps.

This isn't possible.  at this point, A and B have the same virtual
address and mapping for oldpage this means they are the same cache
colour, so they both see the cached value.

James

 (6) A-2 is waken up.  A-2 touches the memory again, breaks COW.  A-2
 copies data on oldpage to newpage.  OK, newpage is
 consistent with copy_user_highpage by user address.
 
 Note that during this copy, the cache line of x by A-2 is
 flushed out to oldpage.  It invokes another memory fault and COW
 break.  (I think that this memory fault is unhealthy.)
 Then, new value goes to x on oldpage (when it's physically
 tagged cache).
 
 A-2 sleeps.
 
 (7) Child process B is waken up.  When it accesses at x, it sees new
 value suddenly.
 
 
 If we flush cache to oldpage at ptep_set_wrprotect, this couldn't
 occur.
 
 
   *   *   *
 
 
 I know that we should not do threads and fork.  It is difficult to
 define clean semantics.  Because another thread may touch memory while
 a thread which does memory copy for fork, the memory what the child
 process will see may be inconsistent.  For the child, a page might be
 new, while another page might be old.
 
 For VIVT-WB cache machine, I am considering a possibility for the
 child process to have inconsistent memory even within a single page
 (when we have no flush at ptep_set_wrprotect).
 
 It will be needed for me to talk to linux-arch soon or later.





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



Bug#561203: threads and fork on machine with VIPT-WB cache

2010-04-05 Thread James Bottomley
On Sun, 2010-04-04 at 22:51 -0400, John David Anglin wrote:
  Thanks a lot for the discussion.
  
  James Bottomley wrote:
   So your theory is that the data the kernel sees doing the page copy can
   be stale because of dirty cache lines in userspace (which is certainly
   possible in the ordinary way)?
  
  Yes.
  
   By design that shouldn't happen: the idea behind COW breaking is
   that before it breaks, the page is read only ... this means that
   processes can have clean cache copies of it, but never dirty cache
   copies (because writes are forbidden).
  
  That must be design, I agree.
  
  To keep this condition (no dirty cache for COW page), we need to flush
  cache before ptep_set_wrprotect.  That's my point.
  
  Please look at the code path:
 (kernel/fork.c)
 do_fork - copy_process - copy_mm - dup_mm - dup_mmap -
 (mm/memory.c)
 copy_page_range - copy_p*d_range - copy_one_pte - ptep_set_wrprotect
  
  The function flush_cache_dup_mm is called from dup_mmap, that's enough
  for a case of a process with single thread.
  I think that:
  We need to flush cache before ptep_set_wrprotect for a process with
  multiple threads.  Other threads may change memory after a thread
  invokes do_fork and before calling ptep_set_wrprotect.  Specifically,
  a process may sleep at pte_alloc function to get a page.
 
 I agree.  It is interesting that in the case of the Debian bug that
 a thread of the parent process causes the COW break and thereby corrupts
 its own memory.  As far as I can tell, the fork'd child never writes
 to the memory that causes the fault.
 
 My testing indicates that your suggested change fixes the Debian
 bug.  I've attached below my latest test version.  This seems to fix
 the bug on both SMP and UP kernels.
 
 However, it doesn't fix all page/cache related issues on parisc
 SMP kernels that I commonly see.
 
 My first inclination after even before reading your analysis was
 to assume that copy_user_page was broken (i.e, that even if a
 processor cache was dirty when the COW page was write protected,
 it should be possible to do the flush before the page is copied).
 However, this didn't seem to work...  Possibly, there are issues
 with aliased addresses.
 
 I note that sparc flushes the entire cache and purges the entire
 tlb in kmap_atomic/kunmap_atomic for highmem.  Although the breakage
 that I see is not limited to PA8800/PA8900, I'm not convinced
 that we maintain coherency that is required for these processors
 in copy_user_page when we have multiple threads.
 
 As a side note, kmap_atomic/kunmap_atomic seem to lack calls to
 pagefault_disable()/pagefault_enable() on PA8800.
 
 Dave
 -- 
 J. David Anglin  dave.ang...@nrc-cnrc.gc.ca
 National Research Council of Canada  (613) 990-0752 (FAX: 
 952-6602)
 
 diff --git a/arch/parisc/include/asm/pgtable.h 
 b/arch/parisc/include/asm/pgtable.h
 index a27d2e2..b140d5c 100644
 --- a/arch/parisc/include/asm/pgtable.h
 +++ b/arch/parisc/include/asm/pgtable.h
 @@ -14,6 +14,7 @@
  #include linux/bitops.h
  #include asm/processor.h
  #include asm/cache.h
 +extern void flush_cache_page(struct vm_area_struct *vma, unsigned long 
 vmaddr, unsigned long pfn);
  
  /*
   * kern_addr_valid(ADDR) tests if ADDR is pointing to valid kernel
 @@ -456,17 +457,22 @@ static inline pte_t ptep_get_and_clear(struct mm_struct 
 *mm, unsigned long addr,
   return old_pte;
  }
  
 -static inline void ptep_set_wrprotect(struct mm_struct *mm, unsigned long 
 addr, pte_t *ptep)
 +static inline void ptep_set_wrprotect(struct vm_area_struct *vma, struct 
 mm_struct *mm, unsigned long addr, pte_t *ptep)
  {
  #ifdef CONFIG_SMP
   unsigned long new, old;
 +#endif
 + pte_t old_pte = *ptep;
 +
 + if (atomic_read(mm-mm_users)  1)

Just to verify there's nothing this is hiding, can you make this 

if (pte_dirty(old_pte))

and reverify?  The if clause should only trip on the case where the
parent has dirtied the line between flush and now.

 + flush_cache_page(vma, addr, pte_pfn(old_pte));
  
 +#ifdef CONFIG_SMP
   do {
   old = pte_val(*ptep);
   new = pte_val(pte_wrprotect(__pte (old)));
   } while (cmpxchg((unsigned long *) ptep, old, new) != old);
  #else
 - pte_t old_pte = *ptep;
   set_pte_at(mm, addr, ptep, pte_wrprotect(old_pte));
  #endif
  }
 diff --git a/mm/memory.c b/mm/memory.c
 index 09e4b1b..21c2916 100644
 --- a/mm/memory.c
 +++ b/mm/memory.c
 @@ -616,7 +616,7 @@ copy_one_pte(struct mm_struct *dst_mm, struct mm_struct 
 *src_mm,
* in the parent and the child
*/
   if (is_cow_mapping(vm_flags)) {
 - ptep_set_wrprotect(src_mm, addr, src_pte);
 + ptep_set_wrprotect(vma, src_mm, addr, src_pte);

So this is going to be a hard sell because of the arch churn. There are,
however, three ways to do it with the original signature.

 1. implement copy_user_highpage ... this allows us

Bug#561203: threads and fork on machine with VIPT-WB cache

2010-04-02 Thread James Bottomley
On Fri, 2010-04-02 at 12:48 +0900, NIIBE Yutaka wrote:
 Thanks for your quick reply.
 
 James Bottomley wrote:
  In COW breaking, the page table entry is copied, so A and B no longer
  have page table entries at the same physical location.  If the COW is
  intact, A and B have the same physical page, but it's also accessed by
  the same virtual address, hence no aliasing.
 
 Let me explain more.
 
 In the scenario, I assume:
 
   No aliasing between A and B.
   We have aliasing between kernel access and user access.
 
 Before COW breaking A and B share same data (with no aliasing same
 space identifier color), and B sees data in cache, while memory has
 stale data.
 
 At COW breaking, kernel copies the memory, it doesn't see new data
 in cache because of aliasing.
 
 Isn't it possible?

So your theory is that the data the kernel sees doing the page copy can
be stale because of dirty cache lines in userspace (which is certainly
possible in the ordinary way)?  By design that shouldn't happen: the
idea behind COW breaking is that before it breaks, the page is read
only ... this means that processes can have clean cache copies of it,
but never dirty cache copies (because writes are forbidden).  As soon as
one or other process tries to write to the page, it gets a memory
protection trap long before the data it's trying to write goes into the
cache.  By the time the write is allowed to complete (and the cache
becomes dirty), the process will have the new copy of the page which
belongs exclusively to it.

James





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



Bug#561203: threads and fork on machine with VIPT-WB cache

2010-04-01 Thread James Bottomley
On Fri, 2010-04-02 at 11:41 +0900, NIIBE Yutaka wrote:
 (9) Process B does read-access on memory, which gets *NEW* data in
 cache (if process space identifier color is same).
 Process B does write-access on memory which causes memory fault,
 as it's COW memory.
 
 Note: Process B sees *NEW* data because it's VIPT-WB cache.
 It shares same memory in this situation.

So I think the bug here is that you're confusing aliasing with SMP cache
coherence.  In an alias situation, the same physical line is mapped to
multiple lines in a processor's cache (at different virtual addresses),
which means you can get a different answer depending on which alias you
read.

In COW breaking, the page table entry is copied, so A and B no longer
have page table entries at the same physical location.  If the COW is
intact, A and B have the same physical page, but it's also accessed by
the same virtual address, hence no aliasing.

In an SMP incoherent system, A and B could get different results (if on
different CPUs) because the write protect is in the cache of A but not
B.  However, PA is SMP coherent, so the act of B reading a line which is
dirty in A's cache causes a flush before the read completes via the
cache chequerboard logic and B ends up reading the same value A would
have read.

James





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



Bug#558999: FTBFS [hppa] - recompile with -ffunction-sections

2009-12-01 Thread James Bottomley
 I am not very good at GCC optimizations. Can you please explain why
 this problem is not seen on other architectures? Also can you please
 advise if I should add this compiler option for all arch or just hppa.

It's not really a gcc problem, it's an ELF one.  The ELF spec for HPPA
says that we need to leave symbol resolution as a relative jump.  On
parisc 32 bits, this is a 17bit relative jump.  We can do longer by
indirecting through a stub section.  However, this problem usually
occurs because the actual text section of the .o file is bigger than
131k (about 17 bits) and so the linker can't insert a reachable stub
into the binary.

-ffunction-sections splits the text section up into one section per
function, so now the linker can insert the stubs in between the
functions and thus the problem is solved (until a single function gets
longer than 131k).

Most other architectures have bigger relative jumps, so they likely
won't need -ffunction-sections (unless the file you're compiling gets
much bigger).

James





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



Bug#519707: Upgrade to new version of postgrey fails to start with FATAL: ERROR: ...

2009-09-11 Thread James Bottomley
On Sun, 2009-09-06 at 12:06 +0100, Antonio Radici wrote:
 thanks for your report, I wrote a preinst script which is running a
 db4.7_upgrade if we are upgrading from a version less than 1.31-1.

That sounds like a good fix, thanks.

 This is fixed in the git repo in collab-maint and it will be included in the
 next release.

Unfortunately, since I've already done this on my box, I don't really
have any way to test.

James





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



Bug#545229: linux-image-2.6.30-1-parisc: panic on boot

2009-09-05 Thread James Bottomley
Package: linux-image-2.6.30-1-parisc
Version: 2.6.30-6
Severity: critical
Tags: patch
Justification: breaks the whole system



-- Package-specific info:

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (650, 'testing'), (500, 'stable')
Architecture: hppa (parisc)

Kernel: Linux 2.6.26-2-parisc
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages linux-image-2.6.30-1-parisc depends on:
ii  debconf [debconf-2.0] 1.5.27 Debian configuration management sy
ii  initramfs-tools [linux-initra 0.93.4 tools for generating an initramfs
ii  module-init-tools 3.10-3 tools for managing Linux kernel mo

linux-image-2.6.30-1-parisc recommends no packages.

Versions of packages linux-image-2.6.30-1-parisc suggests:
pn  linux-doc-2.6.30  none (no description available)
ii  palo  1.16+nmu1  Linux boot loader for parisc/hppa

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

---

All current debian 2.6.30-1 kernels panic on boot on parisc systems when
loading the initial modules.

Problem is actually caused by binutils outputting duplicate .text 
section names.  However, this trips a panic on boot because kernel/modules.c
has insufficient error checking for this case

Patches to fix this are

From 1b364bf438cf337a3818aee77d68c0713f3e1fc4 Mon Sep 17 00:00:00 2001
From: James Bottomley james.bottom...@hansenpartnership.com
Date: Wed, 26 Aug 2009 22:04:12 +0930
Subject: module: workaround duplicate section names

and to fix up that patch

From ea6bff368548d79529421a9dc0710fc5330eb504 Mon Sep 17 00:00:00 2001
From: Ingo Molnar mi...@elte.hu
Date: Fri, 28 Aug 2009 10:44:56 +0200
Subject: modules: Fix build error in the !CONFIG_KALLSYMS case
From 1b364bf438cf337a3818aee77d68c0713f3e1fc4 Mon Sep 17 00:00:00 2001
From: James Bottomley james.bottom...@hansenpartnership.com
Date: Wed, 26 Aug 2009 22:04:12 +0930
Subject: module: workaround duplicate section names

The root cause is a duplicate section name (.text); is this legal?
[ Amerigo Wang: AFAIK, yes. ]

However, there's a problem with commit
6d76013381ed28979cd122eb4b249a88b5e384fa in that if you fail to allocate
a mod-sect_attrs (in this case it's null because of the duplication),
it still gets used without checking in add_notes_attrs()

This should fix it

[ This patch leaves other problems, particularly the sections directory,
  but recent parisc toolchains seem to produce these modules and this
  prevents a crash and is a minimal change -- RR ]

Signed-off-by: James Bottomley james.bottom...@suse.de
Signed-off-by: Rusty Russell ru...@rustcorp.com.au
Tested-by: Helge Deller del...@gmx.de
Signed-off-by: Linus Torvalds torva...@linux-foundation.org
---
 kernel/module.c |3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/kernel/module.c b/kernel/module.c
index 07c80e6..eccb561 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -2355,7 +2355,8 @@ static noinline struct module *load_module(void __user 
*umod,
if (err  0)
goto unlink;
add_sect_attrs(mod, hdr-e_shnum, secstrings, sechdrs);
-   add_notes_attrs(mod, hdr-e_shnum, secstrings, sechdrs);
+   if (mod-sect_attrs)
+   add_notes_attrs(mod, hdr-e_shnum, secstrings, sechdrs);
 
/* Get rid of temporary copy */
vfree(hdr);
-- 
1.6.0.2



Bug#541702: linux-image-2.6.30-1-686: Kernel fails to start networking because no e100 firmware

2009-08-15 Thread James Bottomley
On Sat, 2009-08-15 at 19:21 +0100, Ben Hutchings wrote:
 On Sat, 2009-08-15 at 10:47 -0700, james.bottom...@hansenpartnership.com
 wrote:
  Package: linux-image-2.6.30-1-686
  Version: 2.6.30-5
  Severity: serious
  Justification: Policy 2.2.1
 
 That very same section explains why we cannot do what you are
 suggesting!

No, it doesn't ... the decision to put firmware-linux in non-free is
obviously wrong, since the same firmware was shipped as is in main with
2.6.26-2

  On upgrade from 2.6.30-2-686 networking (on a remote machine) failed to
  start, meaning that a support ticket had to be opened for KVM access.
 
 I don't recommend running unstable on production machines.

If you bother to read the bug report, you'd see it's actually running
testing.

  Diagnosis revealed that the e100 driver in 2.6.26-2-686 required no
  firmware, so the firmware-linux package wasn't installed.  Apparently
  2.6.30-1-686 was built with external firmware for the e100 so it now
  depends on the firmware-linux package.
  
  This is a serious policy violation because required hardware stops
  working after the upgrade.
 
 No, most systems do not require the firmware-linux package.

That's not really relevant, is it?  linux-image ships with a ton of
drivers most systems don't use as well.

The point is that what was working before the upgrade didn't work after
it.

  Fix suggested is to make 2.6.30-1-686 depend on linux-firmware so that
  on upgrade the necessary firmware is present.
 
 I intend to ensure that firmware-linux is mentioned in the release notes
 for squeeze, but it cannot be recommended or made a dependency.

So this amounts to ... assuming the user can find the notice (because
there's a blizzard of notices that go with each upgrade, particularly if
they're going from lenny - squeeze) you'll tell them that you broke
their system?

The point here is to try and ensure large numbers of systems don't break
before this exits testing for stable.

James





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



Bug#541702: linux-image-2.6.30-1-686: Kernel fails to start networking because no e100 firmware

2009-08-15 Thread James Bottomley
OK, so lets go back to basics here.

The point of a bug report is to report a bug.  The Bug here is that
large numbers of systems will break on upgrade to this kernel once it
hits stable.  This is the problem that needs fixing.

The fact that you find the suggested fix politically incorrect, or that
you don't think I should have been able to find the bug in the first
place are irrelevant to the fact that the bug exists.

Apart from being appallingly bad release practice, breaking a
significant fraction of users on an upgrade is also a debian policy
violation as I've cited (the package is too buggy to release because of
all the breakage).

Trying to describe this as fixed because you'll put it in the release
notes is wrong in principle because it doesn't prevent the existing
users from suffering breakage a priori.

A pre upgrade script that detected the problem based on the runtime
detection that the user needed modules with firmware now in
firmware-linux would be acceptable.  Just stop, print the warning and
allow them to OK or cancel.  The list of modules now requiring firmware
surely isn't non-free and it can be derived from the linux build system
fairly easily.





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



Bug#519707: Upgrade to new version of postgrey fails to start with FATAL: ERROR: ...

2009-03-14 Thread James Bottomley
Package: postgrey
Version: 1.32-3
Severity: serious
Justification: Policy 2.2.1 makes package to buggy to release


This looks to be an incidental fault affecting postgrey, but the serious
consequence is that postgrey refuses to start.

What seems to have happened is that on the recent system upgrade
libberkeleydb-perl (a package upon which postgrey relies) was upgraded
to version 0.38-1.  This version moved from db4.6 to db4.7, which seem
to be mutually incompatible formats causing postgrey to fail instantly with

postgrey: FATAL: ERROR: can't create DB environment: No such file or directory 
(dbdir: /var/lib/postgrey uid/gid: 121,121)  

because it can no longer read the database files in /var/lib/postgrey

The only solution to this appears to be to dump the postgrey databases before
the upgrade and to reform them after (or simply to remove all the old files
losing the accumulated data).

I'm open to this being a severe bug in libberkeleydb-perl either since it
is the root cause, but I think posgrey will still have to acquire the
dump and restore package scripts to fix it.


-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (650, 'testing'), (500, 'stable')
Architecture: hppa (parisc)

Kernel: Linux 2.6.26-1-parisc
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages postgrey depends on:
ii  adduser   3.110  add and remove users and groups
ii  debconf   1.5.25 Debian configuration management sy
ii  libberkeleydb-perl0.38-1 use Berkeley DB 4 databases from P
ii  libnet-dns-perl   0.65-1 Perform DNS queries from a Perl sc
ii  libnet-server-perl0.97-1 An extensible, general perl server
ii  perl  5.10.0-19  Larry Wall's Practical Extraction 
ii  ucf   3.0016 Update Configuration File: preserv

Versions of packages postgrey recommends:
ii  libdigest-sha1-perl   2.11-2+b1  NIST SHA-1 message digest algorith
ii  libnet-rblclient-perl 0.5-2  Queries multiple Realtime Blackhol
ii  libparse-syslog-perl  1.10-1 Perl module for parsing syslog ent
ii  postfix   2.5.5-1.1  High-performance mail transport ag

postgrey suggests no packages.

-- debconf information:
  postgrey/1.32-3_changeport:



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



Bug#479612: after upgrade to spandsp 0.0.4pre18 asterisk-app-fax crashes asterisk

2008-05-05 Thread James Bottomley
Package: asterisk-app-fax
Version: 0.0.20070624-1
Severity: critical
Justification: causes serious data loss

Apparently the dependency of asterisk-spandsp-plugins and spandsp-dev
is pretty tight.  It looks like there was a binary incompatible change
introduced by the upgrade from 0.0.4pre16 to 0.0.4pre18

I verified that asterisk crashes every time a fax is received after the
upgrade

Recompiling asterisk-spandsp-plugins_0.0.20070624-1 and reinstalling makes
the crash go away.  It looks like theres a compiled version in unstable that
will go through to testing in 10 days and fix the problem

The net of this bug report is that either these packages need to be tied
together, or the so version of spandsp needs increasing for every change
(because in the pre stage the ABI is obviously not stable)

-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 2.6.24-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

Versions of packages asterisk-app-fax depends on:
ii  asterisk   1:1.4.18.1~dfsg-1 Open Source Private Branch Exchang
ii  libc6  2.7-10GNU C Library: Shared libraries
ii  libspandsp30.0.4pre18-1  Telephony signal processing librar

Versions of packages asterisk-app-fax recommends:
ii  gs-common 0.3.13-0.1 Common files for different Ghostsc
ii  libconfig-tiny-perl   2.12-1 Read/Write .ini style files with a
ii  libfile-sync-perl 0.09-4 Perl interface to sync() and fsync
ii  liblocale-gettext-perl1.05-3 Using libc functions for internati
ii  libmime-lite-perl 3.021-3Perl5 module for convenient genera
ii  libpaper-utils1.1.23 library for handling paper charact
ii  libtiff-tools 3.8.2-8TIFF manipulation and conversion t
ii  psutils   1.17-24A collection of PostScript documen

-- no debconf information



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



Bug#479612: after upgrade to spandsp 0.0.4pre18 asterisk-app-fax crashes asterisk

2008-05-05 Thread James Bottomley
On Mon, 2008-05-05 at 21:47 +0300, Tzafrir Cohen wrote:
 On Mon, May 05, 2008 at 01:13:40PM -0500, James Bottomley wrote:
  Package: asterisk-app-fax
  Version: 0.0.20070624-1
  Severity: critical
  Justification: causes serious data loss
  
  Apparently the dependency of asterisk-spandsp-plugins and spandsp-dev
  is pretty tight.  It looks like there was a binary incompatible change
  introduced by the upgrade from 0.0.4pre16 to 0.0.4pre18
  
  I verified that asterisk crashes every time a fax is received after the
  upgrade
  
  Recompiling asterisk-spandsp-plugins_0.0.20070624-1 and reinstalling makes
  the crash go away.  
  
  The net of this bug report is that either these packages need to be tied
  together, or the so version of spandsp needs increasing for every change
  (because in the pre stage the ABI is obviously not stable)
 
 A new version was uploaded just today. 0.0.20070624-2 . It was aparantly
 built against a newer spandsp. Does it fix this issue for you?

I think it will, that's why I wrote 

 It looks like theres a compiled version in unstable that
 will go through to testing in 10 days and fix the problem

But I'd have to do an upgrade on the running system to check that, which
means not until tomorrow.

James





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



Bug#479612: after upgrade to spandsp 0.0.4pre18 asterisk-app-fax crashes asterisk

2008-05-05 Thread James Bottomley
On Mon, 2008-05-05 at 21:30 +0300, Faidon Liambotis wrote:
 James Bottomley wrote:
  Apparently the dependency of asterisk-spandsp-plugins and spandsp-dev
  is pretty tight.  It looks like there was a binary incompatible change
  introduced by the upgrade from 0.0.4pre16 to 0.0.4pre18
  
  I verified that asterisk crashes every time a fax is received after the
  upgrade
  
  Recompiling asterisk-spandsp-plugins_0.0.20070624-1 and reinstalling makes
  the crash go away.  It looks like theres a compiled version in unstable that
  will go through to testing in 10 days and fix the problem
  
  The net of this bug report is that either these packages need to be tied
  together, or the so version of spandsp needs increasing for every change
  (because in the pre stage the ABI is obviously not stable)
 It's been a while since I used app-fax -- therefore, help maintaining it 
 is welcome.
 
 Are you certain that the crash is because of a spandsp ABI change and 
 not because of an asterisk ABI change? We've had one of those as well :(

Yes ... because

 1. There was no asterisk update in the last apt-get update on
Saturday
 2. recompiling sterisk-spandsp-plugins_0.0.20070624-1 with the new
libspandsp-dev fixes the problem (as I said).

James





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



Bug#476285: linux-image-2.6.24-1-parisc: panics on boot in cmpxchg_futex_value_locked

2008-04-15 Thread James Bottomley
Package: linux-image-2.6.24-1-parisc
Version: 2.6.24-5
Severity: critical
Tags: patch
Justification: breaks the whole system


This actually isn't just a bug in debian, it affects every distro which
uses the stable tree as a base

for instance, the gentoo bug is here:

http://bugs.gentoo.org/show_bug.cgi?id=217030

The panic is:

backtrace:
 [10587970] init+0x20/0xc4
 [105807e0] kernel_init+0xf4/0x328
 [10109c5c] ret_from_kernel_thread+0x1c/0x24


Kernel Fault: Code=26 regs=8fc241c0 (Addr=)

 YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
PSW: 0100 Not tainted
r00-03  0004ff0f 104fc140 10587970 f0412000
r04-07   105b57c0  
r08-11   1059b810 105b5810 104c3810
r12-15  10568810 1059b810 8fc24088 3b9aca00
r16-19  f8c4 f17c f174 
r20-23  4000 07ff 10587950 0001
r24-27     104c6010
r28-31  8fc24000 c99f4bdd 8fc241c0 105807e0
sr00-03     
sr04-07     

IASQ:   IAOQ: 101433b8 101433bc 
 IIR: 0f401089ISR:   IOR:   
 CPU:0   CR30: 8fc24000 CR31:   
 ORIG_R28:  
 IAOQ[0]: cmpxchg_futex_value_locked+0x28/0x9c  
 IAOQ[1]: cmpxchg_futex_value_locked+0x2c/0x9c  
 RP(r2): init+0x20/0xc4 
Kernel panic - not syncing: Kernel Fault   


The root cause is a backport of this commit:

commit a0c1e9073ef7428a14309cba010633a6cd6719ea
Author: Thomas Gleixner [EMAIL PROTECTED]
Date:   Sat Feb 23 15:23:57 2008 -0800

futex: runtime enable pi and robust functionality

To the stable tree (went in for 2.6.24.4).  This breaks parisc because
we weren't set up to process NULL as a futex cmpxchg address.  We
found and fixed the bug upstream as:

commit c20a84c91048c76c1379011c96b1a5cee5c7d9a0
Author: Kyle McMartin [EMAIL PROTECTED]
Date:   Sat Mar 1 10:25:52 2008 -0800

[PARISC] futex: special case cmpxchg NULL in kernel space

but, because we didn't know tglx had requested a backport, the fix
wasn't backported to stable.

I'll send the necessary patch into stable, but to get parisc working
again on debian it has to be applied on top of the current kernel.

NOTE: This bug was introduced into 2.6.24.4; 2.6.24.3 doesn't have it.


-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (650, 'testing')
Architecture: hppa (parisc)

Kernel: Linux 2.6.22-3-parisc
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages linux-image-2.6.24-1-parisc depends on:
ii  debconf [debconf-2.0]1.5.20  Debian configuration management sy
ii  initramfs-tools [linux-initr 0.91e   tools for generating an initramfs
ii  module-init-tools3.3-pre11-4 tools for managing Linux kernel mo

linux-image-2.6.24-1-parisc recommends no packages.

-- debconf information excluded

*** parisc-cmpxchg-fix.diff
From c8d402df60b3aad85b30cfe7df20f829ef6eb895 Mon Sep 17 00:00:00 2001
From: Kyle McMartin [EMAIL PROTECTED]
Date: Sat, 1 Mar 2008 10:25:52 -0800
Subject: [PARISC] futex: special case cmpxchg NULL in kernel space

Commit a0c1e9073ef7428a14309cba010633a6cd6719ea added code to futex.c
to detect whether futex_atomic_cmpxchg_inatomic was implemented at run
time:

+   curval = cmpxchg_futex_value_locked(NULL, 0, 0);
+   if (curval == -EFAULT)
+   futex_cmpxchg_enabled = 1;

This is bogus on parisc, since page zero in kernel virtual space is the
gateway page for syscall entry, and should not be read from the kernel.
(That, and we really don't like the kernel faulting on its own address
 space...)

Signed-off-by: Kyle McMartin [EMAIL PROTECTED]
---
 include/asm-parisc/futex.h |   10 --
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/include/asm-parisc/futex.h b/include/asm-parisc/futex.h
index dbee6e6..fdc6d05 100644
--- a/include/asm-parisc/futex.h
+++ b/include/asm-parisc/futex.h
@@ -56,6 +56,12 @@ futex_atomic_cmpxchg_inatomic(int __user *uaddr, int oldval, 
int newval)
int err = 0;
int uval;
 
+   /* futex.c wants to do a cmpxchg_inatomic on kernel NULL, which is
+* our gateway page, and causes no end of trouble...
+*/
+   if (segment_eq(KERNEL_DS, get_fs())  !uaddr)
+   return -EFAULT;
+
if (!access_ok(VERIFY_WRITE, uaddr, sizeof(int)))
return -EFAULT;
 
@@ -67,5 +73,5 @@ futex_atomic_cmpxchg_inatomic(int __user *uaddr, int oldval, 
int newval)
return uval;
 }
 
-#endif
-#endif
+#endif /*__KERNEL__*/
+#endif /*_ASM_PARISC_FUTEX_H*/
-- 
1.5.3.8



-- 
To 

Bug#476292: linux-image-2.6.24-1-parisc64: 64 bit kernel panics on boot in handle_interruption

2008-04-15 Thread James Bottomley
Package: linux-image-2.6.24-1-parisc64
Version: 2.6.24-5
Severity: critical
Tags: patch
Justification: breaks the whole system


The parisc 64 bit kernel panics on boot with this:

  CC  net/ipv4/netfilter/iptable_raw.mod.o
  CC  net/ipv4/tcp_diag.mod.o
  CC  net/ipv4/tunnel4.mod.o
  CC  net/ipv4/xfrm4_mode_beet.mod.o
  CC  net/ipv4/xfrm4_tunnel.mod.o
  CC  net/key/af_key.mod.o
  CC  net/llc/llc.mod.o
  CC  net/llc/llc2.mod.o
  CC  net/netfilter/nfnetlink_log.mod.o
  CC  net/netfilter/nfnetlink.mod.o
  CC  net/netfilter/nfnetlink_queue.mod.o
  CC  net/netfilter/xt_CLASSIFY.mod.o
  CC  net/netfilter/x_tables.mod.o
  CC  net/netfilter/xt_DSCP.mod.o
  CC  net/netfilter/xt_MARK.mod.o
  CC  net/netfilter/xt_NFQUEUE.mod.o
  CC  net/netfilter/xt_comment.mod.o
  CC  net/netfilter/xt_dccp.mod.o
  CC  net/netfilter/xt_dscp.mod.o
  CC  net/netfilter/xt_esp.mod.o
  CC  net/netfilter/xt_length.mod.o
  CC  net/netfilter/xt_limit.mod.o
  CC  net/netfilter/xt_mac.mod.o
  CC  net/netfilter/xt_mark.mod.o
  CC  net/netfilter/xt_multiport.mod.o
  CC  net/netfilter/xt_pkttype.mod.o
  CC  net/netfilter/xt_policy.mod.o
  CC  net/netfilter/xt_realm.mod.o
  CC  net/netfilter/xt_sctp.mod.o
  CC  net/netfilter/xt_string.mod.o
  CC  net/netfilter/xt_tcpmss.mod.o
  CC  net/netfilter/xt_tcpudp.mod.o
  CC  net/packet/af_packet.mod.o
  CC  net/sctp/sctp.mod.o
  CC  net/sunrpc/auth_gss/auth_rpcgss.mod.o
  CC  net/sunrpc/auth_gss/rpcsec_gss_krb5.mod.o
  CC  net/sunrpc/auth_gss/rpcsec_gss_spkm3.mod.o
  CC  net/sunrpc/sunrpc.mod.o
  CC  net/tipc/tipc.mod.o
  CC  net/xfrm/xfrm_user.mod.o
  CC  sound/ac97_bus.mod.o
  CC  sound/core/oss/snd-mixer-oss.mod.o
  CC  sound/core/oss/snd-pcm-oss.mod.o
  CC  sound/core/seq/oss/snd-seq-oss.mod.o
  CC  sound/core/seq/snd-seq-device.mod.o
  CC  sound/core/seq/snd-seq-dummy.mod.o
  CC  sound/core/seq/snd-seq-midi-event.mod.o
  CC  sound/core/seq/snd-seq-midi.mod.o
  CC  sound/core/seq/snd-seq.mod.o
  CC  sound/core/snd-hwdep.mod.o
  CC  sound/core/snd-page-alloc.mod.o
  CC  sound/core/snd-pcm.mod.o
  CC  sound/core/snd-rawmidi.mod.o
  CC  sound/core/snd-timer.mod.o
  CC  sound/core/snd.mod.o
  CC  sound/parisc/snd-harmony.mod.o
  CC  sound/pci/ac97/snd-ac97-codec.mod.o
  CC  sound/pci/rme9652/snd-hdspm.mod.o
  CC  sound/pci/snd-ad1889.mod.o
  LD [M]  crypto/aes_generic.ko
  CC  sound/soundcore.mod.o
  LD [M]  crypto/anubis.ko
  LD [M]  crypto/arc4.ko
  LD [M]  crypto/blkcipher.ko
  LD [M]  crypto/blowfish.ko
  LD [M]  crypto/cast5.ko
  LD [M]  crypto/cast6.ko
  LD [M]  crypto/cbc.ko
  LD [M]  crypto/crc32c.ko
  LD [M]  crypto/crypto_null.ko
  LD [M]  crypto/deflate.ko
  LD [M]  crypto/des_generic.ko
  LD [M]  crypto/ecb.ko
  LD [M]  crypto/khazad.ko
  LD [M]  crypto/gf128mul.ko
  LD [M]  crypto/md4.ko
  LD [M]  crypto/md5.ko
  LD [M]  crypto/michael_mic.ko
  LD [M]  crypto/serpent.ko
  LD [M]  crypto/sha256_generic.ko
  LD [M]  crypto/sha512.ko
  LD [M]  crypto/tcrypt.ko
  LD [M]  crypto/tea.ko
  LD [M]  crypto/tgr192.ko
  LD [M]  crypto/twofish.ko
  LD [M]  crypto/twofish_common.ko
  LD [M]  crypto/wp512.ko
  LD [M]  drivers/base/firmware_class.ko
  LD [M]  drivers/block/aoe/aoe.ko
  LD [M]  drivers/block/cryptoloop.ko
  LD [M]  drivers/block/loop.ko
  LD [M]  drivers/block/pktcdvd.ko
  LD [M]  drivers/block/sx8.ko
  LD [M]  drivers/block/ub.ko
  LD [M]  drivers/block/umem.ko
  LD [M]  drivers/cdrom/cdrom.ko
  LD [M]  drivers/char/lp.ko
  LD [M]  drivers/char/agp/parisc-agp.ko
  LD [M]  drivers/char/raw.ko
  LD [M]  drivers/hid/usbhid/usbhid.ko
  LD [M]  drivers/input/keyboard/hil_kbd.ko
  LD [M]  drivers/input/keyboard/hilkbd.ko
  LD [M]  drivers/input/misc/hp_sdc_rtc.ko
  LD [M]  drivers/input/misc/uinput.ko
  LD [M]  drivers/input/mouse/hil_ptr.ko
  LD [M]  drivers/input/mouse/psmouse.ko
  LD [M]  drivers/input/mouse/sermouse.ko
  LD [M]  drivers/input/serio/parkbd.ko
  LD [M]  drivers/input/serio/pcips2.ko
  LD [M]  drivers/input/serio/serio_raw.ko
  LD [M]  drivers/md/dm-crypt.ko
  LD [M]  drivers/input/serio/serport.ko
  LD [M]  drivers/md/dm-emc.ko
  LD [M]  drivers/md/dm-mirror.ko
  LD [M]  drivers/md/dm-mod.ko
  LD [M]  drivers/md/dm-multipath.ko
  LD [M]  drivers/md/dm-round-robin.ko
  LD [M]  drivers/md/dm-snapshot.ko
  LD [M]  drivers/md/dm-zero.ko
  LD [M]  drivers/md/faulty.ko
  LD [M]  drivers/md/linear.ko
  LD [M]  drivers/md/md-mod.ko
  LD [M]  drivers/md/multipath.ko
  LD [M]  drivers/md/raid1.ko
  LD [M]  drivers/md/raid0.ko
  LD [M]  drivers/md/raid10.ko
  LD [M]  drivers/message/fusion/mptbase.ko
  LD [M]  drivers/message/fusion/mptctl.ko
  LD [M]  drivers/message/fusion/mptfc.ko
  LD [M]  drivers/message/fusion/mptsas.ko
  LD [M]  drivers/message/fusion/mptscsih.ko
  LD [M]  drivers/message/fusion/mptspi.ko
  LD [M]  drivers/net/3c59x.ko
  LD [M]