<feed xmlns='http://www.w3.org/2005/Atom'>
<title>liblitmus.git/src/task.c, branch wip-shared-mem</title>
<subtitle>[ARCHIVE] The userspace library for LITMUS^RT 2010. Now on GitHub.</subtitle>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/'/>
<entry>
<title>Modernize rt_launch; remove internal API cruft</title>
<updated>2014-06-03T06:38:40+00:00</updated>
<author>
<name>Bjoern Brandenburg</name>
<email>bbb@mpi-sws.org</email>
</author>
<published>2014-05-09T09:11:35+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=4cc5780a04d827e075a383b2c37a7fca304c3607'/>
<id>4cc5780a04d827e075a383b2c37a7fca304c3607</id>
<content type='text'>
Switch rt_launch to use a more modern way to launch real-time tasks.
This makes rt_launch more flexible, makes it more similar to rtspin,
and also allows to let us get rid of a chunk of old, inflexible code
in liblitmus that wasn't really serving any useful purpose anymore.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Switch rt_launch to use a more modern way to launch real-time tasks.
This makes rt_launch more flexible, makes it more similar to rtspin,
and also allows to let us get rid of a chunk of old, inflexible code
in liblitmus that wasn't really serving any useful purpose anymore.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add missing default param initialization</title>
<updated>2014-04-01T17:37:45+00:00</updated>
<author>
<name>Bjoern Brandenburg</name>
<email>bbb@mpi-sws.org</email>
</author>
<published>2014-04-01T12:55:27+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=7e861d78fd96c9f411b52b851c6d66b957f3e6f2'/>
<id>7e861d78fd96c9f411b52b851c6d66b957f3e6f2</id>
<content type='text'>
Make sure new default parameters such as the deadline are taken care
of in the old task creation routines. This fixes a problem with
rt_launch.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make sure new default parameters such as the deadline are taken care
of in the old task creation routines. This fixes a problem with
rt_launch.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use /proc/litmus/domains to set up affinity masks</title>
<updated>2014-02-24T19:01:11+00:00</updated>
<author>
<name>Glenn Elliott</name>
<email>gelliott@cs.unc.edu</email>
</author>
<published>2014-02-05T05:31:08+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=1f323b00f95c4704cdeea7918853f1e9e8d26c2e'/>
<id>1f323b00f95c4704cdeea7918853f1e9e8d26c2e</id>
<content type='text'>
This patch replaces the algorithm used to compute CPU affinity masks.
The old algorithm was fragile and would break on systems with multiple
levels of shared caches. (As found on some older Intel chips, and as
one would probably find on a system with hyper-threading enabled.) The
bug stems from fact that Linux enumerates consecutive CPUs in a way
that distributes them across the physical system, thereby reducing
contention resources (e.g., cache).

Cluster size no longer needs to be provided now that cluster/CPU
mappings are explicit in /proc/litmus/domains/.

This keeps the following migration functions, but marks them as
deprecated:
  - be_migrate_to_cluster()
  - cluster_to_first_cpu()
  - partition_to_cpu()

Although the deprecated interfaces are supported, the implementations
for these functions call the new be_migrate_to_domain() and
domain_to_first_cpu() functions.

[bbb: resolved several merge conflicts]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch replaces the algorithm used to compute CPU affinity masks.
The old algorithm was fragile and would break on systems with multiple
levels of shared caches. (As found on some older Intel chips, and as
one would probably find on a system with hyper-threading enabled.) The
bug stems from fact that Linux enumerates consecutive CPUs in a way
that distributes them across the physical system, thereby reducing
contention resources (e.g., cache).

Cluster size no longer needs to be provided now that cluster/CPU
mappings are explicit in /proc/litmus/domains/.

This keeps the following migration functions, but marks them as
deprecated:
  - be_migrate_to_cluster()
  - cluster_to_first_cpu()
  - partition_to_cpu()

Although the deprecated interfaces are supported, the implementations
for these functions call the new be_migrate_to_domain() and
domain_to_first_cpu() functions.

