]> git.proxmox.com Git - mirror_kronosnet.git/log
mirror_kronosnet.git
7 years ago[build] consistent error message
Fabio M. Di Nitto [Thu, 24 Aug 2017 06:05:14 +0000 (08:05 +0200)]
[build] consistent error message

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[build] move hardcoding of linking libraries in one place and enforce better check
Fabio M. Di Nitto [Mon, 21 Aug 2017 10:26:15 +0000 (12:26 +0200)]
[build] move hardcoding of linking libraries in one place and enforce better check

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] move bzip2 to dlopen model
Fabio M. Di Nitto [Mon, 21 Aug 2017 06:58:18 +0000 (08:58 +0200)]
[compress] move bzip2 to dlopen model

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] cleanup dlerror before dlopen for lzma
Fabio M. Di Nitto [Mon, 21 Aug 2017 06:57:56 +0000 (08:57 +0200)]
[compress] cleanup dlerror before dlopen for lzma

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] cosmetic cleanup... (part 2)
Fabio M. Di Nitto [Mon, 21 Aug 2017 06:57:35 +0000 (08:57 +0200)]
[compress] cosmetic cleanup... (part 2)

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] cosmetic cleanup
Fabio M. Di Nitto [Mon, 21 Aug 2017 06:56:44 +0000 (08:56 +0200)]
[compress] cosmetic cleanup

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] move lzma to dlopen model
Fabio M. Di Nitto [Mon, 21 Aug 2017 06:31:53 +0000 (08:31 +0200)]
[compress] move lzma to dlopen model

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] move lz4 to dlopen model
Fabio M. Di Nitto [Mon, 21 Aug 2017 04:09:14 +0000 (06:09 +0200)]
[compress] move lz4 to dlopen model

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] make sure lib handles are clean after dlclose
Fabio M. Di Nitto [Mon, 21 Aug 2017 03:57:52 +0000 (05:57 +0200)]
[compress] make sure lib handles are clean after dlclose

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] move zlib to dlopen model
Fabio M. Di Nitto [Sun, 20 Aug 2017 14:50:47 +0000 (16:50 +0200)]
[compress] move zlib to dlopen model

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] fix library init to work for multiple knet_handle
Fabio M. Di Nitto [Sun, 20 Aug 2017 14:27:37 +0000 (16:27 +0200)]
[compress] fix library init to work for multiple knet_handle

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compression] simplify lzo2 dlopen code handling
Fabio M. Di Nitto [Sun, 20 Aug 2017 11:58:34 +0000 (13:58 +0200)]
[compression] simplify lzo2 dlopen code handling

code is still broken when using multiple knet_handle

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compression] move lzo2 to dlopen model and fix internal api
Fabio M. Di Nitto [Sun, 20 Aug 2017 09:11:25 +0000 (11:11 +0200)]
[compression] move lzo2 to dlopen model and fix internal api

this commit breaks all other compression modules for now

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[test] add the test file
Fabio M. Di Nitto [Sun, 20 Aug 2017 04:12:05 +0000 (06:12 +0200)]
[test] add the test file

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] only initialize compress library on demand
Fabio M. Di Nitto [Sun, 20 Aug 2017 04:11:12 +0000 (06:11 +0200)]
[compress] only initialize compress library on demand

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[test] don't run api_knet_handle_new_limit by default
Fabio M. Di Nitto [Sat, 19 Aug 2017 09:21:51 +0000 (11:21 +0200)]
[test] don't run api_knet_handle_new_limit by default

it takes more than 20GB of ram and special ulimit settings.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[handle] implement open knet_handle tracker
Fabio M. Di Nitto [Sat, 19 Aug 2017 06:39:35 +0000 (08:39 +0200)]
[handle] implement open knet_handle tracker

limit the number of open knet_handle to UINT8_MAX for now.

UINT8_MAX requires approx 20GB of RAM only for init and more
than 1024 fds (tune your ulimit as necessary) without taking
into account fds required for links

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agolibknet: some FreeBSD compatibility fixes.
Christine Caulfield [Thu, 24 Aug 2017 08:23:16 +0000 (09:23 +0100)]
libknet: some FreeBSD compatibility fixes.

