Changes since the dawn of time: Daniel P. Berrange (15): Fix const-ness of many APIs. Fix warnings in watchdog module Fix function prototypes for no-arg methods Remove use of 'index' as a variable name Make many functions static Fix missing include in logging file Annotate many unused parameters to avoid warnings Remove redundant redeclaration of 'to' variable Fix args to execv() Remove redundant arg to 'run_command' Rename optarg to optionarg to avoid clashing with getopt.h Disable the read_request method since it is unused Add many more compiler warning flags & safety checks Hard code a sector size of 512 if the lease volume is a regular file Ensure libsanlock.so is built with debug/warning flags
David Teigland (405): sync_manager: initial commit sync_manager: misc updates sync_manager: misc updates sync_manager: misc updates sync_manager: misc updates sync_manager: add more logging sync_manager: misc updates sync_manager: misc updates sync_manager: num_hosts/MAX_HOSTS stuff daemon: reworking notions of resource_id/token_name sync_manager: resource lockfiles sync_manager: lease arg processing sync_manager: Began multiple lease support sync_manager: use first command line arg as action sync_manager: leader record changes and verify sync_manager: clean up released leases sync_manager: move functions around sync_manager: add more tool actions sync_manager: naming changes sync_manager: separate token index and id sync_manager: fix index usage and other misc sync_manager: use pthread cond in acquire sync_manager: write all log entries sync_manager: simplify polling sync_manager: fix waitpid use sync_manager: acquire can fail early sync_manager: write log entries at exit sync_manager: add test program sync_manager: move secondary pid check sync_manager: fix disk paxos contention devcount: fix verify checks sync_manager: add GPL license file sync_manager: fix leader block offsets sync_manager: increase COMMAND_MAX sync_manager: renewal should verify sync_manager: use sector size from libblkid sync_manager: use a real checksum function sync_manager: add libblkid to spec file sync_manager: print status info sync_manager: one watchdog file per lease sync_manager: lease_threads handle watchdog files sync_manager: fix/add some text/comments sync_manager: refactor read/write sync_manager: move disk io functions sync_manager: remove token arg sync_manager: rename paxos_disk sync_disk sync_manager: add aio read/write sync_manager: make io_timeout_seconds a diskio arg sync_manager: forgot to add new files sync_manager: use log thread sync_manager: client connections sync_manager: connection processing sync_manager: send/recv pid sync_manager: add write_sectors sync_manager: restructuring sync_manager: write_sectors code factoring sync_manager: daemonize sync_manager: releasing leases sync_manager: async releasing sync_manager: release fixes sync_manager: add direct and indirect acquire/release sync_manager: reacquire resources sync_manager: move code sync_manager: same pid may reacquire resource sync_manager: lease migration sync_manager: handle client errors sync_manager: improve error handling sync_manager: host_id leases sync_manager: remove empty files sync_manager: print initialization info sync_manager: rename files sync_manager: clean up header org sync_manager: delta_lease implementation sync_manager: accept offset units sync_manager: fix up init output sync_manager: put back watchdog calls sync_manager: fix start_host_id error paths sync_manager: add log_error's for watchdog file errors sync_manager: actual timeouts sync_manager: change timeouts on cmd line sanlock: create new external api sanlock: build libsanlock sanlock: use MAX_LEASES everywhere sanlock: add libvirt plugin sanlock plugin: couple minor fixes sanlock: clean up /var file names sanlock plugin: fix symbol needed by libvirt sanlock: add some debug output sanlock plugin: fix uuid copy sanlock plugin: fix names sanlock: add "owner_name" sanlock: fix renewal checks sanlock: clean up host_id types sanlock: set_host_id command sanlock: fix killing pids sanlock: add status command sanlock: set version to 1.0 sanlock: delta_lease cleanup sanlock: changing num_hosts sanlock: add dump command sanlock: renewal timings sanlock: add direct option sanlock: check for watchdog file sanlock: recovery fixes lock_driver_sanlock: fix compile problems sanlock: improve command options sanlock: tidying help text sanlock: move binary to /usr/sbin sanlock: add init script sanlock: fix sigterm shutdown sanlock: init stop sanlock: add wdtest command sanlock.spec: new url lock_driver_sanlock: remove close sanlock: introduce lockspaces lock_driver_sanlock: remove files sanlock: better logging functions sanlock: misc log message sanlock.spec: sbin not libexec sanlock init: remove watchdog reference wdmd: watchdog multiplexing daemon sanlock: add code to use wdmd sanlock/wdmd: use wdmd in sanlock sanlock/wdmd: add copyright header to source files sanlock: rename sanlock source dir sanlock: move tests dir move COPYING file wdmd: use signalfd for signal handling Fix Makefile comments wdmd: fix daemon debug option wdmd: add init script sanlock.spec: updates sanlock.spec: src dir sanlock: build with uninstalled libwdmd sanlock: version 1.1 sanlock: high priority options wdmd: high priority options sanlock: return migration state sanlock: migration.txt describes libvirt/sanlock steps libsanlock: include admin functions sanlock: fix host_id expiration check sanlock: migration working devcount: migrate test sanlock: setowner improvements sanlock: migrate to target fix sanlock: fix wdmd stop order sanlock: various fixes sanlock: remove wdtest sanlock: remove migration sanlock: clean up command return data sanlock: add resource string conversion functions sanlock: rework internal structs devcount: add relock test sanlock: fix release and inquire sanlock: add_lockspace EEXIST sanlock: rework client handling sanlock: clean up warnings sanlock: debug message changes sanlock: add lockspace checks wdmd: enable test scripts sanlock: add str_to_lockspace to lib WIP devcount migrate devcount: new migrate test sanlock: read_id and live_id commands sanlock: check lockspace name and host_id sanlock: remove remaining cluster_mode sanlock: add libsanlock_direct devcountn: start multiple devcount tests devcount: small changes sanlock: new return values sanlock: misc changes and fix sanlock: log error of full bad block sanlock: interval between renewal checks sanlock: renewal changes sanlock: fix log_dump sanlock: fix find_client_pid sanlock: fix host_id reads from paxos_acquire sanlock: init with one write devcount: improve output devcount: new pause/resume devcount: add expire test sanlock: correct paxos usage sanlock: direct read_leader sanlock: paxos delays sanlock: use thread pool sanlock: client status output format changes sanlock: fix inquire of dead pid sanlock: use native linux aio sanlock: i/o changes sanlock: aio changes sanlock: reduce paxos acquire read ops sanlock: quiet error case sanlock: don't free aio buf until event completes sanlock: io timeout related changes sanlock: read dblocks in single aligned io sanlock: add sanlock_restrict api sanlock: add sanlock_direct_sector_size api sanlock: add checksum to dblocks sanlock: fix init restart sanlock: don't release tokens in dead lockspace sanlock: fix adding lockspace sanlock: official 1MB/8MB alignment devcount: use aio in init libsanlock: link with LDFLAGS sanlock: increase version to 1.3 sanlock/wdmd: shut up warnings sanlock: fix libwdmd linking remove spec file sanlock: use a completed read after renewal timeout sanlock: use unique host name in delta leases sanlock: remove sector_size api sanlock: abort delta wait on shutdown sanlock: fix add_lockspace failure sanlk_load: add new test sanlock: fix recv and inquire sanlock: initial pid_dead check in acquire sanlock: release 1.4 sanlock: generate a uuid for host id sanlock: return -EINPROGRESS from add_lockspace sanlk_load: periodically kill and replace a pid sanlock: zero num_hosts uses DEFAULT_MAX_HOSTS tests: misc changes sanlock: break paxos_acquire wait loop sanlock: increase log line to 512 bytes sanlock: change a log_error to log_debug sanlock: fail host_id when corrupted sanlock: release 1.5 sanlock: release 1.6 sanlock: handle colon escaping in path strings wdmd: add option for high priority wdmd: use accept4 with SOCK_NONBLOCK wdmd: tidy sun_addr snprintf wdmd: pid and sock file changes wdmd: add man page wdmd: disable test scripts sanlock: use accept4 with SOCK_NONBLOCK sanlock: tidy sun_addr snprintf sanlock: add explicit -luuid sanlock: pid and sock file changes sanlock: add man page sanlock/wdmd: improve mkdir of run dir wdmd: new build flags sanlock: new build flags sanlock/wdmd: use monotonic time sanlock: build with pie sanlock/wdmd: nonblocking listening/accept sanlock: add missing monotime files sanlock: update man page sanlock: man page update sanlock: update man page and help text sanlock: print connections limit release: sanlock 1.7 makefile: install mode for man pages sanlock: read align_size in renewal sanlock: check other host_id leases sanlock: minor fixes and cleanups sanlock: add request api/cmd sanlock: crc code tidying sanlock/wdmd: add license header to files sanlock: create libsanlock_client sanlock: move client code remove COPYING file sanlock: remove internal header from sanlock_sock libsanlock_client: use LGPLv2+ libwdmd: use LGPLv2+ sanlock_rv.h: switch to LGPLv2+ README.license: document licenses sanlock: client align and init sanlock: write request record sanlock: request struct magic and version numbers sanlock: set bitmap for requests sanlock: examine resource requests sanlock: update man page sanlock: remove old comment sanlock: renaming functions sanlock: optimize paxos wait sanlock: use flags in struct resource sanlock: restructure lockspace checks sanlock: remove BLOCK_WD force mode libsanlock: fix function stubs sanlock: new status and host_status sanlock: improve status output sanlock: status output sorting sanlock: SIGTERM and SIGKILL for REQ_KILL_PID sanlock: add flag RESTRICT_SIGKILL sanlock: setup fewer aio events sanlock: move cmd processing sanlock: suppress log messages sanlock: rename source files sanlock: improve killing pids sanlock: fix log_dump version 1.8 sanlock: quick host_id reacquire sanlock: add force option to shutdown command simpler copyright line default to GPLv2+ for our original files sanlock: improve daemon permission errors add systemd files fixing up init stuff release 1.9 sanlock: setmode Revert "sanlock: setmode" sanlock: fix error exit sanlock: fix debug line init scripts: fix path to restorecon sanlock: shared mode for leases sanlock: fix missing close_disks sanlock: fix problem in paxos sanlock: add paxos sanity check sanlock: fix leaking fd sanlock: change to paxos algorithm sanlock: change ondisk version sanlock: remove log noise sanlock: ignore SIGTERM if lockspaces exist sanlock: quiet more error messages sanlk_load: munging variable names sanlk_load: add shared locks sanlock: kill client connection on recv error sanlk_load: ignore release errors sanlock: set sector_size in shared tokens sanlock man page: mention SH release 2.0 sanlock: clean up warnings sanlock: fix inquire state string sanlock: retry transient sh failures sanlock: status for all shared tokens sanlock: add a logrotate file release 2.1 python: fix path strncpy sanlock: remove physical sector size requirement sanlock: add sample sysconfig file sanlock: ASYNC flag for lockspace add and rem sanlock: UNUSED flag for lockspace rem release 2.2 sanlock.log: empty file to install from rpm Revert "sanlock.log: empty file to install from rpm" sanlock: remove limits.conf sysconfig: remove user option init: root user release 2.3 latest spec file sanlock.spec: fix exclusive arch sanlock/wdmd: use /var/log/subsys/file daemon: skip setup_groups when no -U or -G sanlock.spec: require useradd and groupadd sanlock.spec updated daemon: don't put struct space on stack daemon: fix add_lockspace that has been removed daemon: fix inquire lver daemon: graceful pid handling Revert "init: make explicit to run sanlock as root" remove spec file release 2.4 daemon: include resource.h daemon: fix lockfile ownership wdmd: use lockfile mode 644 sanlock: use lockfile mode 644 wdmd: use shm_open to prevent restart sanlock: remove umask 0 sanlock/wdmd: remove global connection daemon: extend grace time wdmd: close device when test fails wdmd: preemptive close before test fails wdmd: pet after reopen and use 1 sec interval after failure sanlock: base kill sig on last renewal clientn: add tests tests: add test-recovery script sanlock: fix paxos acquire host_id check daemon: use helper for examine request kill sanlock: show host_status for all lockspaces sanlock: fix status of lockspaces in add and rem sanlock: adjustable io timeouts sanlock: add direct next_free command sanlock: request force_mode 2 is SIGUSR1 sanlock: print escape chars in path from status release 2.5 sanlock: configurable mlockall level sanlock: change log level for startup and io timeouts sanlock: update man page sanlock: fix aborted command clearing sanlock: client add_lockspace with timeout sanlock: print command output to stdout wdmd: new script handling fence_sanlock: new code fence_sanlock: various fixes and changes fence_sanlock: variable alignment fence_sanlockd: use init script fence_sanlock: add man pages fence_sanlock: use SIGHUP for shutdown fence_sanlock: handle two node fence duel sanlock/wdmd: get version from common file wdmd: show option values in start message release 2.6 fix systemd service files wdmd: use mode 775 for run dir sanlock: clean up daemon exit error path sanlock: read and write apis for lockspace and resource sanlock: new get_lockspaces api sanlock: get_lockspaces count only sanlock: make get_lockspaces allocate space for data wdmd: dynamically select working watchdog device fence_sanlock: fix man page name of path arg sanlock: shutdown or rem_lockspace should SIGKILL sanlock: fix usage output typos release 2.7
David Weber (3): Fix order of linking Install another symlink to shared library Replace restrict field name with restricted
Fabio M. Di Nitto (15): build: sanlock should link with libsanlock build: install shared lib header files and fix DESTDIR usage build: drop rpm target spec file: do first cut for total spec file build: fix linking with libsanlock and install target fence_sanlock: add install bits fence_sanlockd: add missing \n fence_sanlock: cleanup shell usage fence_sanlock: don't restart fence_sanlockd if it's already running fence_sanlock: add basic metadata to integrate with ccs_config_validate fence_sanlock: improve action_on error checking and report fence_sanlock: unify code and silence some operations fence_sanlockd init: cleanup, remove hardcoded paths and use system service fence_sanlock: fix build to be selfcontained systemd: add fence_sanlockd service file
Federico Simoncelli (68): rpm: sync specfile with fedora rpm: add sanlock_admin.h header rpm: add the lib package, install the initscripts python: remove unused python code python: add python binding python: release the gil during sanlock operations python: wrap sanlock extension with a module rpm: add python binding package python: pass a lockspace copy to str_to_lockspace makefile: fix install typo rpm: add sanlock_direct header python: add sanlock init functions and exception direct: close disks after initialization python: register process only once daemon: configurable socket permissions rpm: add sanlock user and group python: exceptions must contain the errno rpm: add missing libaio-devel dependency rpm: add daemon options in the init file python: add missing aio library python: add get_alignment function libs: include libsanlock_direct into libsanlock python: align num_hosts and max_hosts defaults python: expose sanlock file descriptor python: improve error reporting python: parse lockspaces and resources natively python: add usage example python: initial support for sanlock errors python: document the sanlock module python: module cleanup build: fix documentation install path client: return appropriate errno on failure python: expose errno in the exception python: acquire leases for other processes sanlock: implement the inq_lockspace command python: add the inq_lockspace command binding misc: run sanlock daemon as sanlock user wdmd: use getopt to parse the command line wdmd: make socket group ownership configurable python: add shared resource parameter to acquire python: release leases for other processes python: ASYNC flag for lockspace add and rem python: UNUSED flag for lockspace rem log: add full time and date to the log messages sanlock: set the supplementary groups at startup log: add the thread id in the log messages sanlock: fix an rv check typo in setup_groups init: add a stop timeout for the sanlock service build: add a generic rpm spec file init: make explicit to run sanlock as root wdmd: load the softdog module when needed sanlock: WAIT flag for sanlock_inq_lockspace daemon: drop root privileges and use the helper init: use checkpid when stopping the services sanlock: expose sanlock path import and export utils sanlock: configuring the core dump output python: fix the tuple parsing for py_add_lockspace sanlock: use signal handler for all terminating signals systemd: add wdmd dependency for sanlock wdmd: trap also SIGINT for a clean exit wdmd: make the watchdog device configurable python: fix typo for the offset parameter python: add write lockspace and resource python: add read lockspace and resource wdmd: fix miscellaneous build warnings misc: add wdmd to gitignore python: fix multiple issues reported by cpychecker python: add get_lockspaces
Saggi Mizrahi (25): Added the begining of the testing and debugging tools Better handling of max hosts sync_manager: Updated tests to work with new lease struct sync_manager: fixed skipping first arg in command sync_manager: acquire and release actions sync_manager: minor fixes sync_manager: renamed stuff sync_manager: made acquire synchronous again sync_manager: added set_host_id action sync_manager: use kill(0) for secondary pid check sync_manager: make rpm and install sync_manager: spec file update sync_manager: Allow longer resource names sync_manager: allow repeated set_host_id sync_manager: Added escaping for the leases arg sync_manager: Created the python bindings for sync_manager sync_manager: listener socket permissions sync_manager: Updated python binding and tests sync_manager: Made 'token' a const in log_level sync_manager: refactor messaging system sync_manager: use getsockopt PEERCRED Fix various build warnings Tidy up some copy pasted code Set constness in some places Add a gitignore file
sanlock-devel@lists.fedorahosted.org