1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-22 17:35:59 +03:00

Improve logging

Use %m for strerror.
Switch to use 0 for fail return code.
This commit is contained in:
Zdenek Kabelac 2012-03-01 22:06:18 +00:00
parent 17c3bf7b22
commit 1eb1626f08
2 changed files with 22 additions and 22 deletions

View File

@ -1,5 +1,6 @@
Version 1.02.73 - Version 1.02.73 -
==================================== ====================================
Improve logging for fifo startup in dmeventd.
Add few pointer validation in dmsetup. Add few pointer validation in dmsetup.
Support dm_task_get_driver_version() query without version string. Support dm_task_get_driver_version() query without version string.
Log failure of pthread_join when cleaning unused threads in dmeventd. Log failure of pthread_join when cleaning unused threads in dmeventd.

View File

@ -1245,67 +1245,66 @@ static void _init_fifos(struct dm_event_fifos *fifos)
/* Open fifos used for client communication. */ /* Open fifos used for client communication. */
static int _open_fifos(struct dm_event_fifos *fifos) static int _open_fifos(struct dm_event_fifos *fifos)
{ {
int orig_errno;
struct stat st; struct stat st;
/* Create client fifo. */ /* Create client fifo. */
(void) dm_prepare_selinux_context(fifos->client_path, S_IFIFO); (void) dm_prepare_selinux_context(fifos->client_path, S_IFIFO);
if ((mkfifo(fifos->client_path, 0600) == -1) && errno != EEXIST) { if ((mkfifo(fifos->client_path, 0600) == -1) && errno != EEXIST) {
syslog(LOG_ERR, "%s: Failed to create client fifo.\n", __func__); syslog(LOG_ERR, "%s: Failed to create client fifo %s: %m.\n",
orig_errno = errno; __func__, fifos->client_path);
(void) dm_prepare_selinux_context(NULL, 0); (void) dm_prepare_selinux_context(NULL, 0);
stack; return 0;
return -orig_errno;
} }
/* Create server fifo. */ /* Create server fifo. */
(void) dm_prepare_selinux_context(fifos->server_path, S_IFIFO); (void) dm_prepare_selinux_context(fifos->server_path, S_IFIFO);
if ((mkfifo(fifos->server_path, 0600) == -1) && errno != EEXIST) { if ((mkfifo(fifos->server_path, 0600) == -1) && errno != EEXIST) {
syslog(LOG_ERR, "%s: Failed to create server fifo.\n", __func__); syslog(LOG_ERR, "%s: Failed to create server fifo %s: %m.\n",
orig_errno = errno; __func__, fifos->server_path);
(void) dm_prepare_selinux_context(NULL, 0); (void) dm_prepare_selinux_context(NULL, 0);
stack; return 0;
return -orig_errno;
} }
(void) dm_prepare_selinux_context(NULL, 0); (void) dm_prepare_selinux_context(NULL, 0);
/* Warn about wrong permissions if applicable */ /* Warn about wrong permissions if applicable */
if ((!stat(fifos->client_path, &st)) && (st.st_mode & 0777) != 0600) if ((!stat(fifos->client_path, &st)) && (st.st_mode & 0777) != 0600)
syslog(LOG_WARNING, "Fixing wrong permissions on %s", syslog(LOG_WARNING, "Fixing wrong permissions on %s: %m.\n",
fifos->client_path); fifos->client_path);
if ((!stat(fifos->server_path, &st)) && (st.st_mode & 0777) != 0600) if ((!stat(fifos->server_path, &st)) && (st.st_mode & 0777) != 0600)
syslog(LOG_WARNING, "Fixing wrong permissions on %s", syslog(LOG_WARNING, "Fixing wrong permissions on %s: %m.\n",
fifos->server_path); fifos->server_path);
/* If they were already there, make sure permissions are ok. */ /* If they were already there, make sure permissions are ok. */
if (chmod(fifos->client_path, 0600)) { if (chmod(fifos->client_path, 0600)) {
syslog(LOG_ERR, "Unable to set correct file permissions on %s", syslog(LOG_ERR, "Unable to set correct file permissions on %s: %m.\n",
fifos->client_path); fifos->client_path);
return -errno; return 0;
} }
if (chmod(fifos->server_path, 0600)) { if (chmod(fifos->server_path, 0600)) {
syslog(LOG_ERR, "Unable to set correct file permissions on %s", syslog(LOG_ERR, "Unable to set correct file permissions on %s: %m.\n",
fifos->server_path); fifos->server_path);
return -errno; return 0;
} }
/* Need to open read+write or we will block or fail */ /* Need to open read+write or we will block or fail */
if ((fifos->server = open(fifos->server_path, O_RDWR)) < 0) { if ((fifos->server = open(fifos->server_path, O_RDWR)) < 0) {
stack; syslog(LOG_ERR, "Failed to open fifo server %s: %m.\n",
return -errno; fifos->server_path);
return 0;
} }
/* Need to open read+write for select() to work. */ /* Need to open read+write for select() to work. */
if ((fifos->client = open(fifos->client_path, O_RDWR)) < 0) { if ((fifos->client = open(fifos->client_path, O_RDWR)) < 0) {
stack; syslog(LOG_ERR, "Failed to open fifo client %s: %m", fifos->client_path);
close(fifos->server); if (close(fifos->server))
return -errno; syslog(LOG_ERR, "Failed to close fifo server %s: %m", fifos->server_path);
return 0;
} }
return 0; return 1;
} }
/* /*
@ -1973,7 +1972,7 @@ int main(int argc, char *argv[])
pthread_mutex_init(&_global_mutex, NULL); pthread_mutex_init(&_global_mutex, NULL);
if (!_systemd_activation && _open_fifos(&fifos)) if (!_systemd_activation && !_open_fifos(&fifos))
exit(EXIT_FIFO_FAILURE); exit(EXIT_FIFO_FAILURE);
/* Signal parent, letting them know we are ready to go. */ /* Signal parent, letting them know we are ready to go. */