[kernel] r21736 - in dists/trunk/linux: . debian debian/bin debian/patches debian/patches/bugfix/mips debian/templates/po

Ben Hutchings benh at moszumanska.debian.org
Sun Aug 24 00:45:55 UTC 2014


Author: benh
Date: Sun Aug 24 00:45:55 2014
New Revision: 21736

Log:
Merge pending changes from sid

Added:
   dists/trunk/linux/debian/patches/bugfix/mips/MIPS-Remove-BUG_ON-is_fpu_owner-in-do_ade.patch
      - copied unchanged from r21735, dists/sid/linux/debian/patches/bugfix/mips/MIPS-Remove-BUG_ON-is_fpu_owner-in-do_ade.patch
Modified:
   dists/trunk/linux/   (props changed)
   dists/trunk/linux/debian/bin/stable-update.sh
   dists/trunk/linux/debian/changelog
   dists/trunk/linux/debian/patches/series
   dists/trunk/linux/debian/templates/po/es.po

Modified: dists/trunk/linux/debian/bin/stable-update.sh
==============================================================================
--- dists/trunk/linux/debian/bin/stable-update.sh	Fri Aug 22 17:43:29 2014	(r21735)
+++ dists/trunk/linux/debian/bin/stable-update.sh	Sun Aug 24 00:45:55 2014	(r21736)
@@ -51,8 +51,8 @@
 fi
 
 case "$cur_pkg_ver" in
-    *~experimental*)
-	new_pkg_ver="$new_ver-1~experimental.1"
+    *~exp*)
+	new_pkg_ver="$new_ver-1~exp1"
 	;;
     *)
 	new_pkg_ver="$new_ver-1"

