<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/src/lib/shm_du_map.c, branch 0.2</title>
<subtitle>Ouroboros main repository</subtitle>
<id>http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.2</id>
<link rel='self' href='http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.2'/>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/'/>
<updated>2016-07-03T09:05:43+00:00</updated>
<entry>
<title>lib: shm_du_map full multi-block support</title>
<updated>2016-07-03T09:05:43+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-07-03T07:17:41+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=04f385a99f5e901598ee4b3d2655e458c92c06d8'/>
<id>urn:sha1:04f385a99f5e901598ee4b3d2655e458c92c06d8</id>
<content type='text'>
shm_du_map now fully supports multi-block SDU's when the
SHM_DU_MAP_MULTI_BLOCK compilation flag is set (enabled by default).

Fixes #11.
</content>
</entry>
<entry>
<title>lib: robust locking in shared memory and crash recovery</title>
<updated>2016-07-02T17:11:12+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-06-30T21:14:14+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=79475a4742bc28e1737044f2300bcb601e6e10bf'/>
<id>urn:sha1:79475a4742bc28e1737044f2300bcb601e6e10bf</id>
<content type='text'>
This PR enhances the shared memory providing recovery if a process
crashes. It adds a SHM_DU_TIMEOUT_MICROS variable, setting an
expiration time for SDU's when shared memory is full. If an
application doesn't read a blocking SDU within this time, the shared
memory will be cleansed of all SDU's for this application and the
application's rbuff will be cleared.

Some refactoring of the API's. Fixed wrong pthread checks in IRMd.

Fixes #13
Fixes #14
</content>
</entry>
<entry>
<title>lib, irmd, ipcpd: Change pid to api</title>
<updated>2016-06-28T14:45:45+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-06-28T14:38:03+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=99d19307fae8f1370f52a62aee88fded624ad464'/>
<id>urn:sha1:99d19307fae8f1370f52a62aee88fded624ad464</id>
<content type='text'>
Changes the variable name as well to API instead of PID.
</content>
</entry>
<entry>
<title>lib, irmd, ipcp: robust mutexes</title>
<updated>2016-06-20T22:14:14+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-06-20T21:49:35+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=a46114ec01e8d174a41744f4f1b49905613847dc'/>
<id>urn:sha1:a46114ec01e8d174a41744f4f1b49905613847dc</id>
<content type='text'>
Update to POSIX 200112L to allow use of robust mutexes in the
shm_du_map. Removed the implementation of the rw_lock in favor of
pthread_rwlock_t.

Placeholder for the shm_du_map_sanitize function.
</content>
</entry>
<entry>
<title>build: Change install directories and set correct permissions</title>
<updated>2016-06-20T18:57:25+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-06-20T18:57:25+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=16323dcc9df15020e368d4324cf1c1d9dceac805'/>
<id>urn:sha1:16323dcc9df15020e368d4324cf1c1d9dceac805</id>
<content type='text'>
This sets the correct install directories for all the binaries,
library and header files. It also sets the right permissions on the
sockets and shared memory so that regular users can also use the
ouroboros library. Root privileges are required to run the irmd.

Fixes #7
</content>
</entry>
<entry>
<title>irmd, lib: use shm_du_map as lockfile.</title>
<updated>2016-06-17T14:01:20+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-06-17T13:55:23+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=dba896b9a0ca7cbe4fb379017672bd44a0a77ef0'/>
<id>urn:sha1:dba896b9a0ca7cbe4fb379017672bd44a0a77ef0</id>
<content type='text'>
Added the pid of the irmd to the shm_du_map. The IRMd will check for
an existing shm_du_map. If there is an existing file, it will exit if
the owner IRMd is running or remove it if the owner IRMd is not
running.

Also simplifies calculation of the shm_du_map pointers and corrects
exiting calls for the IRMd.

Fixes #8.
</content>
</entry>
<entry>
<title>lib: fixed SHM_DU_BUFF_BLOCK_SIZE in shm_du_map</title>
<updated>2016-05-26T20:46:47+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-05-26T20:46:47+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=1821da84d7d8e956b64235801110949fc85d4e1d'/>
<id>urn:sha1:1821da84d7d8e956b64235801110949fc85d4e1d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>lib: allow running shm_du_map in single block mode</title>
<updated>2016-05-24T22:44:03+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-05-24T21:34:05+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=dafba02c1045b751375c0f4e2f67053e7019be6c'/>
<id>urn:sha1:dafba02c1045b751375c0f4e2f67053e7019be6c</id>
<content type='text'>
this allows disabling support for SDU's that are larger than a block
in the DU MAP by defining the variable SHM_MAP_SINGLE_BLOCK
</content>
</entry>
<entry>
<title>lib: Add missing check upon garbage collection</title>
<updated>2016-05-17T20:18:09+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-05-17T20:18:09+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=39c326d7cc333e88cc6a608853290132299fae0d'/>
<id>urn:sha1:39c326d7cc333e88cc6a608853290132299fae0d</id>
<content type='text'>
There was a check missing upon garbage collection. If the whole DU map
has been used once, all DUs will have their garbage bit set to
one. This meant that the garbage collector would keep moving the tail
indefinitely.
</content>
</entry>
<entry>
<title>lib: Fixed incorrect initialization</title>
<updated>2016-05-17T19:33:48+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-05-17T18:17:09+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=81e32e5d19bdc0dabd7473a31ddb0d6f1c95e18e'/>
<id>urn:sha1:81e32e5d19bdc0dabd7473a31ddb0d6f1c95e18e</id>
<content type='text'>
When moving the tail pointer in the DU map, blocks was never reset to
zero. This caused it to sometimes clean up too many DUs.
</content>
</entry>
</feed>