Also add support for KNET_LINK_FLAG_TRAFFICHIPRIO on FreeBSD

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years agoadd knet_handle_get_stats (#49)
Chrissie Caulfield [Mon, 21 Aug 2017 15:15:43 +0000 (16:15 +0100)]
add knet_handle_get_stats (#49)

* stats: Add compression and crypto statistics

New stats structures shows how effective the compression is, and
also the compression/decompression overhead time.

Crypto stats show the byte overhead of the crypto library as well as the time taken
to sign/encrypt and decrypt the packets.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years ago[build] drop -lpthread from pkg-config
Fabio M. Di Nitto [Mon, 21 Aug 2017 10:19:49 +0000 (12:19 +0200)]
[build] drop -lpthread from pkg-config

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[tests] fix knet_bench usage
Fabio M. Di Nitto [Fri, 18 Aug 2017 11:56:12 +0000 (13:56 +0200)]
[tests] fix knet_bench usage

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[build] fix several hanging bits after compress/crypto optional builds
Fabio M. Di Nitto [Fri, 18 Aug 2017 09:42:49 +0000 (11:42 +0200)]
[build] fix several hanging bits after compress/crypto optional builds

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[build] allow optional build of nss crypto support
Fabio M. Di Nitto [Fri, 18 Aug 2017 06:27:40 +0000 (08:27 +0200)]
[build] allow optional build of nss crypto support

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[build] rename nsscrypto to crypto_nss and match compress module names
Fabio M. Di Nitto [Fri, 18 Aug 2017 04:03:21 +0000 (06:03 +0200)]
[build] rename nsscrypto to crypto_nss and match compress module names

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[build] fix SCTP support build
Fabio M. Di Nitto [Fri, 18 Aug 2017 03:32:11 +0000 (05:32 +0200)]
[build] fix SCTP support build

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] fix build to allow --disable-compress-all --enable-compress-$foo
Fabio M. Di Nitto [Thu, 17 Aug 2017 03:32:34 +0000 (05:32 +0200)]
[compress] fix build to allow --disable-compress-all --enable-compress-$foo

disable all but build $foo...

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compression] change test from ERROR to SKIP
Fabio M. Di Nitto [Wed, 16 Aug 2017 07:34:54 +0000 (09:34 +0200)]
[compression] change test from ERROR to SKIP

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] report error from knet_handle_compress api test if there is no zlib builtin
Fabio M. Di Nitto [Wed, 16 Aug 2017 04:06:34 +0000 (06:06 +0200)]
[compress] report error from knet_handle_compress api test if there is no zlib builtin

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] update api_knet_send_compress test
Fabio M. Di Nitto [Wed, 16 Aug 2017 04:00:33 +0000 (06:00 +0200)]
[compress] update api_knet_send_compress test

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] split init and config functions
Fabio M. Di Nitto [Wed, 16 Aug 2017 03:54:11 +0000 (05:54 +0200)]
[compress] split init and config functions

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] fix some Itaglish & a trailing space
Christine Caulfield [Tue, 15 Aug 2017 07:29:48 +0000 (08:29 +0100)]
[compress] fix some Itaglish & a trailing space

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years ago[compress] fix test suite build
Fabio M. Di Nitto [Tue, 15 Aug 2017 07:20:51 +0000 (09:20 +0200)]
[compress] fix test suite build

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] allow conditional builds of compress modules
Fabio M. Di Nitto [Tue, 15 Aug 2017 07:15:23 +0000 (09:15 +0200)]
[compress] allow conditional builds of compress modules

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] prepare internal structs and code to allow selection of compression models
Fabio M. Di Nitto [Tue, 15 Aug 2017 06:16:13 +0000 (08:16 +0200)]
[compress] prepare internal structs and code to allow selection of compression models

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] add pkg-config support for lzo2
Fabio M. Di Nitto [Tue, 15 Aug 2017 04:30:16 +0000 (06:30 +0200)]
[compress] add pkg-config support for lzo2

