From: "J.A. Magallon" <jamagallon@able.es>
To: Marcelo Tosatti <marcelo@conectiva.com.br>
Cc: lkml <linux-kernel@vger.kernel.org>
Subject: Re: Linux 2.4.19-pre9
Date: Thu, 30 May 2002 01:25:25 +0200 [thread overview]
Message-ID: <20020529232525.GE3174@werewolf.able.es> (raw)
In-Reply-To: <Pine.LNX.4.21.0205281905260.7798-100000@freak.distro.conectiva>
On 2002.05.29 Marcelo Tosatti wrote:
>
>So here goes the last -pre.
>
I still have some small fixes collected from the list, that if really
needed should be included in final...
Can anybody say if they still are valid (they apply fine on -pre9):
********************** 01-fs-pagemap:
--- linux-2.4.19-pre7-jam1/fs/partitions/check.h.orig 2002-04-16 17:22:33.000000000 +0200
+++ linux-2.4.19-pre7-jam1/fs/partitions/check.h 2002-04-16 17:23:08.000000000 +0200
@@ -2,6 +2,9 @@
* add_partition adds a partitions details to the devices partition
* description.
*/
+
+#include <linux/pagemap.h>
+
void add_gd_partition(struct gendisk *hd, int minor, int start, int size);
typedef struct {struct page *v;} Sector;
********************** 02-sock-rmem:
--- linux/net/core/sock.c.orig Fri Dec 21 09:42:05 2001
+++ linux/net/core/sock.c Mon May 20 17:35:43 2002
@@ -627,7 +627,7 @@
sysctl_wmem_max = 32767;
sysctl_rmem_max = 32767;
sysctl_wmem_default = 32767;
- sysctl_wmem_default = 32767;
+ sysctl_rmem_default = 32767;
} else if (num_physpages >= 131072) {
sysctl_wmem_max = 131071;
sysctl_rmem_max = 131071;
********************** 05-exit-reaper-race:
--- linux-2.5.15-orig/kernel/exit.c Thu May 9 17:23:28 2002
+++ linux-2.5.15-reparent/kernel/exit.c Fri May 10 13:35:50 2002
@@ -152,7 +152,7 @@
/*
* When we die, we re-parent all our children.
- * Try to give them to another thread in our process
+ * Try to give them to another thread in our thread
* group, and if no such member exists, give it to
* the global child reaper process (ie "init")
*/
@@ -162,8 +162,14 @@
read_lock(&tasklist_lock);
- /* Next in our thread group */
- reaper = next_thread(father);
+ /* Next in our thread group, if they're not already exiting */
+ reaper = father;
+ do {
+ reaper = next_thread(reaper);
+ if (!(reaper->flags & PF_EXITING))
+ break;
+ } while (reaper != father);
+
if (reaper == father)
reaper = child_reaper;
********************** 04-mmx-init:
diff -urN 2.4.19pre7/arch/i386/kernel/i387.c mmx/arch/i386/kernel/i387.c
--- 2.4.19pre7/arch/i386/kernel/i387.c Sun Apr 1 01:17:07 2001
+++ mmx/arch/i386/kernel/i387.c Fri Apr 26 10:56:02 2002
@@ -10,6 +10,7 @@
#include <linux/config.h>
#include <linux/sched.h>
+#include <linux/init.h>
#include <asm/processor.h>
#include <asm/i387.h>
#include <asm/math_emu.h>
@@ -24,6 +25,29 @@
#define HAVE_HWFP 1
#endif
+static union i387_union empty_fpu_state;
+
+void __init boot_init_fpu(void)
+{
+ memset(&empty_fpu_state, 0, sizeof(union i387_union));
+
+ if (!cpu_has_fxsr) {
+ empty_fpu_state.fsave.cwd = 0xffff037f;
+ empty_fpu_state.fsave.swd = 0xffff0000;
+ empty_fpu_state.fsave.twd = 0xffffffff;
+ empty_fpu_state.fsave.fos = 0xffff0000;
+ } else {
+ empty_fpu_state.fxsave.cwd = 0x37f;
+ if (cpu_has_xmm)
+ empty_fpu_state.fxsave.mxcsr = 0x1f80;
+ }
+}
+
+void load_empty_fpu(struct task_struct * tsk)
+{
+ memcpy(&tsk->thread.i387, &empty_fpu_state, sizeof(union i387_union));
+}
+
/*
* The _current_ task is using the FPU for the first time
* so initialize it and set the mxcsr to its default
@@ -32,10 +56,10 @@
*/
void init_fpu(void)
{
- __asm__("fninit");
- if ( cpu_has_xmm )
- load_mxcsr(0x1f80);
-
+ if (cpu_has_fxsr)
+ asm volatile("fxrstor %0" : : "m" (empty_fpu_state.fxsave));
+ else
+ __asm__("fninit");
current->used_math = 1;
}
diff -urN 2.4.19pre7/arch/i386/kernel/ptrace.c mmx/arch/i386/kernel/ptrace.c
--- 2.4.19pre7/arch/i386/kernel/ptrace.c Tue Jan 22 18:55:43 2002
+++ mmx/arch/i386/kernel/ptrace.c Fri Apr 26 10:56:02 2002
@@ -369,12 +369,8 @@
break;
}
ret = 0;
- if ( !child->used_math ) {
- /* Simulate an empty FPU. */
- set_fpu_cwd(child, 0x037f);
- set_fpu_swd(child, 0x0000);
- set_fpu_twd(child, 0xffff);
- }
+ if ( !child->used_math )
+ load_empty_fpu(child);
get_fpregs((struct user_i387_struct *)data, child);
break;
}
@@ -397,13 +393,8 @@
ret = -EIO;
break;
}
- if ( !child->used_math ) {
- /* Simulate an empty FPU. */
- set_fpu_cwd(child, 0x037f);
- set_fpu_swd(child, 0x0000);
- set_fpu_twd(child, 0xffff);
- set_fpu_mxcsr(child, 0x1f80);
- }
+ if ( !child->used_math )
+ load_empty_fpu(child);
ret = get_fpxregs((struct user_fxsr_struct *)data, child);
break;
}
diff -urN 2.4.19pre7/include/asm-i386/bugs.h mmx/include/asm-i386/bugs.h
--- 2.4.19pre7/include/asm-i386/bugs.h Fri Apr 26 10:36:12 2002
+++ mmx/include/asm-i386/bugs.h Fri Apr 26 10:56:52 2002
@@ -204,7 +204,10 @@
static void __init check_bugs(void)
{
+ extern void __init boot_init_fpu(void);
+
identify_cpu(&boot_cpu_data);
+ boot_init_fpu();
#ifndef CONFIG_SMP
printk("CPU: ");
print_cpu_info(&boot_cpu_data);
diff -urN 2.4.19pre7/include/asm-i386/i387.h mmx/include/asm-i386/i387.h
--- 2.4.19pre7/include/asm-i386/i387.h Sat Apr 20 09:43:17 2002
+++ mmx/include/asm-i386/i387.h Fri Apr 26 10:56:02 2002
@@ -76,6 +76,7 @@
struct task_struct *tsk );
extern int set_fpxregs( struct task_struct *tsk,
struct user_fxsr_struct *buf );
+extern void load_empty_fpu(struct task_struct *);
/*
* FPU state for core dumps...
********************** 06-p4-xeon:
diff -urN 2.4.19pre7ac2/arch/i386/kernel/mpparse.c 2.4.19pre7ac3/arch/i386/kernel/mpparse.c
--- 2.4.19pre7ac2/arch/i386/kernel/mpparse.c Sat Apr 20 04:07:21 2002
+++ 2.4.19pre7ac3/arch/i386/kernel/mpparse.c Mon Apr 29 14:07:46 2002
@@ -115,6 +115,8 @@
case 0x0F:
if (model == 0x00)
return("Pentium 4(tm)");
+ if (model == 0x02)
+ return("Pentium 4(tm) XEON(tm)");
if (model == 0x0F)
return("Special controller");
}
********************** 07-scsi-eh-zombie:
diff -Bbu /src/linux/drivers/scsi/scsi_error.c.orig /src/linux/drivers/scsi/scsi_error.c
--- linux/drivers/scsi/scsi_error.c.orig Sun Sep 9 17:52:35 2001
+++ linux/drivers/scsi/scsi_error.c Wed May 29 22:41:32 2002
@@ -1868,6 +1868,7 @@
*/
daemonize();
+ reparent_to_init();
/*
* Set the name of this process.
--
J.A. Magallon # Let the source be with you...
mailto:jamagallon@able.es
Mandrake Linux release 8.3 (Cooker) for i586
Linux werewolf 2.4.19-pre9-jam1 #1 SMP mié may 29 02:20:48 CEST 2002 i686
next prev parent reply other threads:[~2002-05-29 23:25 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-05-28 22:06 Linux 2.4.19-pre9 Marcelo Tosatti
2002-05-29 5:37 ` Lars Marowsky-Bree
2002-05-29 6:06 ` Greg KH
2002-05-29 12:50 ` Linux 2.4.19-pre9, still USB freeze Stephan von Krawczynski
2002-05-29 13:55 ` Peter Wächtler
2002-05-29 13:58 ` Stephan von Krawczynski
2002-05-29 14:08 ` Peter Wächtler
2002-05-29 17:14 ` Greg KH
2002-06-04 18:24 ` Bill Davidsen
2002-05-30 0:34 ` Linux 2.4.19-pre9 Marcelo Tosatti
2002-05-30 1:23 ` David S. Miller
2002-05-30 1:02 ` Marcelo Tosatti
2002-06-04 18:35 ` Bill Davidsen
2002-05-29 12:02 ` lk-changelog.pl (new version 0.21) vs. Linux 2.4.19-pre9 ChangeLog Matthias Andree
2002-05-29 12:10 ` Linux 2.4.19-pre9 ChangeLog Summary Matthias Andree
2002-05-29 23:25 ` J.A. Magallon [this message]
2002-05-30 9:35 ` Linux 2.4.19-pre9 Meelis Roos
2002-06-01 18:47 ` /proc/slab garbage Tom Vier
2002-06-01 19:02 ` Benjamin LaHaise
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020529232525.GE3174@werewolf.able.es \
--to=jamagallon@able.es \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo@conectiva.com.br \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.