2.3.13-pre1 patches

Petr Vandrovec (vandrove@vc.cvut.cz)
Sun, 1 Aug 1999 17:17:26 +0200


--EVF5PPMfhYS0aIcm
Content-Type: text/plain; charset=us-ascii

Hi Linus, hi others,
I was left this week in the country with small 486SX/25 notebook
with 8MB of RAM and with sources of 2.3.11... (it takes about 4
hours to compile my config of 2.3.11 under 2.2.10). There was
couple of problems, of which these three are still unfixed in
2.3.11-pre1 (most amazing was (already fixed) missing cpu_init()
in SMP kernel without SMP hardware; next one was missing
page_unlock in vmscan - is there anybody who knows why it is
not possible to print stacktrace through sysrq key in standard
kernel?):

(1) in 2.3.11, there was missing cpu_init() in code path invoked
on SMP kernel without SMP hardware. This is now fixed, but
there is still missing
smp_num_cpus = 1;
in this codepath :-( Kernel works fine without this (:-)),
but libproc complains about inability to determine HZ and
top coredumps because of divide zero (divide by number
of cpus when computing utilization)
(2) because of compilation take 4 hrs on that hardware, and only
thing it did was Starting init... reboot..., I tried to build
minimal working kernel (with PF_UNIX, but without SYSCTL).
I found two sysctl symbols unconditionaly exported from
netsyms.c
(3) fs/ncpfs/dir.c is (still) missing NULL pointer test

Except that, 'optically' is 2.2.10 on that hardware much faster
than 2.3.11, but if I left it alone to recompile kernel,
compile time of same configuration take 4 hrs under 2.2.10, but
(less than) 3 hrs under 2.3.11. Excellent work.
Best regards,
Petr Vandrovec
vandrove@vc.cvut.cz

--EVF5PPMfhYS0aIcm
Content-Type: text/plain; charset=us-ascii
Content-Description: Missing smp_num_cpus from arch/i386/kernel/smp.c
Content-Disposition: attachment; filename=smp

diff -urdN linux/arch/i386/kernel/smp.c linux/arch/i386/kernel/smp.c
--- linux/arch/i386/kernel/smp.c Sun Aug 1 16:22:13 1999
+++ linux/arch/i386/kernel/smp.c Sun Aug 1 16:35:42 1999
@@ -1228,6 +1228,7 @@
io_apic_irqs = 0;
#endif
cpu_online_map = cpu_present_map;
+ smp_num_cpus = 1;
goto smp_done;
}

--EVF5PPMfhYS0aIcm
Content-Type: text/plain; charset=us-ascii
Content-Description: Missing ifdef CONFIG_SYSCTL from net/netsyms.c
Content-Disposition: attachment; filename=netsyms

diff -urdN linux/net/netsyms.c linux/net/netsyms.c
--- linux/net/netsyms.c Tue Jul 6 05:35:18 1999
+++ linux/net/netsyms.c Sun Aug 1 16:24:19 1999
@@ -46,8 +46,10 @@
#include <linux/igmp.h>

extern struct net_proto_family inet_family_ops;
+#ifdef CONFIG_SYSCTL
extern __u32 sysctl_wmem_max;
extern __u32 sysctl_rmem_max;
+#endif

#if defined(CONFIG_IPV6) || defined (CONFIG_IPV6_MODULE)
#include <linux/in6.h>
@@ -487,8 +489,10 @@
EXPORT_SYMBOL(unregister_hipdev);
#endif

+#ifdef CONFIG_SYSCTL
EXPORT_SYMBOL(sysctl_wmem_max);
EXPORT_SYMBOL(sysctl_rmem_max);
+#endif

#if defined(CONFIG_ATALK) || defined(CONFIG_ATALK_MODULE)
#include<linux/if_ltalk.h>

--EVF5PPMfhYS0aIcm
Content-Type: text/plain; charset=us-ascii
Content-Description: Missing NULL ptr check from fs/ncpfs/dir.c
Content-Disposition: attachment; filename=ncpfsdir

diff -urdN linux/fs/ncpfs/dir.c linux/fs/ncpfs/dir.c
--- linux/fs/ncpfs/dir.c Fri Jul 16 19:57:40 1999
+++ linux/fs/ncpfs/dir.c Sun Aug 1 16:24:18 1999
@@ -350,7 +350,7 @@
struct ncpfs_inode_info finfo;
__u8 __name[dentry->d_name.len + 1];

- if (!dir)
+ if (!dentry->d_inode || !dir)
return 0;

server = NCP_SERVER(dir);

--EVF5PPMfhYS0aIcm--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/