[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#698382: marked as done (s390/time: fix sched_clock() overflow)



Your message dated Fri, 15 Feb 2013 11:47:10 +0000
with message-id <E1U6Jl0-0003MX-Bb@franck.debian.org>
and subject line Bug#698382: fixed in linux-2.6 2.6.32-48
has caused the Debian Bug report #698382,
regarding s390/time: fix sched_clock() overflow
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
698382: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=698382
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Source: linux-2.6
Version: 2.6.32-46

Hi,

this should be backported/included into our kernel when/if it's accepted
upstream. 2.6.32 and 3.2.0 are both affected. (So given the source
package change I guess this bug would need to be cloned for the latter,
but I'll leave that up to you.)

Kind regards
Philipp Kern

----- Forwarded message from Heiko Carstens <heiko.carstens@de.ibm.com> -----

Date: Tue, 15 Jan 2013 10:05:03 +0100
From: Heiko Carstens <heiko.carstens@de.ibm.com>
To: LINUX-390@VM.MARIST.EDU
Subject: Re: Twin penguins prospered for 417 days, then died
User-Agent: Mutt/1.5.21 (2010-09-15)
Message-ID: <20130115090503.GB3227@osiris>

On Mon, Jan 14, 2013 at 08:36:58PM +0100, Philipp Kern wrote:
> On Mon, Jan 14, 2013 at 01:11:34PM +0100, Heiko Carstens wrote:
> > That patch is for x86 only and won't fix your problem. However we do have a
> > similar bug in the s390 kernel code. The only difference is that it will
> > indeed trigger after 417 days instead of 208 days.
> > 
> > The reason is that we calculate with differences of the TOD clock register.
> > The TOD clock wraps after appr. 143 years. So far no problem...
> > 
> > However when converting a difference to nanoseconds we must divide the value
> > by 4.096. Without floating point arithmetics in the kernel we do that by
> > multiplying with 125 and afterwards dividing by 512... and there you can
> > see when the overflow happens:
> > 
> > 143 years / 125 = 1.114 years. And 365 days * 1.114 = 417.56 days.
> > 
> > So, that's when we hit the overflow.
> > 
> > We are working on a fix!
> > 
> > Thanks again for reporting!
> 
> I'd be cool if you could followup here with the patch when it's available. For
> the sake of Debian and others…

The patch below is what we came up with. The patch is against current
kernel version 3.8-rc3+, however I added the "Cc: stable@kernel.org"
tag, so it should be backported for all maintained stable kernels at
kernel.org.


From bf01d5d698b7d4a2ec42d55af19fb6d5c0bc0fe0 Mon Sep 17 00:00:00 2001
From: Heiko Carstens <heiko.carstens@de.ibm.com>
Date: Mon, 14 Jan 2013 16:55:55 +0100
Subject: [PATCH] s390/time: fix sched_clock() overflow

Converting a 64 Bit TOD format value to nanoseconds means that the value
must be divided by 4.096. In order to achieve that we multiply with 125
and divide by 512.
When used within sched_clock() this triggers an overflow after appr.
417 days. Resulting in a sched_clock() return value that is much smaller
than previously and therefore may cause all sort of weird things in
subsystems that rely on a monotonic sched_clock() behaviour.

To fix this implement a tod_to_ns() helper function which converts TOD
values without overflow and call this function from both places that
open coded the conversion: sched_clock() and kvm_s390_handle_wait().

Cc: stable@kernel.org
Reviewed-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---
 arch/s390/include/asm/timex.h | 28 ++++++++++++++++++++++++++++
 arch/s390/kernel/time.c       |  2 +-
 arch/s390/kvm/interrupt.c     |  2 +-
 3 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/arch/s390/include/asm/timex.h b/arch/s390/include/asm/timex.h
index fba4d66..4c060bb 100644
--- a/arch/s390/include/asm/timex.h
+++ b/arch/s390/include/asm/timex.h
@@ -128,4 +128,32 @@ static inline unsigned long long get_clock_monotonic(void)
 	return get_clock_xt() - sched_clock_base_cc;
 }
 
+/**
+ * tod_to_ns - convert a TOD format value to nanoseconds
+ * @todval: to be converted TOD format value
+ * Returns: number of nanoseconds that correspond to the TOD format value
+ *
+ * Converting a 64 Bit TOD format value to nanoseconds means that the value
+ * must be divided by 4.096. In order to achieve that we multiply with 125
+ * and divide by 512:
+ *
+ *    ns = (todval * 125) >> 9;
+ *
+ * In order to avoid an overflow with the multiplication we can rewrite this.
+ * With a split todval == 2^32 * th + tl (th upper 32 bits, tl lower 32 bits)
+ * we end up with
+ *
+ *    ns = ((2^32 * th + tl) * 125 ) >> 9;
+ * -> ns = (2^23 * th * 125) + ((tl * 125) >> 9);
+ *
+ */
+static inline unsigned long long tod_to_ns(unsigned long long todval)
+{
+	unsigned long long ns;
+
+	ns = ((todval >> 32) << 23) * 125;
+	ns += ((todval & 0xffffffff) * 125) >> 9;
+	return ns;
+}
+
 #endif
diff --git a/arch/s390/kernel/time.c b/arch/s390/kernel/time.c
index aff0e35..a5f4f5a 100644
--- a/arch/s390/kernel/time.c
+++ b/arch/s390/kernel/time.c
@@ -63,7 +63,7 @@ static DEFINE_PER_CPU(struct clock_event_device, comparators);
  */
 unsigned long long notrace __kprobes sched_clock(void)
 {
-	return (get_clock_monotonic() * 125) >> 9;
+	return tod_to_ns(get_clock_monotonic());
 }
 
 /*
diff --git a/arch/s390/kvm/interrupt.c b/arch/s390/kvm/interrupt.c
index c30615e..82c481d 100644
--- a/arch/s390/kvm/interrupt.c
+++ b/arch/s390/kvm/interrupt.c
@@ -408,7 +408,7 @@ int kvm_s390_handle_wait(struct kvm_vcpu *vcpu)
 		return 0;
 	}
 
-	sltime = ((vcpu->arch.sie_block->ckc - now)*125)>>9;
+	sltime = tod_to_ns(vcpu->arch.sie_block->ckc - now);
 
 	hrtimer_start(&vcpu->arch.ckc_timer, ktime_set (0, sltime) , HRTIMER_MODE_REL);
 	VCPU_EVENT(vcpu, 5, "enabled wait via clock comparator: %llx ns", sltime);
-- 
1.7.12.4

----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO LINUX-390 or visit
http://www.marist.edu/htbin/wlvindex?LINUX-390
----------------------------------------------------------------------
For more information on Linux on System z, visit
http://wiki.linuxvm.org/

----- End forwarded message -----

Attachment: signature.asc
Description: Digital signature


--- End Message ---
--- Begin Message ---
Source: linux-2.6
Source-Version: 2.6.32-48

We believe that the bug you reported is fixed in the latest version of
linux-2.6, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 698382@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Ben Hutchings <ben@decadent.org.uk> (supplier of updated linux-2.6 package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Thu, 14 Feb 2013 14:11:58 +0000
Source: linux-2.6
Binary: linux-tools-2.6.32 linux-source-2.6.32 linux-doc-2.6.32 linux-manual-2.6.32 linux-patch-debian-2.6.32 firmware-linux-free linux-support-2.6.32-5 linux-base linux-libc-dev linux-headers-2.6.32-5-all linux-headers-2.6.32-5-all-alpha linux-headers-2.6.32-5-common linux-image-2.6.32-5-alpha-generic linux-headers-2.6.32-5-alpha-generic linux-image-2.6.32-5-alpha-smp linux-headers-2.6.32-5-alpha-smp linux-image-2.6.32-5-alpha-legacy linux-headers-2.6.32-5-alpha-legacy linux-headers-2.6.32-5-all-amd64 linux-image-2.6.32-5-amd64 linux-headers-2.6.32-5-amd64 linux-image-2.6.32-5-amd64-dbg linux-headers-2.6.32-5-common-openvz linux-image-2.6.32-5-openvz-amd64 linux-headers-2.6.32-5-openvz-amd64 linux-image-2.6.32-5-openvz-amd64-dbg linux-headers-2.6.32-5-common-vserver linux-image-2.6.32-5-vserver-amd64 linux-headers-2.6.32-5-vserver-amd64 linux-image-2.6.32-5-vserver-amd64-dbg linux-headers-2.6.32-5-common-xen linux-image-2.6.32-5-xen-amd64 linux-headers-2.6.32-5-xen-amd64
 linux-image-2.6.32-5-xen-amd64-dbg xen-linux-system-2.6.32-5-xen-amd64 linux-headers-2.6.32-5-all-armel linux-image-2.6.32-5-iop32x linux-headers-2.6.32-5-iop32x linux-image-2.6.32-5-ixp4xx linux-headers-2.6.32-5-ixp4xx linux-image-2.6.32-5-kirkwood linux-headers-2.6.32-5-kirkwood linux-image-2.6.32-5-orion5x linux-headers-2.6.32-5-orion5x linux-image-2.6.32-5-versatile linux-headers-2.6.32-5-versatile linux-headers-2.6.32-5-all-hppa linux-image-2.6.32-5-parisc linux-headers-2.6.32-5-parisc linux-image-2.6.32-5-parisc-smp linux-headers-2.6.32-5-parisc-smp linux-image-2.6.32-5-parisc64 linux-headers-2.6.32-5-parisc64 linux-image-2.6.32-5-parisc64-smp linux-headers-2.6.32-5-parisc64-smp linux-headers-2.6.32-5-all-i386 linux-image-2.6.32-5-486 linux-headers-2.6.32-5-486 linux-image-2.6.32-5-686 linux-headers-2.6.32-5-686 linux-image-2.6.32-5-686-bigmem linux-headers-2.6.32-5-686-bigmem linux-image-2.6.32-5-686-bigmem-dbg linux-image-2.6.32-5-openvz-686
 linux-headers-2.6.32-5-openvz-686 linux-image-2.6.32-5-openvz-686-dbg linux-image-2.6.32-5-vserver-686 linux-headers-2.6.32-5-vserver-686 linux-image-2.6.32-5-vserver-686-bigmem linux-headers-2.6.32-5-vserver-686-bigmem linux-image-2.6.32-5-vserver-686-bigmem-dbg linux-image-2.6.32-5-xen-686 linux-headers-2.6.32-5-xen-686 linux-image-2.6.32-5-xen-686-dbg xen-linux-system-2.6.32-5-xen-686 linux-headers-2.6.32-5-all-ia64 linux-image-2.6.32-5-itanium linux-headers-2.6.32-5-itanium linux-image-2.6.32-5-mckinley linux-headers-2.6.32-5-mckinley linux-image-2.6.32-5-vserver-itanium linux-headers-2.6.32-5-vserver-itanium linux-image-2.6.32-5-vserver-mckinley linux-headers-2.6.32-5-vserver-mckinley linux-headers-2.6.32-5-all-m68k linux-image-2.6.32-5-amiga linux-headers-2.6.32-5-amiga linux-image-2.6.32-5-atari linux-headers-2.6.32-5-atari linux-image-2.6.32-5-bvme6000 linux-headers-2.6.32-5-bvme6000 linux-image-2.6.32-5-mac linux-headers-2.6.32-5-mac
 linux-image-2.6.32-5-mvme147 linux-headers-2.6.32-5-mvme147 linux-image-2.6.32-5-mvme16x linux-headers-2.6.32-5-mvme16x linux-headers-2.6.32-5-all-mips linux-image-2.6.32-5-r4k-ip22 linux-headers-2.6.32-5-r4k-ip22 linux-image-2.6.32-5-r5k-ip32 linux-headers-2.6.32-5-r5k-ip32 linux-image-2.6.32-5-sb1-bcm91250a linux-headers-2.6.32-5-sb1-bcm91250a linux-image-2.6.32-5-sb1a-bcm91480b linux-headers-2.6.32-5-sb1a-bcm91480b linux-image-2.6.32-5-4kc-malta linux-headers-2.6.32-5-4kc-malta linux-image-2.6.32-5-5kc-malta linux-headers-2.6.32-5-5kc-malta linux-headers-2.6.32-5-all-mipsel linux-image-2.6.32-5-r5k-cobalt linux-headers-2.6.32-5-r5k-cobalt linux-headers-2.6.32-5-all-powerpc linux-image-2.6.32-5-powerpc linux-headers-2.6.32-5-powerpc linux-image-2.6.32-5-powerpc-smp linux-headers-2.6.32-5-powerpc-smp linux-image-2.6.32-5-powerpc64 linux-headers-2.6.32-5-powerpc64 linux-image-2.6.32-5-vserver-powerpc linux-headers-2.6.32-5-vserver-powerpc
 linux-image-2.6.32-5-vserver-powerpc64 linux-headers-2.6.32-5-vserver-powerpc64 linux-headers-2.6.32-5-all-s390 linux-image-2.6.32-5-s390x linux-headers-2.6.32-5-s390x linux-image-2.6.32-5-s390x-tape linux-image-2.6.32-5-vserver-s390x linux-headers-2.6.32-5-vserver-s390x linux-headers-2.6.32-5-all-sh4 linux-image-2.6.32-5-sh7751r linux-headers-2.6.32-5-sh7751r linux-image-2.6.32-5-sh7785lcr linux-headers-2.6.32-5-sh7785lcr linux-headers-2.6.32-5-all-sparc linux-image-2.6.32-5-sparc64 linux-headers-2.6.32-5-sparc64 linux-image-2.6.32-5-sparc64-smp linux-headers-2.6.32-5-sparc64-smp linux-image-2.6.32-5-vserver-sparc64 linux-headers-2.6.32-5-vserver-sparc64
 linux-headers-2.6.32-5-all-sparc64
Architecture: all i386 source
Version: 2.6.32-48
Distribution: stable
Urgency: low
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Changed-By: Ben Hutchings <ben@decadent.org.uk>
Closes: 698382 699112 700486
Description: 
 firmware-linux-free - Binary firmware for various drivers in the Linux kernel
 linux-base - Linux image base package
 linux-doc-2.6.32 - Linux kernel specific documentation for version 2.6.32
 linux-headers-2.6.32-5-486 - Header files for Linux 2.6.32-5-486
 linux-headers-2.6.32-5-4kc-malta - Header files for Linux 2.6.32-5-4kc-malta
 linux-headers-2.6.32-5-5kc-malta - Header files for Linux 2.6.32-5-5kc-malta
 linux-headers-2.6.32-5-686-bigmem - Header files for Linux 2.6.32-5-686-bigmem
 linux-headers-2.6.32-5-686 - Header files for Linux 2.6.32-5-686
 linux-headers-2.6.32-5-all - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-alpha - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-amd64 - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-armel - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-hppa - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-i386 - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-ia64 - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-m68k - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-mips - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-mipsel - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-powerpc - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-s390 - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-sh4 - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-sparc64 - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-all-sparc - All header files for Linux 2.6.32 (meta-package)
 linux-headers-2.6.32-5-alpha-generic - Header files for Linux 2.6.32-5-alpha-generic
 linux-headers-2.6.32-5-alpha-legacy - Header files for Linux 2.6.32-5-alpha-legacy
 linux-headers-2.6.32-5-alpha-smp - Header files for Linux 2.6.32-5-alpha-smp
 linux-headers-2.6.32-5-amd64 - Header files for Linux 2.6.32-5-amd64
 linux-headers-2.6.32-5-amiga - Header files for Linux 2.6.32-5-amiga
 linux-headers-2.6.32-5-atari - Header files for Linux 2.6.32-5-atari
 linux-headers-2.6.32-5-bvme6000 - Header files for Linux 2.6.32-5-bvme6000
 linux-headers-2.6.32-5-common - Common header files for Linux 2.6.32-5
 linux-headers-2.6.32-5-common-openvz - Common header files for Linux 2.6.32-5-openvz
 linux-headers-2.6.32-5-common-vserver - Common header files for Linux 2.6.32-5-vserver
 linux-headers-2.6.32-5-common-xen - Common header files for Linux 2.6.32-5-xen
 linux-headers-2.6.32-5-iop32x - Header files for Linux 2.6.32-5-iop32x
 linux-headers-2.6.32-5-itanium - Header files for Linux 2.6.32-5-itanium
 linux-headers-2.6.32-5-ixp4xx - Header files for Linux 2.6.32-5-ixp4xx
 linux-headers-2.6.32-5-kirkwood - Header files for Linux 2.6.32-5-kirkwood
 linux-headers-2.6.32-5-mac - Header files for Linux 2.6.32-5-mac
 linux-headers-2.6.32-5-mckinley - Header files for Linux 2.6.32-5-mckinley
 linux-headers-2.6.32-5-mvme147 - Header files for Linux 2.6.32-5-mvme147
 linux-headers-2.6.32-5-mvme16x - Header files for Linux 2.6.32-5-mvme16x
 linux-headers-2.6.32-5-openvz-686 - Header files for Linux 2.6.32-5-openvz-686
 linux-headers-2.6.32-5-openvz-amd64 - Header files for Linux 2.6.32-5-openvz-amd64
 linux-headers-2.6.32-5-orion5x - Header files for Linux 2.6.32-5-orion5x
 linux-headers-2.6.32-5-parisc64 - Header files for Linux 2.6.32-5-parisc64
 linux-headers-2.6.32-5-parisc64-smp - Header files for Linux 2.6.32-5-parisc64-smp
 linux-headers-2.6.32-5-parisc - Header files for Linux 2.6.32-5-parisc
 linux-headers-2.6.32-5-parisc-smp - Header files for Linux 2.6.32-5-parisc-smp
 linux-headers-2.6.32-5-powerpc64 - Header files for Linux 2.6.32-5-powerpc64
 linux-headers-2.6.32-5-powerpc - Header files for Linux 2.6.32-5-powerpc
 linux-headers-2.6.32-5-powerpc-smp - Header files for Linux 2.6.32-5-powerpc-smp
 linux-headers-2.6.32-5-r4k-ip22 - Header files for Linux 2.6.32-5-r4k-ip22
 linux-headers-2.6.32-5-r5k-cobalt - Header files for Linux 2.6.32-5-r5k-cobalt
 linux-headers-2.6.32-5-r5k-ip32 - Header files for Linux 2.6.32-5-r5k-ip32
 linux-headers-2.6.32-5-s390x - Header files for Linux 2.6.32-5-s390x
 linux-headers-2.6.32-5-sb1a-bcm91480b - Header files for Linux 2.6.32-5-sb1a-bcm91480b
 linux-headers-2.6.32-5-sb1-bcm91250a - Header files for Linux 2.6.32-5-sb1-bcm91250a
 linux-headers-2.6.32-5-sh7751r - Header files for Linux 2.6.32-5-sh7751r
 linux-headers-2.6.32-5-sh7785lcr - Header files for Linux 2.6.32-5-sh7785lcr
 linux-headers-2.6.32-5-sparc64 - Header files for Linux 2.6.32-5-sparc64
 linux-headers-2.6.32-5-sparc64-smp - Header files for Linux 2.6.32-5-sparc64-smp
 linux-headers-2.6.32-5-versatile - Header files for Linux 2.6.32-5-versatile
 linux-headers-2.6.32-5-vserver-686-bigmem - Header files for Linux 2.6.32-5-vserver-686-bigmem
 linux-headers-2.6.32-5-vserver-686 - Header files for Linux 2.6.32-5-vserver-686
 linux-headers-2.6.32-5-vserver-amd64 - Header files for Linux 2.6.32-5-vserver-amd64
 linux-headers-2.6.32-5-vserver-itanium - Header files for Linux 2.6.32-5-vserver-itanium
 linux-headers-2.6.32-5-vserver-mckinley - Header files for Linux 2.6.32-5-vserver-mckinley
 linux-headers-2.6.32-5-vserver-powerpc64 - Header files for Linux 2.6.32-5-vserver-powerpc64
 linux-headers-2.6.32-5-vserver-powerpc - Header files for Linux 2.6.32-5-vserver-powerpc
 linux-headers-2.6.32-5-vserver-s390x - Header files for Linux 2.6.32-5-vserver-s390x
 linux-headers-2.6.32-5-vserver-sparc64 - Header files for Linux 2.6.32-5-vserver-sparc64
 linux-headers-2.6.32-5-xen-686 - Header files for Linux 2.6.32-5-xen-686
 linux-headers-2.6.32-5-xen-amd64 - Header files for Linux 2.6.32-5-xen-amd64
 linux-image-2.6.32-5-486 - Linux 2.6.32 for old PCs
 linux-image-2.6.32-5-4kc-malta - Linux 2.6.32 for MIPS Malta
 linux-image-2.6.32-5-5kc-malta - Linux 2.6.32 for MIPS Malta (64-bit)
 linux-image-2.6.32-5-686-bigmem-dbg - Debugging infos for Linux 2.6.32-5-686-bigmem
 linux-image-2.6.32-5-686-bigmem - Linux 2.6.32 for PCs with 4GB+ RAM
 linux-image-2.6.32-5-686 - Linux 2.6.32 for modern PCs
 linux-image-2.6.32-5-alpha-generic - Linux 2.6.32 for Alpha
 linux-image-2.6.32-5-alpha-legacy - Linux 2.6.32 for Alpha Legacy
 linux-image-2.6.32-5-alpha-smp - Linux 2.6.32 for Alpha SMP
 linux-image-2.6.32-5-amd64-dbg - Debugging infos for Linux 2.6.32-5-amd64
 linux-image-2.6.32-5-amd64 - Linux 2.6.32 for 64-bit PCs
 linux-image-2.6.32-5-amiga - Linux 2.6.32 for Amiga
 linux-image-2.6.32-5-atari - Linux 2.6.32 for Atari
 linux-image-2.6.32-5-bvme6000 - Linux 2.6.32 for BVM BVME4000 and BVME6000
 linux-image-2.6.32-5-iop32x - Linux 2.6.32 for IOP32x
 linux-image-2.6.32-5-itanium - Linux 2.6.32 for Itanium
 linux-image-2.6.32-5-ixp4xx - Linux 2.6.32 for IXP4xx
 linux-image-2.6.32-5-kirkwood - Linux 2.6.32 for Marvell Kirkwood
 linux-image-2.6.32-5-mac - Linux 2.6.32 for Macintosh
 linux-image-2.6.32-5-mckinley - Linux 2.6.32 for Itanium II
 linux-image-2.6.32-5-mvme147 - Linux 2.6.32 for Motorola MVME147
 linux-image-2.6.32-5-mvme16x - Linux 2.6.32 for Motorola MVME162/6/7, MVME172/7
 linux-image-2.6.32-5-openvz-686-dbg - Debugging infos for Linux 2.6.32-5-openvz-686
 linux-image-2.6.32-5-openvz-686 - Linux 2.6.32 for modern PCs, OpenVZ support
 linux-image-2.6.32-5-openvz-amd64-dbg - Debugging infos for Linux 2.6.32-5-openvz-amd64
 linux-image-2.6.32-5-openvz-amd64 - Linux 2.6.32 for 64-bit PCs, OpenVZ support
 linux-image-2.6.32-5-orion5x - Linux 2.6.32 for Marvell Orion
 linux-image-2.6.32-5-parisc64 - Linux 2.6.32 for 64-bit PA-RISC
 linux-image-2.6.32-5-parisc64-smp - Linux 2.6.32 for multiprocessor 64-bit PA-RISC
 linux-image-2.6.32-5-parisc - Linux 2.6.32 for 32-bit PA-RISC
 linux-image-2.6.32-5-parisc-smp - Linux 2.6.32 for multiprocessor 32-bit PA-RISC
 linux-image-2.6.32-5-powerpc64 - Linux 2.6.32 for 64-bit PowerPC
 linux-image-2.6.32-5-powerpc - Linux 2.6.32 for uniprocessor 32-bit PowerPC
 linux-image-2.6.32-5-powerpc-smp - Linux 2.6.32 for multiprocessor 32-bit PowerPC
 linux-image-2.6.32-5-r4k-ip22 - Linux 2.6.32 for SGI IP22
 linux-image-2.6.32-5-r5k-cobalt - Linux 2.6.32 for Cobalt
 linux-image-2.6.32-5-r5k-ip32 - Linux 2.6.32 for SGI IP32
 linux-image-2.6.32-5-s390x - Linux 2.6.32 for IBM zSeries
 linux-image-2.6.32-5-s390x-tape - Linux 2.6.32 for IBM zSeries, IPL from tape
 linux-image-2.6.32-5-sb1a-bcm91480b - Linux 2.6.32 for BCM91480B
 linux-image-2.6.32-5-sb1-bcm91250a - Linux 2.6.32 for BCM91250A
 linux-image-2.6.32-5-sh7751r - Linux 2.6.32 for sh7751r
 linux-image-2.6.32-5-sh7785lcr - Linux 2.6.32 for sh7785lcr
 linux-image-2.6.32-5-sparc64 - Linux 2.6.32 for uniprocessor 64-bit UltraSPARC
 linux-image-2.6.32-5-sparc64-smp - Linux 2.6.32 for multiprocessor 64-bit UltraSPARC
 linux-image-2.6.32-5-versatile - Linux 2.6.32 for Versatile
 linux-image-2.6.32-5-vserver-686-bigmem-dbg - Debugging infos for Linux 2.6.32-5-vserver-686-bigmem
 linux-image-2.6.32-5-vserver-686-bigmem - Linux 2.6.32 for PCs with 4GB+ RAM, Linux-VServer support
 linux-image-2.6.32-5-vserver-686 - Linux 2.6.32 for modern PCs, Linux-VServer support
 linux-image-2.6.32-5-vserver-amd64-dbg - Debugging infos for Linux 2.6.32-5-vserver-amd64
 linux-image-2.6.32-5-vserver-amd64 - Linux 2.6.32 for 64-bit PCs, Linux-VServer support
 linux-image-2.6.32-5-vserver-itanium - Linux 2.6.32 for Itanium, Linux-VServer support
 linux-image-2.6.32-5-vserver-mckinley - Linux 2.6.32 for Itanium II, Linux-VServer support
 linux-image-2.6.32-5-vserver-powerpc64 - Linux 2.6.32 for 64-bit PowerPC, Linux-VServer support
 linux-image-2.6.32-5-vserver-powerpc - Linux 2.6.32 for uniprocessor 32-bit PowerPC, Linux-VServer suppo
 linux-image-2.6.32-5-vserver-s390x - Linux 2.6.32 for IBM zSeries, Linux-VServer support
 linux-image-2.6.32-5-vserver-sparc64 - Linux 2.6.32 for uniprocessor 64-bit UltraSPARC, Linux-VServer su
 linux-image-2.6.32-5-xen-686-dbg - Debugging infos for Linux 2.6.32-5-xen-686
 linux-image-2.6.32-5-xen-686 - Linux 2.6.32 for modern PCs, Xen dom0 support
 linux-image-2.6.32-5-xen-amd64-dbg - Debugging infos for Linux 2.6.32-5-xen-amd64
 linux-image-2.6.32-5-xen-amd64 - Linux 2.6.32 for 64-bit PCs, Xen dom0 support
 linux-libc-dev - Linux support headers for userspace development
 linux-manual-2.6.32 - Linux kernel API manual pages for version 2.6.32
 linux-patch-debian-2.6.32 - Debian patches to version 2.6.32 of the Linux kernel
 linux-source-2.6.32 - Linux kernel source for version 2.6.32 with Debian patches
 linux-support-2.6.32-5 - Support files for Linux 2.6.32
 linux-tools-2.6.32 - Performance analysis tools for Linux 2.6.32
 xen-linux-system-2.6.32-5-xen-686 - Xen system with Linux 2.6.32 on modern PCs (meta-package)
 xen-linux-system-2.6.32-5-xen-amd64 - Xen system with Linux 2.6.32 on 64-bit PCs (meta-package)
Changes: 
 linux-2.6 (2.6.32-48) stable; urgency=low
 .
   * [s390] s390/time: fix sched_clock() overflow (Closes: #698382)
   * Revert "time: Avoid making adjustments if we haven't accumulated
     anything" (Closes: #699112, regression in 2.6.32.60)
   * exec: Fix accounting of execv*() memory after vfork() (Closes: #700486)
   * r8169: Fix bugs that can cause an interface to hang
     (possible fix for: #617220, #642025)
     - r8169: missing barriers.
     - r8169: fix unsigned int wraparound with TSO
     - r8169: remove the obsolete and incorrect AMD workaround
Checksums-Sha1: 
 e93fbe60ed384f00317bac627311c483cacbe9c6 14499 linux-2.6_2.6.32-48.dsc
 b86af2bbb4d533037fdfeb8d597cc58cd220dfa6 16375261 linux-2.6_2.6.32-48.diff.gz
 13d9fa57c43c57e3849c75a56c12da2574ca6933 6083852 linux-doc-2.6.32_2.6.32-48_all.deb
 70148992d07f75432a7f8692b9e11b5827675456 2745154 linux-manual-2.6.32_2.6.32-48_all.deb
 b9b3769d80d295b7a8b55b55a7c6b51b762a668c 10339944 linux-patch-debian-2.6.32_2.6.32-48_all.deb
 8ec86d92b764c14f539251becbfbda5eb3674227 65513014 linux-source-2.6.32_2.6.32-48_all.deb
 0b0d81a355869e207471cec6392f557070bc37ae 173070 linux-support-2.6.32-5_2.6.32-48_all.deb
 829c2c3ebb85eaa5d5effd0d7337045b2bb917fc 160752 firmware-linux-free_2.6.32-48_all.deb
 342524ee0a9aa2a9609d27e902c8c325160bf3d4 182754 linux-base_2.6.32-48_all.deb
Checksums-Sha256: 
 a3fd47ed6da9b6344db9d7b4d0685ae32b979f4021e0b91f22ade56760af177d 14499 linux-2.6_2.6.32-48.dsc
 74585fea135a3be996c5d82aebfed44c6e06ec670575efe63c63c0c192a690a8 16375261 linux-2.6_2.6.32-48.diff.gz
 ad39243e1a1f1e6a06b15ffac1a443375ba085992472bd770acbcb3d89923333 6083852 linux-doc-2.6.32_2.6.32-48_all.deb
 676d8f5e98889bb9a58f5d3d3cc0cbef8b7ce9f7abd7ca74a62aff05a2f771f5 2745154 linux-manual-2.6.32_2.6.32-48_all.deb
 8817dec5088d71ae5fb609d2c48704cf3e4ae0bd75f124911d186460359aff5b 10339944 linux-patch-debian-2.6.32_2.6.32-48_all.deb
 756d7795912e34004ac914774571b7a51622fdd981c7ebcb8216c5bb26d8f340 65513014 linux-source-2.6.32_2.6.32-48_all.deb
 434432a113e6856f26a362f88217fac0cd2cc4244abfda1d38b16906068f353f 173070 linux-support-2.6.32-5_2.6.32-48_all.deb
 a5edbeaa5170a057fe58440d1f43545254152501938bedc94882f6076822c05c 160752 firmware-linux-free_2.6.32-48_all.deb
 9243a5ac0835c0dfc0ea1d48c5e532e10218a3635fb4370d075cfd4a5ec47105 182754 linux-base_2.6.32-48_all.deb
Files: 
 1127bfa38e6b9fe2fc39decd3f418d62 14499 kernel optional linux-2.6_2.6.32-48.dsc
 e453d89cd11a7019f731db2ae6bd2c4c 16375261 kernel optional linux-2.6_2.6.32-48.diff.gz
 3e8770afb963b889b211f4a4102dfd21 6083852 doc optional linux-doc-2.6.32_2.6.32-48_all.deb
 f39e545e1871674a3ef8635655ad4bb3 2745154 doc optional linux-manual-2.6.32_2.6.32-48_all.deb
 25256fe7301ef1645d39e9a70fef3224 10339944 kernel optional linux-patch-debian-2.6.32_2.6.32-48_all.deb
 5e3e6eadf2d2eeba6ff9111e0a796c66 65513014 kernel optional linux-source-2.6.32_2.6.32-48_all.deb
 aa18eea630ae3eb40f173e249213f19e 173070 devel optional linux-support-2.6.32-5_2.6.32-48_all.deb
 cd5d43d059a3f655c36d6e194b4b23b2 160752 kernel optional firmware-linux-free_2.6.32-48_all.deb
 b4443550219b8d32bcc1b6b1bc0c36bf 182754 kernel optional linux-base_2.6.32-48_all.deb

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

iQIVAwUBUR2D8ue/yOyVhhEJAQp2QBAAhRQ2XPlpQWePhoQRzhgzmW5y+BcMmhh2
+JjgQCjJXbAvqFyvP83HYSwz3OD0qKAmdmB1C4wtDUZ0Qi08yhUgr0Zmzqejk/fo
Wnom0QQDJyWI0TgwdDHm1muYu74yx7kkIJXJNCfDQxQyMRKjuwExryr8+s7TJ4o4
QUAf2lWmU7AE2M73NFZ7TaJZiV59kxQTASqls5PYvHkbnCtHKAZ1yUdDHpg7h1NO
Si226+V9tQhcElEH7djN33RaENvPXXmsPQoI4FXqEHYRCO0oqn1f7tQypVkWOXbW
UNGhx0hryUZjXXJqCGy55XlldRDsyiiddJux5Scnc0GqBlD6x416TRfDU/6b1tBc
LxLC1F6FZZpKyqbyGoT13qakZLAyuCCsWylAhrW7HURIWsjM9/dHhHD8mIhc8LIq
wZsQI3yYkm5zt5bpD8jHTWQGmVU1JYQH3fN9qs53VHf2LdNcJr3yu/Zv8cYAvpFA
XX5QjmOfbZVLZUbkhWkUGf/F1ZGSJEltZOc7RzY1IJj+rq1O7Ulgfe3XfTNVtYfQ
qUlzfVfrehz1pffjeN3BvrmpNzhS8T/ZfDpO5jQnx5jK14M4ybGiOikx2UcpvjIE
Kr0sl6NEYXsSS2qtvcWzwAeltpS4xY9oWWj0KVIorHtCDVnHiMu5DdDKGP8eMeU7
5tc1tnFaBbQ=
=mMz2
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: