2.1.36, more patches to fix things, and a few old ones

tz@execpc.com
Thu, 24 Apr 1997 23:25:00 -0400


The first is because some modules need synchronize_irq, and nfsd as
module uses inline asms with kernel_flag and active_kernel_processor,
and these are defined without the modversion appendage.

The second is an old syntax error. ltalk_setup also needs to be
exported from somewhere in the net directory for ltpc.o to work as a
module. gcc complains and stops the whole build because the semicolon
is missing. This is in the cleanup_module section, so only appears
when ltpc is compiled as a module.

The third fixes a problem with depmod (I haven't tried the 2.1.34
modutils yet). The structure is used in a different object file, so
depmod thinks msdos.o depends on msdos.o, so modproble fails, though
insmod will load it. Because msdos_fs_type is used in another object,
it should NOT be declared static. It appears in msdosfs_syms.c, but
also is used in an unregister in namei.c This only happens when msdos
is compiled as a module.

diff -Bbur c2136/arch/i386/kernel/i386_ksyms.c l2136/arch/i386/kernel/i386_ksyms.c
--- c2136/arch/i386/kernel/i386_ksyms.c Wed Apr 16 19:04:15 1997
+++ l2136/arch/i386/kernel/i386_ksyms.c Thu Apr 24 18:40:03 1997
@@ -36,11 +36,13 @@
/* Networking helper routines. */
EXPORT_SYMBOL(csum_partial_copy);

+EXPORT_SYMBOL(synchronize_irq);
+
#ifdef __SMP__
EXPORT_SYMBOL(apic_reg); /* Needed internally for the I386 inlines */
EXPORT_SYMBOL(cpu_data);
-EXPORT_SYMBOL(kernel_flag);
-EXPORT_SYMBOL(active_kernel_processor);
+EXPORT_SYMBOL_NOVERS(kernel_flag);
+EXPORT_SYMBOL_NOVERS(active_kernel_processor);
EXPORT_SYMBOL(smp_invalidate_needed);
EXPORT_SYMBOL_NOVERS(__lock_kernel);

diff -Bbur c2136/drivers/net/ltpc.c l2136/drivers/net/ltpc.c
--- c2136/drivers/net/ltpc.c Wed Apr 23 01:42:49 1997
+++ l2136/drivers/net/ltpc.c Thu Apr 24 17:27:45 1997
@@ -1259,7 +1259,7 @@
if(debug&DEBUG_VERBOSE) printk("waiting\n");
/* if it's in process, wait a bit for it to finish */
timeout = jiffies+HZ;
- add_timer(&ltpc_timer)
+ add_timer(&ltpc_timer);
while(del_timer(&ltpc_timer) && (timeout > jiffies))
{
add_timer(&ltpc_timer);
diff -Bbur c2136/fs/msdos/msdosfs_syms.c l2136/fs/msdos/msdosfs_syms.c
--- c2136/fs/msdos/msdosfs_syms.c Thu Apr 17 16:20:48 1997
+++ l2136/fs/msdos/msdosfs_syms.c Thu Apr 24 17:27:53 1997
@@ -30,7 +30,7 @@
EXPORT_SYMBOL(msdos_put_super);


-static struct file_system_type msdos_fs_type = {
+struct file_system_type msdos_fs_type = {
msdos_read_super, "msdos", 1, NULL
};