recent versions of lzo2 have pkg-config support. Use it when available or
fall back to old detection method.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] add bzip2 support
Fabio M. Di Nitto [Tue, 15 Aug 2017 04:05:18 +0000 (06:05 +0200)]
[compress] add bzip2 support

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compression] update libknet.h for lzma
Fabio M. Di Nitto [Mon, 14 Aug 2017 13:09:03 +0000 (15:09 +0200)]
[compression] update libknet.h for lzma

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] add lzma support
Fabio M. Di Nitto [Mon, 14 Aug 2017 11:01:07 +0000 (13:01 +0200)]
[compress] add lzma support

update also the memcheck exception file for valgrind. those updates
are strictly for lzma internal calls and they work on both rhel7
and fedora 25.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compression] remove debugging code
Fabio M. Di Nitto [Fri, 11 Aug 2017 12:26:33 +0000 (14:26 +0200)]
[compression] remove debugging code

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] add support for lzo2 compression
Fabio M. Di Nitto [Fri, 11 Aug 2017 12:24:56 +0000 (14:24 +0200)]
[compress] add support for lzo2 compression

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[testing] add knet_send with all crypto modules test
Fabio M. Di Nitto [Fri, 11 Aug 2017 05:20:20 +0000 (07:20 +0200)]
[testing] add knet_send with all crypto modules test

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] add support for threshold (don't compress packets smaller than X)
Fabio M. Di Nitto [Fri, 11 Aug 2017 04:07:38 +0000 (06:07 +0200)]
[compress] add support for threshold (don't compress packets smaller than X)

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress zlib] fix log levels around
Fabio M. Di Nitto [Thu, 10 Aug 2017 13:47:41 +0000 (15:47 +0200)]
[compress zlib] fix log levels around

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress lz4] fix log levels around
Fabio M. Di Nitto [Thu, 10 Aug 2017 13:43:28 +0000 (15:43 +0200)]
[compress lz4] fix log levels around

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] remove stray debugging entry
Fabio M. Di Nitto [Thu, 10 Aug 2017 12:26:39 +0000 (14:26 +0200)]
[compress] remove stray debugging entry

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] add support for lz4 and lz4hc compress mechanism
Fabio M. Di Nitto [Thu, 10 Aug 2017 12:22:56 +0000 (14:22 +0200)]
[compress] add support for lz4 and lz4hc compress mechanism

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] fix header define
Fabio M. Di Nitto [Tue, 8 Aug 2017 10:40:18 +0000 (12:40 +0200)]
[compress] fix header define

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[packaging] add explicit build dependencies
Fabio M. Di Nitto [Sun, 6 Aug 2017 06:40:51 +0000 (08:40 +0200)]
[packaging] add explicit build dependencies

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[compress] add userdata compression support
Fabio M. Di Nitto [Sun, 6 Aug 2017 04:47:40 +0000 (06:47 +0200)]
[compress] add userdata compression support

- implement generic plugin for compression
- add zlib compression support

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agoloopback: Optimise loopback sending
Christine Caulfield [Mon, 7 Aug 2017 12:00:07 +0000 (13:00 +0100)]
loopback: Optimise loopback sending

If a packet is only sent via loopback then don't bother
fragmenting or encypting it.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years agoMerge pull request #48 from chrissie-c/loopback-single
Fabio M. Di Nitto [Fri, 4 Aug 2017 08:07:31 +0000 (10:07 +0200)]
Merge pull request #48 from chrissie-c/loopback-single

loopback: Only allow 1 link to localhost if loopback is used.

7 years agoloopback: Fix some errno assignments that should have been to savederrno
Christine Caulfield [Fri, 4 Aug 2017 07:58:13 +0000 (08:58 +0100)]
loopback: Fix some errno assignments that should have been to savederrno

7 years agoloopback: Only allow 1 link to localhost if loopback is used.
Christine Caulfield [Thu, 3 Aug 2017 15:16:09 +0000 (16:16 +0100)]
loopback: Only allow 1 link to localhost if loopback is used.

