Alasdair Kergon
3b007b270d
Use CFLAGS when linking so mixed sparc builds can supply -m64
2007-01-11 17:12:27 +00:00
Alasdair Kergon
4594807a24
Use CFLAGS when linking so mixed sparc builds can supply -m64.
2007-01-11 16:23:22 +00:00
Alasdair Kergon
616c3eccfd
fix last checkin
2007-01-08 15:35:08 +00:00
Alasdair Kergon
5b95f17814
Lots of dmevent changes.
...
Export dm_basename().
Cope with a trailing space when comparing tables prior to possible reload.
2007-01-08 15:18:52 +00:00
Alasdair Kergon
6032a223f4
Add dmeventd_mirror register_mutex, tidy initialisation & add memlock.
2007-01-08 14:24:20 +00:00
Alasdair Kergon
0c8569edea
Fix dmeventd mirror to cope if monitored device disappears.
2006-12-20 14:35:02 +00:00
Patrick Caulfield
e3e6eba1aa
Fix gulm operation of clvmd. including a hang when attempting to
...
exclusively lock an LV that is already locked no another node.
2006-12-11 14:00:26 +00:00
Patrick Caulfield
47436a42df
Fix hang in clvmd if a pre-command failed. The pre/post thread was getting
...
out of sync in this instance and would not quit.
2006-12-11 13:48:41 +00:00
Alasdair Kergon
a951e97ae9
clvmd ia64 alignment fixes etc. (pjc)
2006-12-01 23:10:26 +00:00
Alasdair Kergon
0357f18ef0
Fix VG clustered read locks to use PR not CR.
...
VG metadata reads were not being locked out during metadata updates.
2006-12-01 22:48:47 +00:00
Patrick Caulfield
a16f48e31a
Always compile debug logging into clvmd as it's too useful to
...
restrict to just developers.
-d will switch it on and run the daemon in the foreground
2006-11-30 13:19:42 +00:00
Patrick Caulfield
bd8be78c09
Add -T (startup timeout) switch to clvmd
2006-11-30 09:44:07 +00:00
Jonathan Earl Brassow
56b7f2686e
- likely cut and paste error. Fix wrong function name in debug
...
output.
2006-10-24 18:49:31 +00:00
Patrick Caulfield
efa483c599
Add clvmd call to return the cluster name.
2006-10-09 14:11:57 +00:00
Patrick Caulfield
44e0456766
Use strncpy rather than strcpy
2006-10-06 10:06:37 +00:00
Patrick Caulfield
e37a241536
Fix clvmd bug that could cause it to die when a node with a long name crashed.
2006-10-06 10:06:10 +00:00
Patrick Caulfield
2a7f7fc1c9
Vastly improve the errors returned to the user from clvmd.
...
It now captures the error messages that are generated and returns them
in the reply packet rather than just telling the user to check syslog.
2006-10-05 13:55:50 +00:00
Patrick Caulfield
13583874fc
Add -R switch to clvmd.
...
This option will instruct all the clvmd daemons in the cluster to reload their device cache
2006-10-04 08:22:16 +00:00
Patrick Caulfield
b499b916ca
Stop clvmd complaining about nodes that have left the cluster
2006-08-24 12:45:05 +00:00
Patrick Caulfield
8810d0811a
Add needed new parameter to create_toolcontext().
2006-08-22 09:49:20 +00:00
Alasdair Kergon
7d7736b7b4
Add dm_split_words() and dm_split_lvm_name() to libdevmapper.
2006-08-21 12:07:03 +00:00
Alasdair Kergon
f1dc5cc99b
Add mutex to dmeventd_mirror to avoid concurrent execution.
2006-07-04 18:57:27 +00:00
Alasdair Kergon
2293567c8c
Fix lvcreate corelog validation.
...
Add --config for overriding most config file settings from cmdline.
Quote arguments when printing command line.
Remove linefeed from 'initialising logging' message.
Add 'Completed' debug message.
Don't attempt library exit after reloading config files.
Always compile with libdevmapper, even if device-mapper is disabled.
2006-05-16 16:48:31 +00:00
Patrick Caulfield
20b4c02b89
Add needed include.
2006-05-15 12:32:08 +00:00
Alasdair Kergon
366a68282f
fix compile
2006-05-15 11:56:15 +00:00
Alasdair Kergon
3e3d5d8593
Add --monitor to vgcreate and lvcreate to control dmeventd registration.
...
Propagate --monitor around cluster.
Filter LCK_NONBLOCK in clvmd lock_vg.
2006-05-12 19:16:48 +00:00
Alasdair Kergon
aeb2c277a8
Add mirror log fault-handling policy.
2006-05-11 19:45:53 +00:00
Alasdair Kergon
2a99b5b816
Avoid a dmeventd compiler warning.
2006-05-11 19:08:02 +00:00
Alasdair Kergon
526a3c2186
Propagate nosync flag around cluster.
2006-05-11 19:05:21 +00:00
Alasdair Kergon
6657d5b66b
Move DEFS into configure.h.
...
Remove dmsetup line buffer limitation.
2006-05-10 19:38:25 +00:00
Alasdair Kergon
72b2cb613a
Make SIZE_SHORT the default for display_size().
...
Fix some memory leaks in error paths found by coverity.
Use C99 struct initialisers.
Move DEFS into configure.h.
Clean-ups to remove miscellaneous compiler warnings.
2006-05-09 21:23:51 +00:00
Alasdair Kergon
dfb5da937e
tweak .so loading messages; extra device_exists() sanity check
2006-04-28 14:08:04 +00:00
Alasdair Kergon
b4cbeca164
fix makefile
2006-04-19 17:32:05 +00:00
Alasdair Kergon
126a5696f2
fix makefile
2006-04-19 17:24:00 +00:00
Alasdair Kergon
06541daa12
fix makefile
2006-04-19 17:15:08 +00:00
Alasdair Kergon
0c8ff3ad63
make pkgconfig installation step optional, and clean up generated files
2006-04-19 16:38:56 +00:00
Alasdair Kergon
8a2fc58645
Check for libsepol.
...
Add some cflow & scope support.
Separate out DEFS from CFLAGS.
Remove inlines and use unique function names.
2006-04-19 15:33:07 +00:00
Alasdair Kergon
d81e3d0bad
configure/makefile tidying + pkg-config support.
2006-04-19 15:23:10 +00:00
Patrick Caulfield
a31676722b
allow new cman to shutdown on request.
2006-03-21 10:31:08 +00:00
Patrick Caulfield
70ca1c94f1
Make sure it compiles if gulm is NOT selected AND using an old libcman.h
2006-03-15 08:36:11 +00:00
Patrick Caulfield
e7f55bb4c0
Get clvmd to use libcman rather than cman ioctl calls. This makes
...
it forward-compatible with the new userland CMAN in cluster head.
To build it you will need the libcman header & library installed.
2006-03-14 14:18:34 +00:00
Alasdair Kergon
9f5d8283a9
Propagate partial mode around cluster.
2006-03-09 22:34:13 +00:00
Alasdair Kergon
9ab7701215
dmeventd thread/fifo fixes.
2006-03-09 21:33:59 +00:00
Alasdair Kergon
ed2b1bc5eb
post-release
...
fix dmeventd build
2006-02-08 23:23:19 +00:00
Alasdair Kergon
7ffe8aab61
remove a dmeventd_mirror syslog message
2006-02-06 19:34:45 +00:00
Alasdair Kergon
768255c061
fix tabs
2006-02-03 21:34:11 +00:00
Alasdair Kergon
a0d0eda9b3
tweak clvmd makefile
2006-02-03 21:31:00 +00:00
Alasdair Kergon
d8f0eeb039
Temporary device_exists() fixes.
2006-02-03 19:44:59 +00:00
Alasdair Kergon
4206c3db2e
Use supplied full dso name.
2006-02-03 19:41:34 +00:00
Alasdair Kergon
93dc5190bc
fix libdevmapper-event-mirror liblvm2cmd link search path
2006-02-03 14:48:38 +00:00
Alasdair Kergon
e4c11ad108
Only do lockfs filesystem sync when suspending snapshots.
...
Switchover library building to use LIB_SUFFIX.
2006-01-31 14:52:30 +00:00
Alasdair Kergon
5e3bd86778
Rename _log to dm_log and export.
...
Fix misc compile-time warnings.
2006-01-31 14:50:38 +00:00
Alasdair Kergon
db204c51a6
Tidy some comments/messages.
2006-01-27 20:52:21 +00:00
Alasdair Kergon
1ff0ef6945
Fix renamed dso.
2006-01-27 20:51:36 +00:00
Alasdair Kergon
6463fa2993
dmeventd thread termination fix
2006-01-27 20:50:01 +00:00
Alasdair Kergon
fc2b1f2ce9
some init_client cleanup
2006-01-27 20:49:13 +00:00
Alasdair Kergon
f0b4c52d4a
More dmeventd mirror cleanups.
2006-01-27 20:48:19 +00:00
Alasdair Kergon
17840c21c3
Remove avoidable dmeventd mirror forking.
2006-01-27 20:47:20 +00:00
Alasdair Kergon
7000cdb5ea
Fix libdevmapper event daemon_running status.
2006-01-27 20:46:06 +00:00
Alasdair Kergon
3bee15b0fb
Replace deprecated signal functions.
2006-01-27 20:45:17 +00:00
Alasdair Kergon
cb49c5a03f
Use split_dm_name in dmeventd mirror code.
2006-01-27 20:43:52 +00:00
Alasdair Kergon
132a76156e
fix dmevent registration return codes
2006-01-27 20:01:45 +00:00
Alasdair Kergon
74892f5c3d
read/write loop fixes
2005-12-19 22:56:47 +00:00
Alasdair Kergon
ce7ed2c0a9
Change dm_tree_node_add_mirror_target_log parm order
2005-12-19 21:03:17 +00:00
Alasdair Kergon
e66f1197d6
comments
2005-12-13 13:34:31 +00:00
Alasdair Kergon
3c588200fe
Fix dmeventd build.
2005-12-05 11:16:48 +00:00
Alasdair Kergon
16da207de2
fix exports
2005-12-02 21:00:33 +00:00
Alasdair Kergon
06f62ad1e4
Add mirror dmeventd library
2005-12-02 19:52:06 +00:00
Alasdair Kergon
dd3ec4e87a
dmeventd updates
2005-12-02 15:39:16 +00:00
Patrick Caulfield
47b59176e0
Make it compile with debug enabled.
2005-11-10 08:49:29 +00:00
Patrick Caulfield
c650c19805
Use hash functions in libdevmapper.
2005-11-09 09:24:10 +00:00
Alasdair Kergon
2262b32057
Use hash, bitset, malloc, pool from libdevmapper.
2005-10-16 23:03:59 +00:00
Patrick Caulfield
fe6c78629d
clvmd no longer takes out locks for non-clusteed LVs,
...
and non-clustered LVs are only activated on the local node.
2005-08-16 08:25:09 +00:00
Alasdair Kergon
07d318310b
Prepare tools to support clustered mirrors.
2005-08-14 23:18:28 +00:00
Patrick Caulfield
4bb7474e8a
Don't send a signal to kill threads that are idling nicely as it upsets them.
...
This seems to cure bz#159727 on SMP systems.
Alasdair, can you include this patch in the lvm2-cluster package please ?
2005-08-09 10:39:57 +00:00
Benjamin Marzinski
7bfd1238ce
Fixing some makesfiles, so that the correct things link against pthreads.
...
Also changed dmevent so that in no longer links against pthreads, and
dynamically loads libdmevent.so. Everything seems to work just fine like this.
2005-06-14 19:06:26 +00:00
Patrick Caulfield
470b46cee1
Log an error if clvmd can't resolve a host name got from CCS
...
Fix potential spin loop in clvmd
2005-06-14 10:35:02 +00:00
Patrick Caulfield
5a3f4a794d
Don't defer closing of FDs in clvmd as it can cause trouble.
2005-06-13 10:16:21 +00:00
Patrick Caulfield
eeee8cfd31
Be a bit smarter about reading stuff from the sockets
2005-06-10 09:11:01 +00:00
Benjamin Marzinski
5469414bf8
Timeout event implementation:
...
The daemon side of this is mostly the same as the patch I sent out. To select
a timeout period different than the default and to get the timeout period,
I added two library calls, dm_set_event_timeout() and dm_get_event_timeout().
If people are against them, the other option is to tack extra arguments onto
dm_regiser_for_event() and dm_get_registered_device(). I also added a
-t option to dmevent, so people can try out timeouts.
2005-06-09 18:40:49 +00:00
AJ Lewis
8e6230ddd9
Change the multilog code to toggle between async and sync writes for all
...
log types. This means the threaded_syslog type is no longer valid. A new
fxn multilog_async is available to toggle between the two modes. If an
app is compiled without pthreads and tries to use async logging, no logging
will occur while async is enabled.
dmeventd has been modified to use the new code
I'm not positive I like the way the async_logger code calls the log fxn,
but it works for now. Suggestions for other ways to do it would be helpful
2005-05-25 21:08:36 +00:00
Heinz Mauelshagen
9e0419057c
Exit after last unregister_for_event()
2005-05-20 13:53:26 +00:00
AJ Lewis
bca1803fea
o Changed the multilog API a bit (I warned you)
...
- multilog_add_type, multilog_del_type, multilog_custom, and
multilog_init_verbose all have different arguments.
- Primary change is that caller only passes in config info, and the
lib keeps track of state internally. No more exporting of
'struct log_data'.
- Custom callers now only get the custom data pointer passed into their
log fxn (that is set with multilog_custom)
- Added basic README that describes libmultilog
2005-05-09 18:44:35 +00:00
Benjamin Marzinski
f60f128448
oops. Those are char **'s not char *'s
2005-05-04 19:24:03 +00:00
Benjamin Marzinski
cbac299f5b
fixed dmevent so that it doesn't do a double free when you run
...
# dmevent -l
Also, changed the behaviour of dm_get_registered_device(), so that it doesn't
change the pointer you passed in without freeing the memory on a non-next call,
and doesn't free your pointer without setting it to NULL on a failed next call.
2005-05-04 18:53:28 +00:00
Heinz Mauelshagen
40773cd620
o libmultilog needs introducing of list locking in order to stand
...
multilog_add_type()/multilog_del_type cycles correctly.
o fixed segfault in multilog_add_type()
o fixed test-multilog.c
o cleaned up libmultilog (list macros, indentation, braces, comments)
2005-05-04 11:52:07 +00:00
Jonathan Earl Brassow
1862e88ffa
- make noop use multilog
...
- add event_nr to thread_status struct and set appropriately so that the
thread actually waits for an event
- essentially make error_detected return true. Let the DSOs determine
how to interpret the status info
2005-05-04 01:57:31 +00:00
AJ Lewis
cd4355d8f4
o stick multilog into the dm-event lib and dmeventd code again
...
o more tweaks to libmultilog calls - the api isn't set in stone yet, so
don't get too comfortable.
o not sure the dmeventd in device-mapper/dmeventd works - i've been using
the one in lib/event/
o currently both daemons are set to log only to syslog
2005-05-03 21:29:13 +00:00
Heinz Mauelshagen
1d76599a94
working dm_get_registered_device(). dmevent.c update to use it.
2005-05-03 16:15:20 +00:00
Heinz Mauelshagen
088e6e29da
more dm_get_registered_device() code
2005-05-03 13:50:42 +00:00
Benjamin Marzinski
4396ee160a
dmeventd was looking for dsos with libdmeventd<name>.so
...
The Makefile turned noop.c into libdmeventnoop.so
The Makefile now turns noop.c into libdmeventdnoop.so
2005-05-02 19:34:25 +00:00
Benjamin Marzinski
64f4fd6e2b
stopped printing a string after we erased the pointer to it.
2005-05-02 18:43:23 +00:00
Benjamin Marzinski
33c1c56800
removed the -lmultilog for now.
2005-05-02 18:42:07 +00:00
Benjamin Marzinski
1e8221b3ad
get the makefile to clean up the .o's
2005-05-02 17:41:54 +00:00
Heinz Mauelshagen
c4763cf8c9
Introduce exit() in main() and cleanup signal settings for parent/child
2005-05-02 11:02:19 +00:00
Benjamin Marzinski
d4d51bd6d3
more variable initialization.
2005-04-29 22:12:09 +00:00
Heinz Mauelshagen
d54da54d67
o checking in instrumented code for AJ to follow up on comms and logging
...
o changed
int dm_get_next_registered_device(char **dso_name, char **device,
enum event_type *events);
to
int dm_get_registered_device(char **dso_name, char **device,
enum event_type *events, int next)
so that the daemon is able to retrive the next one of the list without
running into locking issues.
o changed dmevent.c to use dm_get_registered_device()
o couldn't test this yet because of the comms issues
(daemon exits in do_process_request())
2005-04-29 14:56:35 +00:00
Heinz Mauelshagen
96c5c1f9ea
first changes to get comms back to work after flock changes
2005-04-29 13:41:25 +00:00
Heinz Mauelshagen
b0e25eef22
minor cleanup
2005-04-29 10:58:34 +00:00
AJ Lewis
871e7fcd1a
o Build dmeventd against multilog
2005-04-28 22:47:52 +00:00