which then changes SIGRTMIN. It is also possible for bash to leave
some real time signals blocked at startup. This fixes both problems.
(This used to be commit
8d45bf644aecb6993c2a82b86a4527b33029ed8f)
#define SIGCLD SIGCHLD
#endif
+#ifndef SIGRTMIN
+#define SIGRTMIN 32
+#endif
+
#ifndef MAP_FILE
#define MAP_FILE 0
#endif
#ifndef RT_SIGNAL_NOTIFY
-#define RT_SIGNAL_NOTIFY 34
+#define RT_SIGNAL_NOTIFY (SIGRTMIN+2)
#endif
#ifndef F_SETSIG
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;
}
#endif
#ifndef RT_SIGNAL_LEASE
-#define RT_SIGNAL_LEASE 33
+#define RT_SIGNAL_LEASE (SIGRTMIN+1)
#endif
#ifndef F_SETSIG
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;