If loopback is configured as a link transport to localhost then
no other transport makes sense and could actually cause
duplicate packets to be received. So now it's enforced and tested.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years ago[build] minor "make my OCD more quiet" cleanups
Fabio M. Di Nitto [Thu, 3 Aug 2017 07:11:44 +0000 (09:11 +0200)]
[build] minor "make my OCD more quiet" cleanups

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[tx] use loopback logging
Fabio M. Di Nitto [Thu, 3 Aug 2017 07:06:44 +0000 (09:06 +0200)]
[tx] use loopback logging

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[crypto] use unique name to avoid collision with other plugins
Fabio M. Di Nitto [Thu, 3 Aug 2017 07:06:06 +0000 (09:06 +0200)]
[crypto] use unique name to avoid collision with other plugins

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[logging] add loopback nice name
Fabio M. Di Nitto [Thu, 3 Aug 2017 07:05:30 +0000 (09:05 +0200)]
[logging] add loopback nice name

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[transport] minor nitpick
Fabio M. Di Nitto [Wed, 2 Aug 2017 04:37:17 +0000 (06:37 +0200)]
[transport] minor nitpick

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agolibknet: Add LOOPBACK transport
Christine Caulfield [Tue, 1 Aug 2017 09:49:10 +0000 (10:49 +0100)]
libknet: Add LOOPBACK transport

KNET_TRANSPORT_LOOPBACK is a transport designed for
high-speed communication internal to the local node. Data
packets are copied directly from the sendfd to the
receiving fd. The calling program must make sure that
data is removed from the receiving fd in a timely manner.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agoMerge pull request #47 from jnpkrn/build+init
Fabio M. Di Nitto [Mon, 31 Jul 2017 11:12:20 +0000 (13:12 +0200)]
Merge pull request #47 from jnpkrn/build+init

Build+init cleanups

7 years ago[init] service file: drop no longer available ControlGroup= option
Jan Pokorný [Mon, 31 Jul 2017 10:53:29 +0000 (12:53 +0200)]
[init] service file: drop no longer available ControlGroup= option

Support for that was dropped in systemd 205[1].  To be able to get RT
priority regardless of the runtime control groups (Linux-specific),
there's a precedent solution for corosync[2], should it be needed.

[1] https://lists.freedesktop.org/archives/systemd-devel/2013-July/011679.html
[2] https://github.com/corosync/corosync/pull/231

Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
7 years ago[build] configure: avoid confusion wrt. what's enabled by default
Jan Pokorný [Mon, 31 Jul 2017 10:51:17 +0000 (12:51 +0200)]
[build] configure: avoid confusion wrt. what's enabled by default

Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
7 years ago[build] use newly create kronosnet release team gpgkey
Fabio M. Di Nitto [Sun, 30 Jul 2017 11:48:15 +0000 (13:48 +0200)]
[build] use newly create kronosnet release team gpgkey

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[build] enable release script / publishing bits
Fabio M. Di Nitto [Sun, 30 Jul 2017 09:06:24 +0000 (11:06 +0200)]
[build] enable release script / publishing bits

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[build] make maintainer-clean clean also after a release
Fabio M. Di Nitto [Sun, 30 Jul 2017 09:02:20 +0000 (11:02 +0200)]
[build] make maintainer-clean clean also after a release

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[build] add Cluster Release Team signing key
Fabio M. Di Nitto [Sun, 30 Jul 2017 06:55:35 +0000 (08:55 +0200)]
[build] add Cluster Release Team signing key

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agoMerge pull request #46 from jnpkrn/build-release.mk
Fabio M. Di Nitto [Fri, 28 Jul 2017 15:37:41 +0000 (17:37 +0200)]
Merge pull request #46 from jnpkrn/build-release.mk

[build] release.mk: adapt recent changes from libqb (fence-agents)

7 years ago[build] release.mk: reflect current release publishing practice
Jan Pokorný [Fri, 28 Jul 2017 14:11:33 +0000 (16:11 +0200)]
[build] release.mk: reflect current release publishing practice

Core author(s) had previous affiliation with project hosting on
fedorahosted.org,  but since the sunset of that hosting[1], it's no
longer an option.

Unfortunately, publish-by-scp convenience of fedorahosted.org won't fly
with GitHub that insists on the (primarily REST) API to get things
automated, so update "publish" recipe to that effect, providing some
hints on possible adaption of the process.

Also, turn "git push --tags" to a bit safer "git push --follow-tags"
for good measure.

