diff options
Diffstat (limited to 'debian/patches/upstreamme0007-kern-bootstrap-tune-locking.patch')
-rw-r--r-- | debian/patches/upstreamme0007-kern-bootstrap-tune-locking.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/debian/patches/upstreamme0007-kern-bootstrap-tune-locking.patch b/debian/patches/upstreamme0007-kern-bootstrap-tune-locking.patch new file mode 100644 index 0000000..e2a8fcd --- /dev/null +++ b/debian/patches/upstreamme0007-kern-bootstrap-tune-locking.patch @@ -0,0 +1,30 @@ +From abf1fbce2aa3be4a9f5c906680b99c7d7cdb679d Mon Sep 17 00:00:00 2001 +From: Justus Winter <4winter@informatik.uni-hamburg.de> +Date: Sat, 25 Jul 2015 02:15:31 +0200 +Subject: [PATCH gnumach 07/10] kern/bootstrap: tune locking + +* kern/bootstrap.c (boot_script_exec_cmd): Avoid holding the lock +across the call to `thread_create'. +--- + kern/bootstrap.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/kern/bootstrap.c b/kern/bootstrap.c +index cb0f976..aad0fb1 100644 +--- a/kern/bootstrap.c ++++ b/kern/bootstrap.c +@@ -719,10 +719,10 @@ boot_script_exec_cmd (void *hook, task_t task, char *path, int argc, + thread_t thread; + struct user_bootstrap_info info = { mod, argv, 0, }; + simple_lock_init (&info.lock); +- simple_lock (&info.lock); + + err = thread_create ((task_t)task, &thread); + assert(err == 0); ++ simple_lock (&info.lock); + thread->saved.other = &info; + thread_start (thread, user_bootstrap); + err = thread_resume (thread); +-- +2.1.4 + |