Re: 2.4.0-test7-pre2 boot failure

From: Russell King (rmk@arm.linux.org.uk)
Date: Sat Aug 12 2000 - 18:38:08 EST


ADAM Sulmicki writes:
> this message is repeated ad-inifintum. forcing pressing reset button.
> doing s/printk/panic/ and recompile shows that the last things shown
> before this is:

Please test the following patch - it should fix this problem. Let
me know if it does.

diff -urN linux-orig/net/irda/af_irda.c linux/net/irda/af_irda.c
--- linux-orig/net/irda/af_irda.c Thu Apr 27 20:51:43 2000
+++ linux/net/irda/af_irda.c Sat Jul 29 17:10:37 2000
@@ -2157,14 +2157,14 @@
  */
 void __init irda_proto_init(struct net_proto *pro)
 {
+ MESSAGE("IrDA (tm) Protocols for Linux-2.3 (Dag Brattli)\n");
+
         sock_register(&irda_family_ops);
 
         irda_packet_type.type = htons(ETH_P_IRDA);
- dev_add_pack(&irda_packet_type);
+ dev_add_pack(&irda_packet_type);
 
         register_netdevice_notifier(&irda_dev_notifier);
-
- irda_init();
 }
 
 /*
@@ -2173,17 +2173,12 @@
  * Remove IrDA protocol layer
  *
  */
-#ifdef MODULE
-void irda_proto_cleanup(void)
+void __exit irda_proto_cleanup(void)
 {
         irda_packet_type.type = htons(ETH_P_IRDA);
- dev_remove_pack(&irda_packet_type);
+ dev_remove_pack(&irda_packet_type);
+
+ unregister_netdevice_notifier(&irda_dev_notifier);
 
- unregister_netdevice_notifier(&irda_dev_notifier);
-
         sock_unregister(PF_IRDA);
- irda_cleanup();
-
- return;
 }
-#endif /* MODULE */
diff -urN linux-orig/net/irda/irmod.c linux/net/irda/irmod.c
--- linux-orig/net/irda/irmod.c Sat Jul 15 00:10:40 2000
+++ linux/net/irda/irmod.c Sat Jul 29 17:11:05 2000
@@ -206,10 +206,11 @@
 EXPORT_SYMBOL(irtty_set_packet_mode);
 #endif
 
-int __init irda_init(void)
+static int __init irda_init(void)
 {
- MESSAGE("IrDA (tm) Protocols for Linux-2.3 (Dag Brattli)\n");
-
+#ifdef MODULE
+ irda_proto_init(NULL); /* Called by net/socket.c when non-modular */
+#endif
          irlmp_init();
         irlap_init();
         
@@ -256,9 +257,10 @@
         return 0;
 }
 
-#ifdef MODULE
-void irda_cleanup(void)
+static void __exit irda_cleanup(void)
 {
+ irda_proto_cleanup();
+
         misc_deregister(&irda.dev);
 
 #ifdef CONFIG_SYSCTL
@@ -279,7 +281,6 @@
         /* Remove middle layer */
         irlmp_cleanup();
 }
-#endif /* MODULE */
 
 /*
  * Function irda_unlock (lock)
@@ -540,33 +541,9 @@
 #endif /* MODULE */
 }
 
-#ifdef MODULE
-
 MODULE_AUTHOR("Dag Brattli <dagb@cs.uit.no>");
 MODULE_DESCRIPTION("The Linux IrDA Protocol Subsystem");
 MODULE_PARM(irda_debug, "1l");
 
-/*
- * Function init_module (void)
- *
- * Initialize the irda module
- *
- */
-int init_module(void)
-{
- irda_proto_init(NULL);
-
- return 0;
-}
-
-/*
- * Function cleanup_module (void)
- *
- * Cleanup the irda module
- *
- */
-void cleanup_module(void)
-{
- irda_proto_cleanup();
-}
-#endif /* MODULE */
+module_init(irda_init);
+module_exit(irda_cleanup);

   _____
  |_____| ------------------------------------------------- ---+---+-
  | | Russell King rmk@arm.linux.org.uk --- ---
  | | | | http://www.arm.linux.org.uk/personal/aboutme.html / / |
  | +-+-+ --- -+-
  / | THE developer of ARM Linux |+| /|\
 / | | | --- |
    +-+-+ ------------------------------------------------- /\\\ |

-
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/



This archive was generated by hypermail 2b29 : Tue Aug 15 2000 - 21:00:28 EST