[1] https://lists.fedoraproject.org/archives/list/announce@lists.fedoraproject.org/message/BWSMCGZPPNG3JOCFQ6Z74MIBU7FG3KGB/

Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
7 years ago[build] release.mk: simplify the default goal, declare .PHONY targets
Jan Pokorný [Fri, 28 Jul 2017 13:01:19 +0000 (15:01 +0200)]
[build] release.mk: simplify the default goal, declare .PHONY targets

The default goal line now serves mainly the documentation purpose,
otherwise it could be squashed down to "sign" target.

Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
7 years ago[build] release.mk: move soft guard for no GPG key up the supply chain
Jan Pokorný [Fri, 28 Jul 2017 12:51:20 +0000 (14:51 +0200)]
[build] release.mk: move soft guard for no GPG key up the supply chain

It also means the missing key specification is now a hard error when
ASCII armored files are to be created (directly or by other rules).

Leveraging the previous commit, it is now unnecessary to guard against
release mode not being requested, so this guard is dropped completely
in the transition, allowing for the full-fledged (incl. GPG signing)
release delivery testing without mangling with in-tree tags.

To allow "sign" target to (possibly eventually) become the implicit goal
even if "gpgsignkey" variable is explicitly unspecified, make it depend
on $(deliverables).

Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
7 years ago[build] release.mk: fix no-release conflict (implied-required version)
Jan Pokorný [Fri, 28 Jul 2017 12:25:21 +0000 (14:25 +0200)]
[build] release.mk: fix no-release conflict (implied-required version)

Previously, generating custom versioned tarballs without requiring
a "release" (which comprises also tagging hence in turn making the
implied version match the required one as desired) would not allow
to test the release routines thoroughly incl. GPG signing.
Unfortunately, allowing for a temporary tag is prone to accidentally
slipping it to the distributed tree, so that should rather be avoided
Now it can.

Another step to blur the boundaries between whether "release" is
specified or not is to make checksums file generated unconditionally.

Also both pre-existing and the newly created (per the above scenario)
"overhead" files arising from make/release.mk are git-ignored properly.

Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
7 years ago[build] release.mk: simplify/generalize GPG signing rule
Jan Pokorný [Fri, 28 Jul 2017 11:51:07 +0000 (13:51 +0200)]
[build] release.mk: simplify/generalize GPG signing rule

...especially in case we want to easily switch to signing also
particular archives, which may be a reasonable expectation from some
downstream/distro maintainers (as demonstrated with the libqb's
example[1] where this changeset was picked from a followup PR[2],
respectively its adaptation for fence-agents[3]).
Since this commit, such a change is a matter of only swapping
a prerequisities specification for "sign" target per the commented
out suggestion.

For that to work reliably even after such a change, for the complete
dependency backtrack, though, a pre-existing issue with parallelized
work on the prerequisites needs to be fixed first.  The (currently
hypothetical) problem is "tarballs" (phony) target missing in the
linearized supply chain for the signed tarballs, as opposed to supply
chain for the checksums file that can be worked on in an (unordered!)
interleave with the work on these signed tarballs.  Hence fix this
(currently hypothetical) race condition by stretching "tarballs" target
as progress barrier (using it as a prerequisite) uniformly for all
the deliverables that are going to be signed (as opposed to the
currently only "sha256" target).  And when at it, make "deliverables"
variable list them conveniently (along with reformatting definitions
of other variables for uniformity).

[1] https://github.com/ClusterLabs/libqb/issues/145#issuecomment-306640694
[2] https://github.com/ClusterLabs/libqb/pull/260
[3] https://github.com/ClusterLabs/fence-agents/pull/123

Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
7 years agolibknet: Small fixes for errors found by GCC 7.1
Christine Caulfield [Mon, 24 Jul 2017 08:45:41 +0000 (09:45 +0100)]
libknet: Small fixes for errors found by GCC 7.1

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years agolibknet.h: change some status values from bitfield to uint8_t
Christine Caulfield [Tue, 18 Jul 2017 10:41:56 +0000 (11:41 +0100)]
libknet.h: change some status values from bitfield to uint8_t

Bitfields are a pain and you can't take the address of them
which makes it hard for cosoync stats to deal with the values

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[nss] expand error reporting with proper error strings
Fabio M. Di Nitto [Wed, 12 Jul 2017 07:05:31 +0000 (09:05 +0200)]
[nss] expand error reporting with proper error strings

