Source-Changes-HG archive

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

[src/trunk]: src/sys/arch/i386/i386 Fix PR port-i386/57000 (boot failure on q...



details:   https://anonhg.NetBSD.org/src/rev/61fcafd1ac11
branches:  trunk
changeset: 369926:61fcafd1ac11
user:      knakahara <knakahara%NetBSD.org@localhost>
date:      Thu Sep 08 06:57:44 2022 +0000

description:
Fix PR port-i386/57000 (boot failure on qemu).

diffstat:

 sys/arch/i386/i386/lock_stubs.S |  10 +++++-----
 sys/arch/i386/i386/spl.S        |  10 +++++-----
 2 files changed, 10 insertions(+), 10 deletions(-)

diffs (81 lines):

diff -r 8d1dcd30a986 -r 61fcafd1ac11 sys/arch/i386/i386/lock_stubs.S
--- a/sys/arch/i386/i386/lock_stubs.S   Thu Sep 08 05:52:56 2022 +0000
+++ b/sys/arch/i386/i386/lock_stubs.S   Thu Sep 08 06:57:44 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: lock_stubs.S,v 1.37 2022/09/07 00:40:18 knakahara Exp $        */
+/*     $NetBSD: lock_stubs.S,v 1.38 2022/09/08 06:57:44 knakahara Exp $        */
 
 /*-
  * Copyright (c) 2006, 2007, 2008, 2009 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <machine/asm.h>
-__KERNEL_RCSID(0, "$NetBSD: lock_stubs.S,v 1.37 2022/09/07 00:40:18 knakahara Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lock_stubs.S,v 1.38 2022/09/08 06:57:44 knakahara Exp $");
 
 #include "opt_lockdebug.h"
 
@@ -255,10 +255,10 @@
 
 #ifndef XENPV
 /*
- * Release a spin mutex and post a store fence. Must occupy 96 bytes.
+ * Release a spin mutex and post a store fence. Must occupy 128 bytes.
  */
 ENTRY(mutex_spin_exit)
-       HOTPATCH(HP_NAME_MUTEX_EXIT, 96)
+       HOTPATCH(HP_NAME_MUTEX_EXIT, 128)
        movl    4(%esp), %edx
        movl    CPUVAR(MTX_OLDSPL), %ecx
        incl    CPUVAR(MTX_COUNT)
@@ -284,7 +284,7 @@
 
 /*
  * Patch for i686 CPUs where cli/sti is prohibitively expensive.
- * Must be the same size as mutex_spin_exit(), that is, 96 bytes.
+ * Must be the same size as mutex_spin_exit(), that is, 128 bytes.
  */
 ENTRY(i686_mutex_spin_exit)
        mov     4(%esp),%edx
diff -r 8d1dcd30a986 -r 61fcafd1ac11 sys/arch/i386/i386/spl.S
--- a/sys/arch/i386/i386/spl.S  Thu Sep 08 05:52:56 2022 +0000
+++ b/sys/arch/i386/i386/spl.S  Thu Sep 08 06:57:44 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: spl.S,v 1.56 2022/09/07 00:40:18 knakahara Exp $       */
+/*     $NetBSD: spl.S,v 1.57 2022/09/08 06:57:44 knakahara Exp $       */
 
 /*
  * Copyright (c) 1998, 2007, 2008, 2020 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <machine/asm.h>
-__KERNEL_RCSID(0, "$NetBSD: spl.S,v 1.56 2022/09/07 00:40:18 knakahara Exp $");
+__KERNEL_RCSID(0, "$NetBSD: spl.S,v 1.57 2022/09/08 06:57:44 knakahara Exp $");
 
 #include "opt_ddb.h"
 #include "opt_spldebug.h"
@@ -72,11 +72,11 @@
  * void spllower(int s);
  *
  * spllower() for i486 and Pentium. Must be the same size as cx8_spllower(),
- * that is, 64 bytes. This must use pushf/cli/popf as it is used early in boot
+ * that is, 96 bytes. This must use pushf/cli/popf as it is used early in boot
  * where interrupts are disabled via eflags/IE.
  */
 ENTRY(spllower)
-       HOTPATCH(HP_NAME_SPLLOWER, 64)
+       HOTPATCH(HP_NAME_SPLLOWER, 96)
 #ifdef SPLDEBUG
        movl    4(%esp),%ecx
        pushl   %ebp
@@ -115,7 +115,7 @@
  *
  * spllower() optimized for Pentium Pro and later, which have long pipelines
  * that will be stalled by pushf/cli/popf.  Must be the same size as
- * spllower(), ie 64 bytes.  Does not need to restore eflags/IE as is patched
+ * spllower(), ie 96 bytes.  Does not need to restore eflags/IE as is patched
  * in once autoconf is underway.
  *
  * For cmpxchg8b, edx/ecx are the high words and eax/ebx the low.



Home | Main Index | Thread Index | Old Index