<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dss/ipc.c, branch maint</title>
<subtitle>DSS - dyadic snapshot scheduler</subtitle>
<id>https://git.tue.mpg.de/cgit/dss/atom?h=maint</id>
<link rel='self' href='https://git.tue.mpg.de/cgit/dss/atom?h=maint'/>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/'/>
<updated>2017-04-16T10:32:06Z</updated>
<entry>
<title>ipc.c: Uninline get_key_or_die().</title>
<updated>2017-04-16T10:32:06Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2017-02-17T14:36:50Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=ae647da612e0edfb607a4fdb251983d6405f6b00'/>
<id>urn:sha1:ae647da612e0edfb607a4fdb251983d6405f6b00</id>
<content type='text'>
This function is rather big, so it's not clear whether it should
be inlined or not. Without the inline attribute, that's up to the
compiler to decide.
</content>
</entry>
<entry>
<title>ipc.c: Constify parameter of get_key_or_die().</title>
<updated>2017-04-16T10:32:06Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2017-02-17T14:15:10Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=b795331d8f7006e1cd15ddf124baf1384347d2db'/>
<id>urn:sha1:b795331d8f7006e1cd15ddf124baf1384347d2db</id>
<content type='text'>
The function only reads from the location pointed at by the config_file
variable.
</content>
</entry>
<entry>
<title>ipc: Fix error code returned by mutex_lock().</title>
<updated>2017-04-16T10:32:06Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2017-04-16T10:18:11Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=01af36ee3cd794f4332c4898828a31aafe0a939f'/>
<id>urn:sha1:01af36ee3cd794f4332c4898828a31aafe0a939f</id>
<content type='text'>
In the error case do_semop() already returns the error code which
corresponds to errno.
</content>
</entry>
<entry>
<title>ipc: Simplify mutex_try_lock().</title>
<updated>2016-08-21T19:13:25Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2016-06-17T07:18:40Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=03918564cf43cfbd4f873f1b9c6ec3ccd15ede91'/>
<id>urn:sha1:03918564cf43cfbd4f873f1b9c6ec3ccd15ede91</id>
<content type='text'>
There is no need to actually obtain the lock. A single semaphore
operation will do just fine. With sem_op equal to zero and IPC_NOWAIT
the semop() call returns immediately, and the return value tells
whether the semaphore value was zero.

Rename the (static) function to mutex_is_locked() to indicate that
it performs only read-only operations on the semaphore set.
</content>
</entry>
<entry>
<title>ipc: Make pid pointer optional.</title>
<updated>2016-08-21T19:13:25Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2016-06-16T21:06:29Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=81d9c8b0e49a12f7b726b06e2df48c2c3314bbcb'/>
<id>urn:sha1:81d9c8b0e49a12f7b726b06e2df48c2c3314bbcb</id>
<content type='text'>
This changes get_dss_pid() to handle the case where the caller passed
a NULL pid pointer. Conversely, if pid is not NULL, we now make sure
to initialize the given address in all cases.

The single caller currently never passes NULL, so this change is just
defensive programming, protecting against future users. Be liberal
in what you accept, be strict in what you return..
</content>
</entry>
<entry>
<title>Merge branch 't/rename_system_files'</title>
<updated>2012-09-16T11:34:07Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@systemlinux.org</email>
</author>
<published>2012-09-16T11:34:07Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=6c76799c7334a12926dc1cf0c32670423cbc954f'/>
<id>urn:sha1:6c76799c7334a12926dc1cf0c32670423cbc954f</id>
<content type='text'>
Has been cooking for several weeks. The conflicts

	daemon.c
	exec.c
	file.c
	ipc.c
	sig.c

are trivial and can be resolved easily.
</content>
</entry>
<entry>
<title>Rename source files which also exist as system headers.</title>
<updated>2012-08-15T09:41:32Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@systemlinux.org</email>
</author>
<published>2012-08-11T18:32:19Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=46cbddf465bd66ba1d5c4bcc780ae0d65abd7f73'/>
<id>urn:sha1:46cbddf465bd66ba1d5c4bcc780ae0d65abd7f73</id>
<content type='text'>
As pointed out by Daniel Richard G. some of the dss header files
are named the same as system header files.

This patch renames these headers as well as their corresponding .c
files. Specifically, error.h, fd.h, signal.h, string.h and time.h
become err.h, file.h, sig.h, str.h and tv.h.
</content>
</entry>
<entry>
<title>Make the dss log facility C89 conform.</title>
<updated>2012-08-15T09:39:26Z</updated>
<author>
<name>Daniel Richard G</name>
<email>skunk@iSKUNK.ORG</email>
</author>
<published>2012-08-10T12:41:22Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=66cdd5bc99a53d2b408a6cdc2d501fe27f9db13b'/>
<id>urn:sha1:66cdd5bc99a53d2b408a6cdc2d501fe27f9db13b</id>
<content type='text'>
Variadic macros were introduced in C99, so they are not supported on
ANSI C compilers. Since currently all DSS_*_LOG macros are variadic,
we need a replacement for these. Moreover, since not all compilers
support __func__ or an equivalent, we need to check for this feature
as well and provide a workaround if necessary.

This patch introduces the new public function dss_log_set_params()
which saves the given log level, filename, line number and the
function name in global variables. The DSS_*_LOG macros are changed
to receive a single argument only, which is the usual variadic list,
enclosed in additional parentheses.

The new DSS_*_LOG macros first set the log parameters by calling
dss_log_set_params(), then call dss_log() with the variadic list as
the argument. dss_log() is patched to print the function name only
if __func__ is supported and fall back to file name and the line
number otherwise.

All DSS_*_LOG() calls are changed to the new syntax.
</content>
</entry>
<entry>
<title>ipc.c: Eliminate per-field struct initializations.</title>
<updated>2012-08-15T09:39:26Z</updated>
<author>
<name>Daniel Richard G</name>
<email>skunk@iSKUNK.ORG</email>
</author>
<published>2012-08-10T12:20:57Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=b3aca66350a1a4244cdad55fcd8cd64293336006'/>
<id>urn:sha1:b3aca66350a1a4244cdad55fcd8cd64293336006</id>
<content type='text'>
This replaces the C99-only initializations in mutex_lock() and
mutex_try_lock() by equivalent but portable code.
</content>
</entry>
<entry>
<title>Have foo.c #include foo.h.</title>
<updated>2012-08-15T09:39:26Z</updated>
<author>
<name>Daniel Richard G</name>
<email>skunk@iSKUNK.ORG</email>
</author>
<published>2012-08-10T12:16:22Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/dss/commit/?id=c17bfe9242f34690bd26747144f5351011e91b41'/>
<id>urn:sha1:c17bfe9242f34690bd26747144f5351011e91b41</id>
<content type='text'>
This is both to ensure function signature consistency, and to
eliminate GCC's "no previous declaration for _____" warnings.
</content>
</entry>
</feed>