thanks Honza for adding some of them in the previous commits

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[crypto] set default case for key_type and avoid build warnings
Fabio M. Di Nitto [Wed, 12 Jul 2017 06:58:40 +0000 (08:58 +0200)]
[crypto] set default case for key_type and avoid build warnings

when key_type is unknown, gcc complains that cipher can be used
uninitialized.

add default case to catch wrong callers and avoid build warning

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[crypto] cleanup inconsistent whitespacing
Fabio M. Di Nitto [Wed, 12 Jul 2017 06:57:21 +0000 (08:57 +0200)]
[crypto] cleanup inconsistent whitespacing

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agoMerge pull request #44 from jfriesse/fips-enable
Fabio M. Di Nitto [Wed, 12 Jul 2017 06:43:09 +0000 (08:43 +0200)]
Merge pull request #44 from jfriesse/fips-enable

Fips enable

7 years ago[knet.h] Reduce KNET_MIN_KEY_LEN
Jan Friesse [Tue, 11 Jul 2017 15:00:32 +0000 (17:00 +0200)]
[knet.h] Reduce KNET_MIN_KEY_LEN

By reducing KNET_MIN_KEY_LEN we allow FIPS enabled system using NSS to
import (unwrap) the key.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
7 years ago[nsscrypto] Use different method to import key
Jan Friesse [Fri, 30 Jun 2017 15:38:48 +0000 (17:38 +0200)]
[nsscrypto] Use different method to import key

PK11_ImportSymKey doesn't work when FIPS is enabled because NSS is
targeting to FIPS Level 2 where loading of unencrypted symmetric
key is prohibited.

FIPS Level 2 is hard to achieve without breaking compatibility so patch
implements "workaround" to make NSS behave like FIPS Level 1
(where is allowed to load unencrypted symmetric key).

Workaround is about using temporal key to encrypt corosync authkey in
memory and then to unwrap it into valid NSS key.

Also when FIPS is enabled, it's not currently (nss 3.30.2) possible to
unwrap key larger than 256 bytes.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
7 years ago[nsscrypto] Refactor symmetric key importing
Jan Friesse [Fri, 30 Jun 2017 13:38:06 +0000 (15:38 +0200)]
[nsscrypto] Refactor symmetric key importing

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
7 years ago[stats] add doc details in the stat header
Fabio M. Di Nitto [Sat, 24 Jun 2017 05:56:06 +0000 (07:56 +0200)]
[stats] add doc details in the stat header

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[link] switch link_get_status to write lock
Fabio M. Di Nitto [Sat, 24 Jun 2017 05:40:20 +0000 (07:40 +0200)]
[link] switch link_get_status to write lock

previous to the introduction of detailed link stats, the values
contained in the status structure would hardly change over time
making a rdlock more than enough to get the right data.

