Revert "Low: mainloop: Don't allow client buf size to be determined by hardcoded value given to mainloop"

Do not change public API

This reverts commit b93311e83e87e30805a620ec2db134a27bb13a05.
Fix: ipc: Use the higher of the configured buffer size or the default
Revert "Fix: crm_resource: Wait for a reply for each request to crmd"

This reverts commit 768f9b22cade15d94c6931790e009bb51d79130d.
Redundant with 62e59ab
Fix: crm_master: Avoid sending redundant "--node" options to crm_attribute
Fix: crmd: don't segfault on shutdown when using heartbeat

The interface to use G_main_add_ll_cluster() was broken (incomplete)
since it was introduced.
->delete() does cleanup and free most of it, but it does not
actually remove and destroy the corresponding GSource, so the next
prepare/check iteratioin would find a corrupt (because partially
freed) GSource, and segfault.

So better use ->delete only after g_main_loop_quit().

Apparently one was supposed to store the GSource as returned by
G_main_add_ll_cluster(), and g_source_destroy() that "by hand".

But no-one ever did this, not even in the old hb code when this was
introduced.

Note that fsa_cluster_conn was set as an "alias" to cluster->hb_conn
in do_ha_control() right after crm_cluster_connect(), and only
happens to still point at that object, because do_ha_control() does
not reset it to NULL after crm_cluster_disconnect() above does
reset cluster->hb_conn to NULL.
Not sure if that's something to cleanup, too.

I'll try to fix this up in heartbeat proper, so ->delete
will actually remove, and destroy, and unref, and free this thing.
Doing so after g_main_loop_quit() is valid with both old,
and eventually fixed heartbeat.

If we introduce the "by hand" destroy/remove/unref,
this may break again (double free...) once heartbeat is fixed :-(
Fix: crmd: kill pengine on shutdown also when using heartbeat

If this is a heartbeat cluster, kill the pengine
in pe_ipc_destroy already.

The pe_subsystem->pid was set to -1 too early,
in pe_ipc_destroy, but without actually killing it.

Now stop_subsystem() in do_stop() would find it "already stopped",
and do nothing.

We would "leak" a pengine process, which may lead to problems
on next cluster start, especially when there was an update meanwhile.
The still running pengine may use outdated libraries/binaries.

There may be other problems as well when re-attaching
to a still running pengine.
Fix: iso8601: Prevent dates from jumping backwards a day in some timezones

Effect was that each day between 7pm and midnight PDT (or equivalent for
any -ve time zone offset, west of UTC), pengine beams itself one day
into the past.

Missing failure-timeout and other deadlines until the first second after
midnight, localtime.
High: doc: Baremetal remote-node documentation and tutorial
Merge pull request #380 from lge/for-beekhof

Fix segfault on shutdown and left-over pengine process on heartbeat stack -- prevent dates from jumping backwards
Merge pull request #379 from gao-yan/crm_master-node

Fix: crm_master: Avoid sending redundant "--node" options to crm_attribute
Merge pull request #381 from davidvossel/pacemaker_remote_docs

High: doc: Baremetal remote-node documentation and tutorial
Fix: crmd: Do not send throttle updates to versions that don't support them
Fix: crmd: Don't start throttling until we're over the target threshold
Refactor: crmd: Fold the enforcement of migration-limit into the throttling code
Feature: crmd: Track the CIB's CPU usage
Refactor: crmd: Tell the DC our job limit instead of the number of cores
Fix: crmd: Honor load thresholds lower than the cib maximum
Test: PE: Ignore changes to crm_feature_set and batch-limit
Feature: crmd: Allow non-CIB based throttling to be disabled
Merge branch 'master' of github.com:ClusterLabs/pacemaker