[bbb: resolved several merge conflicts]
</pre>
</div>
</content>
</entry>
<entry>
<title>Add testcase for admission of suspended tasks</title>
<updated>2013-06-08T22:13:43+00:00</updated>
<author>
<name>Bjoern Brandenburg</name>
<email>bbb@mpi-sws.org</email>
</author>
<published>2013-06-08T18:05:29+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=4928cb8f9b596dde0f977bd8924a28dd38541f5f'/>
<id>4928cb8f9b596dde0f977bd8924a28dd38541f5f</id>
<content type='text'>
The kernel needs to be able to deal with tasks that do not make
themselves a real-time task, but get configured by some other task
instead.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The kernel needs to be able to deal with tasks that do not make
themselves a real-time task, but get configured by some other task
instead.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cluster-aware rtspin and rt_launch.</title>
<updated>2013-03-12T16:47:20+00:00</updated>
<author>
<name>Glenn Elliott</name>
<email>gelliott@cs.unc.edu</email>
</author>
<published>2013-03-05T23:32:01+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=0a54a84457bb8a33113c7dd2a2b63b2a837cc92e'/>
<id>0a54a84457bb8a33113c7dd2a2b63b2a837cc92e</id>
<content type='text'>
This patch adds cluster scheduling options to
rtspin and rt_launch. The convenience routines
in litmus.h were also updated to facilitate
clustered scheduling. For partitioned scheduling,
just set cluster_size = 1 (default size for rtspin
and rt_launch).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds cluster scheduling options to
rtspin and rt_launch. The convenience routines
in litmus.h were also updated to facilitate
clustered scheduling. For partitioned scheduling,
just set cluster_size = 1 (default size for rtspin
and rt_launch).
</pre>
</div>
</content>
</entry>
<entry>
<title>rt_launch: add support for -q &lt;priority&gt;</title>
<updated>2013-01-11T09:26:33+00:00</updated>
<author>
<name>Bjoern Brandenburg</name>
<email>bbb@mpi-sws.org</email>
</author>
<published>2013-01-11T09:26:33+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=102b50373d656e42abbd1c953ce908e52f6e8706'/>
<id>102b50373d656e42abbd1c953ce908e52f6e8706</id>
<content type='text'>
This mirrors the option in rtspin.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This mirrors the option in rtspin.
</pre>
</div>
</content>
</entry>
<entry>
<title>Support budget enforcement policies.  Allows tasks to specify</title>
<updated>2010-05-20T18:17:58+00:00</updated>
<author>
<name>Glenn Elliott</name>
<email>gelliott@koruna.cs.unc.edu</email>
</author>
<published>2010-05-20T18:17:58+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=e9c900fae35e4e4730469e189ff17bf30518346a'/>
<id>e9c900fae35e4e4730469e189ff17bf30518346a</id>
<content type='text'>
how their execution budgets should be enforced: NO_ENFORCEMENT,
QUANTUM_ENFORCEMENT, and PRECISE_ENFORCEMENT (unsupported).

NOTE: Users of NO_ENFORCEMENT must call sleep_next_period() at the
end of every job to signal to the kernel that its job is complete.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
how their execution budgets should be enforced: NO_ENFORCEMENT,
QUANTUM_ENFORCEMENT, and PRECISE_ENFORCEMENT (unsupported).

NOTE: Users of NO_ENFORCEMENT must call sleep_next_period() at the
end of every job to signal to the kernel that its job is complete.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use _GNU_SOURCE for all files. Fix wrong prototypes.</title>
<updated>2008-05-02T15:16:42+00:00</updated>
<author>
<name>Bjoern B. Brandenburg</name>
<email>bbb@cs.unc.edu</email>
</author>
<published>2008-05-02T15:16:42+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=2ecaa462efc710ae8f55af9dd5371b4d67bfd620'/>
<id>2ecaa462efc710ae8f55af9dd5371b4d67bfd620</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>    adapt to new ABI</title>
<updated>2008-02-19T20:48:59+00:00</updated>
<author>
<name>Bjoern B. Brandenburg</name>
<email>bbb@cs.unc.edu</email>
</author>
<published>2008-02-19T20:48:59+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=8cea6a4d179628e96d8d012f7a7f18d112fdb060'/>
<id>8cea6a4d179628e96d8d012f7a7f18d112fdb060</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>first changes to compile with LITMUS 2008</title>
<updated>2008-02-12T20:51:00+00:00</updated>
<author>
<name>Bjoern B. Brandenburg</name>
<email>bbb@cs.unc.edu</email>
</author>
<published>2008-02-12T20:51:00+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/liblitmus.git/commit/?id=2c1f329215e57a6f070cab21236b132b22ef80c2'/>
<id>2c1f329215e57a6f070cab21236b132b22ef80c2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
