Jeff Webb wrote:
Gilles Chanteperdrix wrote:

In the file ksrc/drivers/testing/switchtest.c, try commenting the calls
to try_module_get and module_put. You will need to recompile kernel
space support. I am afraid the module counter is decreased several times when close is called several times, so we basically screw it up.

The attached patch also closes the file descriptors only once the threads are joined.


It looks like this did the trick. After commenting out the try_module_get/module_put calls and applying your latest patch to switchtest.c, switchtest appears to be working properly once again.

Ok, could you try one last thing: keep try_module_get and module_put in
ksrc/drivers/testing/switchtest.c and apply the attached patch to src/testsuite/switchtest/switchtest.c

--
                                                 Gilles Chanteperdrix
Index: src/testsuite/switchtest/switchtest.c
===================================================================
--- src/testsuite/switchtest/switchtest.c	(révision 1749)
+++ src/testsuite/switchtest/switchtest.c	(copie de travail)
@@ -1173,8 +1173,12 @@
 			if (param->type != RTK && param->thread)
 				pthread_cancel(param->thread);
 		}
+	}
+	
+	for (i = 0; i < nr_cpus; i ++) {
+		struct cpu_tasks *cpu = &cpus[i];
 
-		/* join them. */
+		/* join the user-space tasks. */
 		for (j = 0; j < cpu->tasks_count; j++) {
 			struct task_params *param = &cpu->tasks[j];
 
_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to