The Samba-Bugzilla – Attachment 4580 Details for
Bug 6651
smbd SIGSEGV when breaking oplocks
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Proposed fix for 3.4.1 and master.
look (text/plain), 1.64 KB, created by
Jeremy Allison
on 2009-08-20 19:31:30 UTC
(
hide
)
Description:
Proposed fix for 3.4.1 and master.
Filename:
MIME Type:
Creator:
Jeremy Allison
Created:
2009-08-20 19:31:30 UTC
Size:
1.64 KB
patch
obsolete
>diff --git a/lib/tevent/tevent_signal.c b/lib/tevent/tevent_signal.c >index 4a58a8b..fdbe96a 100644 >--- a/lib/tevent/tevent_signal.c >+++ b/lib/tevent/tevent_signal.c >@@ -304,24 +304,12 @@ int tevent_common_check_signal(struct tevent_context *ev) > #ifdef SA_SIGINFO > if (se->sa_flags & SA_SIGINFO) { > int j; >+ /* count can never be > SA_INFO_QUEUE_COUNT */ > for (j=0;j<count;j++) { >- /* note the use of the sig_info array as a >- ring buffer */ >- int ofs = ((count-1) + j) % SA_INFO_QUEUE_COUNT; >- se->handler(ev, se, i, 1, >- (void*)&sig_state->sig_info[i][ofs], >+ se->handler(ev, se, i, 1, >+ (void*)&sig_state->sig_info[i][j], > se->private_data); > } >- if (SIG_PENDING(sig_state->sig_blocked[i])) { >- /* we'd filled the queue, unblock the >- signal now */ >- sigset_t set; >- sigemptyset(&set); >- sigaddset(&set, i); >- SIG_SEEN(sig_state->sig_blocked[i], >- sig_count(sig_state->sig_blocked[i])); >- sigprocmask(SIG_UNBLOCK, &set, NULL); >- } > if (se->sa_flags & SA_RESETHAND) { > talloc_free(se); > } >@@ -335,6 +323,19 @@ int tevent_common_check_signal(struct tevent_context *ev) > } > SIG_SEEN(sig_state->signal_count[i], count); > SIG_SEEN(sig_state->got_signal, count); >+ >+#ifdef SA_SIGINFO >+ if (SIG_PENDING(sig_state->sig_blocked[i])) { >+ /* we'd filled the queue, unblock the >+ signal now the queue is empty again */ >+ sigset_t set; >+ sigemptyset(&set); >+ sigaddset(&set, i); >+ SIG_SEEN(sig_state->sig_blocked[i], >+ sig_count(sig_state->sig_blocked[i])); >+ sigprocmask(SIG_UNBLOCK, &set, NULL); >+ } >+#endif > } > > return 1;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 6651
:
4580
|
4585
|
4586
|
4595
|
4639
|
4640
|
4647