Modified: dists/trunk/linux/debian/changelog
==============================================================================
--- dists/trunk/linux/debian/changelog	Fri Aug 22 17:43:29 2014	(r21735)
+++ dists/trunk/linux/debian/changelog	Sun Aug 24 00:45:55 2014	(r21736)
@@ -9,6 +9,11 @@
   [ Vagrant Cascadian ]
   * [armmp] Enable IMX_IPUV3_CORE (closes: #756810).
 
+  [ Aurelien Jarno ]
+  * [mips*] Fix FP emulation for unaligned accesses.
+  * Update Spanish debconf template translations (Matias A. Bellone)
+    (Closes: #758591).
+
  -- Ben Hutchings <ben at decadent.org.uk>  Tue, 12 Aug 2014 02:58:45 +0100
 
 linux (3.16-1~exp1) experimental; urgency=medium

Copied: dists/trunk/linux/debian/patches/bugfix/mips/MIPS-Remove-BUG_ON-is_fpu_owner-in-do_ade.patch (from r21735, dists/sid/linux/debian/patches/bugfix/mips/MIPS-Remove-BUG_ON-is_fpu_owner-in-do_ade.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/bugfix/mips/MIPS-Remove-BUG_ON-is_fpu_owner-in-do_ade.patch	Sun Aug 24 00:45:55 2014	(r21736, copy of r21735, dists/sid/linux/debian/patches/bugfix/mips/MIPS-Remove-BUG_ON-is_fpu_owner-in-do_ade.patch)
@@ -0,0 +1,63 @@
+From: Huacai Chen <chenhc at lemote.com>
+Date: Wed, 16 Jul 2014 09:19:16 +0800
+Subject: MIPS: Remove BUG_ON(!is_fpu_owner()) in do_ade()
+Origin: https://git.kernel.org/linus/2e5767a27337812f6850b3fa362419e2f085e5c3
+
+In do_ade(), is_fpu_owner() isn't preempt-safe. For example, when an
+unaligned ldc1 is executed, do_cpu() is called and then FPU will be
+enabled (and TIF_USEDFPU will be set for the current process). Then,
+do_ade() is called because the access is unaligned.  If the current
+process is preempted at this time, TIF_USEDFPU will be cleard.  So when
+the process is scheduled again, BUG_ON(!is_fpu_owner()) is triggered.
+
+This small program can trigger this BUG in a preemptible kernel:
+
+int main (int argc, char *argv[])
+{
+        double u64[2];
+
+        while (1) {
+                asm volatile (
+                        ".set push \n\t"
+                        ".set noreorder \n\t"
+                        "ldc1 $f3, 4(%0) \n\t"
+                        ".set pop \n\t"
+                        ::"r"(u64):
+                );
+        }
+
+        return 0;
+}
+
+V2: Remove the BUG_ON() unconditionally due to Paul's suggestion.
+
+Signed-off-by: Huacai Chen <chenhc at lemote.com>
+Signed-off-by: Jie Chen <chenj at lemote.com>
+Signed-off-by: Rui Wang <wangr at lemote.com>
+Cc: <stable at vger.kernel.org>
+Cc: John Crispin <john at phrozen.org>
+Cc: Steven J. Hill <Steven.Hill at imgtec.com>
+Cc: linux-mips at linux-mips.org
+Cc: Fuxin Zhang <zhangfx at lemote.com>
+Cc: Zhangjin Wu <wuzhangjin at gmail.com>
+Cc: stable at vger.kernel.org
+Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
+---
+ arch/mips/kernel/unaligned.c |    1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/arch/mips/kernel/unaligned.c b/arch/mips/kernel/unaligned.c
+index 2b35172..e11906d 100644
+--- a/arch/mips/kernel/unaligned.c
++++ b/arch/mips/kernel/unaligned.c
+@@ -690,7 +690,6 @@ static void emulate_load_store_insn(struct pt_regs *regs,
+ 	case sdc1_op:
+ 		die_if_kernel("Unaligned FP access in kernel code", regs);
+ 		BUG_ON(!used_math());
+-		BUG_ON(!is_fpu_owner());
+ 
+ 		lose_fpu(1);	/* Save FPU state for the emulator. */
+ 		res = fpu_emulator_cop1Handler(regs, &current->thread.fpu, 1,
+-- 
+1.7.10.4
+

Modified: dists/trunk/linux/debian/patches/series
==============================================================================
--- dists/trunk/linux/debian/patches/series	Fri Aug 22 17:43:29 2014	(r21735)
+++ dists/trunk/linux/debian/patches/series	Sun Aug 24 00:45:55 2014	(r21736)
@@ -59,6 +59,7 @@
 bugfix/mips/MIPS-O32-32-bit-Fix-bug-which-can-cause-incorrect-sy.patch
 bugfix/mips/MIPS-tlbex-fix-a-missing-statement-for-HUGETLB.patch
 bugfix/mips/MIPS-prevent-user-from-setting-FCSR-cause-bits.patch
+bugfix/mips/MIPS-Remove-BUG_ON-is_fpu_owner-in-do_ade.patch
 
 # Miscellaneous bug fixes
 bugfix/all/misc-bmp085-Enable-building-as-a-module.patch

Modified: dists/trunk/linux/debian/templates/po/es.po
==============================================================================
--- dists/trunk/linux/debian/templates/po/es.po	Fri Aug 22 17:43:29 2014	(r21735)
+++ dists/trunk/linux/debian/templates/po/es.po	Sun Aug 24 00:45:55 2014	(r21736)
@@ -3,10 +3,11 @@
 #
 #   Changes:
 #    - Initial translation
-#    Omar Campagne <ocampagne at gmail.com> 2010, 2011
+#       Omar Campagne <ocampagne at gmail.com> 2010, 2011
 #   
 #    - Review and update
-#    Javier Fernandez-Sanguino, December 2010
+#       Javier Fernandez-Sanguino, December 2010
+#       Matías Bellone <matiasbellone+debian at gmail.com>, 2014
 #
 # Traductores, si no conocen el formato PO, merece la pena leer la
 # documentación de gettext, especialmente las secciones dedicadas a este
@@ -31,19 +32,14 @@
 "Project-Id-Version: linux-2.6 2.6.32+5\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2014-07-20 22:37+0200\n"
-"PO-Revision-Date: 2011-07-16 17:59+0200\n"
-"Last-Translator: Omar Campagne <ocampagne at gmail.com>\n"
+"PO-Revision-Date: 2014-07-24 17:59-0300\n"
+"Last-Translator: Matías Bellone <matiasbellone+debian at gmail.com>\n"
 "Language-Team: Debian l10n Spanish <debian-l10n-spanish at lists.debian.org>\n"
 "Language: es\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Virtaal 0.6.1\n"
-"X-POFile-SpellExtra: initrd postinsthook conf lib contrib yes IDE depmod\n"
-"X-POFile-SpellExtra: runningversion img script boot Free exitvalue version\n"
-"X-POFile-SpellExtra: Debian CORE free running dobootloader UUID dep SIGNAL\n"
-"X-POFile-SpellExtra: Guidelines modulesbase vmlinuz postinst\n"
 
 #. Type: boolean
 #. Description
@@ -113,7 +109,7 @@
 msgstr ""
 "Puede que el sistema no pueda arrancar posteriormente, ya que eliminaría «/"
 "boot/vmlinuz-${running}» y todos los módulos en el directorio «/lib/modules/"
-"${running}». Esto sólo se puede arreglar esto con una copia de la imagen del "
+"${running}». Esto sólo se puede arreglar con una copia de la imagen del "
 "núcleo y los correspondientes módulos."
 
 #. Type: boolean
@@ -131,6 +127,8 @@
 #: ../image.plain.templates.in:4001
 msgid "Boot loader configuration must be updated to load initramfs"
 msgstr ""
+"Se debe actualizar la configuración del gestor de arranque para cargar "
+"la imagen initramfs"
 
 #. Type: note
 #. Description
@@ -142,6 +140,11 @@
 "flexible boot process, and future kernel versions may require a "
 "corresponding initrd.img to boot."
 msgstr ""
+"Además del núcleo en sí, este paquete generará un fichero «initramfs» "
+"(«/boot/initrd.img- at abiname@@localversion@») para que utilice el gestor de "
+"arranque del sistema. Este método, que no era compatible con MIPS, permite "
+"un arranque más flexible y futuras versiones del núcleo podrían requerir "
+"un fichero «initrd.img» correspondiente para iniciar."
 
 #. Type: note
 #. Description
@@ -153,3 +156,8 @@
 "accomplished by using the initrd.img symbolic link maintained by the kernel "
 "package."
 msgstr ""
+"El núcleo que está ejecutando actualmente inició sin un fichero «initramfs». "
+"Debería reconfigurar el gestor de arranque para cargar el fichero "
+"«initramfs» de la versión de Linux @abiname@ y las versiones posteriores. "
+"Probablemente, la forma más sencilla de conseguirlo es utilizar el enlace "
+"simbólico «initrd.img» provisto por el paquete del núcleo."



More information about the Kernel-svn-changes mailing list