static void __exit my_exit (void)
{
    kthread_stop (tsk);
    my_generic_exit ();
    printk (KERN_INFO "Final statistics:   catchup = %d\n",
            atomic_read (&catchup));
}
Beispiel #2
0
static void __exit my_exit (void)
{
    /* wait for all timers to finish ; pretty crummy */
    printk (KERN_INFO "ntimers in remove routine to %d\n",
            atomic_read (&ntimers));
    while (atomic_read (&ntimers)) {
        printk (KERN_INFO "sleeping, ntimers still %d\n",
                atomic_read (&ntimers));
        msleep (1000);          /* wait a second, ugly */
    }
    my_generic_exit ();
}
Beispiel #3
0
static void __exit my_exit(void)
{
	/* delete any running timers */
	pr_info("Deleted time,r rc = %d\n", del_timer_sync(&my_timer));
	my_generic_exit();
}
Beispiel #4
0
static void __exit my_exit(void)
{
	my_generic_exit();
	pr_info("Final statistics:   catchup = %d\n", atomic_read(&catchup));
}
Beispiel #5
0
static void __exit my_exit (void)
{
    kthread_stop (tsk);
    my_generic_exit ();
}
static void __exit my_exit(void)
{
	freeup_irqs();
	my_generic_exit();
}