patch-2.4.0-test2 linux/include/linux/notifier.h

Next file: linux/include/linux/pci_ids.h
Previous file: linux/include/linux/nfsd/syscall.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test1/linux/include/linux/notifier.h linux/include/linux/notifier.h
@@ -21,62 +21,15 @@
 
 #ifdef __KERNEL__
 
+extern int notifier_chain_register(struct notifier_block **list, struct notifier_block *n);
+extern int notifier_chain_unregister(struct notifier_block **nl, struct notifier_block *n);
+extern int notifier_call_chain(struct notifier_block **n, unsigned long val, void *v);
+
 #define NOTIFY_DONE		0x0000		/* Don't care */
 #define NOTIFY_OK		0x0001		/* Suits me */
 #define NOTIFY_STOP_MASK	0x8000		/* Don't call further */
 #define NOTIFY_BAD		(NOTIFY_STOP_MASK|0x0002)	/* Bad/Veto action	*/
 
-extern __inline__ int notifier_chain_register(struct notifier_block **list, struct notifier_block *n)
-{
-	while(*list)
-	{
-		if(n->priority > (*list)->priority)
-			break;
-		list= &((*list)->next);
-	}
-	n->next = *list;
-	*list=n;
-	return 0;
-}
-
-/*
- *	Warning to any non GPL module writers out there.. these functions are
- *	GPL'd
- */
- 
-extern __inline__ int notifier_chain_unregister(struct notifier_block **nl, struct notifier_block *n)
-{
-	while((*nl)!=NULL)
-	{
-		if((*nl)==n)
-		{
-			*nl=n->next;
-			return 0;
-		}
-		nl=&((*nl)->next);
-	}
-	return -ENOENT;
-}
-
-/*
- *	This is one of these things that is generally shorter inline
- */
- 
-extern __inline__ int notifier_call_chain(struct notifier_block **n, unsigned long val, void *v)
-{
-	int ret=NOTIFY_DONE;
-	struct notifier_block *nb = *n;
-	while(nb)
-	{
-		ret=nb->notifier_call(nb,val,v);
-		if(ret&NOTIFY_STOP_MASK)
-			return ret;
-		nb=nb->next;
-	}
-	return ret;
-}
-
-
 /*
  *	Declared notifiers so far. I can imagine quite a few more chains
  *	over time (eg laptop power reset chains, reboot chain (to clean 
@@ -105,11 +58,5 @@
 #define SYS_HALT	0x0002	/* Notify of system halt */
 #define SYS_POWER_OFF	0x0003	/* Notify of system power off */
 
-/*
- *	Publically visible notifier objects
- */
- 
-extern struct notifier_block *boot_notifier_list;
- 
-#endif
-#endif
+#endif /* __KERNEL__ */
+#endif /* _LINUX_NOTIFIER_H */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)