1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-30 13:18:05 +03:00

it is possible for some of the real time signals to be used by glibc,

which then changes SIGRTMIN. It is also possible for bash to leave
some real time signals blocked at startup. This fixes both problems.
This commit is contained in:
Andrew Tridgell 0001-01-01 00:00:00 +00:00
parent 662e1bea1b
commit 8d45bf644a
3 changed files with 12 additions and 2 deletions

View File

@ -891,6 +891,10 @@ struct printjob;
#define SIGCLD SIGCHLD
#endif
#ifndef SIGRTMIN
#define SIGRTMIN 32
#endif
#ifndef MAP_FILE
#define MAP_FILE 0
#endif

View File

@ -39,7 +39,7 @@ static SIG_ATOMIC_T signals_received;
#ifndef RT_SIGNAL_NOTIFY
#define RT_SIGNAL_NOTIFY 34
#define RT_SIGNAL_NOTIFY (SIGRTMIN+2)
#endif
#ifndef F_SETSIG
@ -233,6 +233,9 @@ struct cnotify_fns *kernel_notify_init(void)
cnotify.remove_notify = kernel_remove_notify;
cnotify.select_time = -1;
/* the signal can start off blocked due to a bug in bash */
BlockSignals(False, RT_SIGNAL_NOTIFY);
return &cnotify;
}

View File

@ -39,7 +39,7 @@ static SIG_ATOMIC_T fd_pending_array[FD_PENDING_SIZE];
#endif
#ifndef RT_SIGNAL_LEASE
#define RT_SIGNAL_LEASE 33
#define RT_SIGNAL_LEASE (SIGRTMIN+1)
#endif
#ifndef F_SETSIG
@ -296,6 +296,9 @@ struct kernel_oplocks *linux_init_kernel_oplocks(void)
koplocks.msg_waiting = linux_oplock_msg_waiting;
koplocks.notification_fd = -1;
/* the signal can start off blocked due to a bug in bash */
BlockSignals(False, RT_SIGNAL_LEASE);
DEBUG(3,("Linux kernel oplocks enabled\n"));
return &koplocks;