Now that the values are updated constantly, we need to remove
the window of thread X writing values and thread Y to read them
while being written.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agolibknet: Add link stats (#43)
Chrissie Caulfield [Tue, 20 Jun 2017 13:44:58 +0000 (14:44 +0100)]
libknet: Add link stats (#43)

* libknet: Add link stats

This patch also includes an ABI change to knet_link_get_status()
(as well as returning a load of stats) that should allow us to
add more stats at a later stage without ballooning memory use
with pads or crashing earlier-linked programs with structure
overwrites.

kronosnetd compiles but has not been tested...

7 years ago[rx/tx] Increase RX buffers to 512 (new-tx branch)
Fabio M. Di Nitto [Mon, 12 Jun 2017 03:28:37 +0000 (05:28 +0200)]
[rx/tx] Increase RX buffers to 512 (new-tx branch)

latency is still much lower than current udpu and throughput
for small packets is much better

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[kronosnetd] fix build with new link flags
Fabio M. Di Nitto [Mon, 12 Jun 2017 03:28:17 +0000 (05:28 +0200)]
[kronosnetd] fix build with new link flags

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agolibknet: Add link flag for 'hi' (interactive) priority
Christine Caulfield [Fri, 9 Jun 2017 12:05:02 +0000 (13:05 +0100)]
libknet: Add link flag for 'hi' (interactive) priority

Rather than make it the default, this is now a link option.
Corosync needs it but other applications probably will not.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agolibknet: Add 'flags' parameter to knet_link_[gs]et_config()
Christine Caulfield [Thu, 8 Jun 2017 13:19:46 +0000 (14:19 +0100)]
libknet: Add 'flags' parameter to knet_link_[gs]et_config()

I have at least 1 flag planned but I'm sure there's plenty of scope
for more. Also trying to get the API changes out of the way ready
for the cluster summit in September.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years agoReduce TX memory further down by some MB
Fabio M. Di Nitto [Sun, 4 Jun 2017 09:08:13 +0000 (11:08 +0200)]
Reduce TX memory further down by some MB

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[tx/rx] reduce memory footprint and latency
Fabio M. Di Nitto [Sun, 4 Jun 2017 08:44:03 +0000 (10:44 +0200)]
[tx/rx] reduce memory footprint and latency

reduce memory usage by approx 16MB and drop min/avg latency
for some workloads

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agoResolves signed-unsigned comparison warnings
Fabio M. Di Nitto [Sat, 3 Jun 2017 07:22:45 +0000 (09:22 +0200)]
Resolves signed-unsigned comparison warnings

Patch based on:

commit 730a8b6a56820741b361e0907eecb6297a9f0348
Author: Michael Jones <jonesmz@jonesmz.com>

Resolves: https://github.com/fabbione/kronosnet/pull/40

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agoFixes format=signedness related warnings
Michael Jones [Mon, 29 May 2017 23:56:42 +0000 (18:56 -0500)]
Fixes format=signedness related warnings

7 years agoAdds additional warning flags to the compiler, no new warnings unhidden
Michael Jones [Mon, 29 May 2017 23:30:38 +0000 (18:30 -0500)]
Adds additional warning flags to the compiler, no new warnings unhidden

7 years ago[sctp] Don't hold global_rwlock while sleeping.
Christine Caulfield [Fri, 26 May 2017 13:18:11 +0000 (14:18 +0100)]
[sctp] Don't hold global_rwlock while sleeping.

The SCTP connect and accept threads can do small sleeps
when there are errors. The global_rwlock should not be held
while this is happening.

While the lock is a read lock and doesn't block sending and
receiving in other threads it can cause a deadlock on shutdown.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years ago[libknet] Unlock the global lock if logging pipe is full.
Christine Caulfield [Fri, 26 May 2017 08:46:21 +0000 (09:46 +0100)]
[libknet] Unlock the global lock if logging pipe is full.

If a write to the logging pipe fails (eg it's busy
waiting on something else, I've seen this in corosync
at shutdown) then we must unlock the global_rwlock
or we'll never get out of this alive.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years ago[libknet] Add TC_PRIO_INTERACTIVE to sockets
Christine Caulfield [Thu, 11 May 2017 09:40:42 +0000 (10:40 +0100)]
[libknet] Add TC_PRIO_INTERACTIVE to sockets

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
7 years agoMerge pull request #36 from liu4480/remove-if-defined-i386
Fabio M. Di Nitto [Wed, 19 Apr 2017 09:41:32 +0000 (11:41 +0200)]
Merge pull request #36 from liu4480/remove-if-defined-i386

use PRIu64 to replace #if defined(__i386__)

7 years agouse PRIu64 to replace #if defined(__i386__)
Bin Liu [Wed, 19 Apr 2017 08:44:29 +0000 (16:44 +0800)]
use PRIu64 to replace #if defined(__i386__)

7 years ago[libknet] Add some includes to allow FreeBSD compilation
Christine Caulfield [Thu, 13 Apr 2017 09:53:34 +0000 (10:53 +0100)]
[libknet] Add some includes to allow FreeBSD compilation

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com>
7 years agoMerge pull request #35 from liu4480/type-fixes
Fabio M. Di Nitto [Thu, 13 Apr 2017 09:07:07 +0000 (11:07 +0200)]
Merge pull request #35 from liu4480/type-fixes

fix compile errors on i386/i686 for knet_bench.c
Resolves: #34