diff options
author | Glenn Elliott <gelliott@cs.unc.edu> | 2012-12-13 18:39:27 -0500 |
---|---|---|
committer | Glenn Elliott <gelliott@cs.unc.edu> | 2012-12-13 18:39:27 -0500 |
commit | fa1229f9776c7ecc99baa187e0b485ebdbfdd78c (patch) | |
tree | 91da6c45685c436ddcc299117df0dab03933caf7 /litmus/litmus.c | |
parent | 8f4bc19471bd49f4dcf6ab20254b7c71ec12e4e2 (diff) |
Allow klmirqd threads to be given names.wip-klmirqd-to-aux
Diffstat (limited to 'litmus/litmus.c')
-rw-r--r-- | litmus/litmus.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/litmus/litmus.c b/litmus/litmus.c index 1aada57176de..1b4b9d25dbdc 100644 --- a/litmus/litmus.c +++ b/litmus/litmus.c | |||
@@ -556,14 +556,16 @@ int switch_sched_plugin(struct sched_plugin* plugin) | |||
556 | ret = litmus->deactivate_plugin(); | 556 | ret = litmus->deactivate_plugin(); |
557 | if (0 != ret) | 557 | if (0 != ret) |
558 | goto out; | 558 | goto out; |
559 | ret = plugin->activate_plugin(); | 559 | |
560 | litmus = plugin; // switch | ||
561 | mb(); // make sure it's seen everywhere. | ||
562 | ret = litmus->activate_plugin(); | ||
560 | if (0 != ret) { | 563 | if (0 != ret) { |
561 | printk(KERN_INFO "Can't activate %s (%d).\n", | 564 | printk(KERN_INFO "Can't activate %s (%d).\n", |
562 | plugin->plugin_name, ret); | 565 | litmus->plugin_name, ret); |
563 | plugin = &linux_sched_plugin; | 566 | litmus = &linux_sched_plugin; |
564 | } | 567 | } |
565 | printk(KERN_INFO "Switching to LITMUS^RT plugin %s.\n", plugin->plugin_name); | 568 | printk(KERN_INFO "Switching to LITMUS^RT plugin %s.\n", litmus->plugin_name); |
566 | litmus = plugin; | ||
567 | } else | 569 | } else |
568 | ret = -EBUSY; | 570 | ret = -EBUSY; |
569 | out: | 571 | out: |