Samba dumps core on sigbus in notifyd.c:452 --- a/source3/smbd/notifyd/notifyd.c 2018-12-05 14:07:06.086637390 +0000 +++ b/source3/smbd/notifyd/notifyd.c 2018-12-05 15:56:41.351170680 +0000 @@ -575,6 +575,7 @@ struct notify_rec_change_msg *msg; size_t pathlen; bool ok; + struct notify_instance instance; DBG_DEBUG("Got %zu bytes from %s\n", data->length, server_id_str_buf(src, &idbuf)); @@ -585,8 +586,9 @@ return; } + memcpy(&instance, &msg->instance, sizeof(instance)); /* avoid of SIGBUS */ ok = notifyd_apply_rec_change( - &src, msg->path, pathlen, &msg->instance, + &src, msg->path, pathlen, &instance, state->entries, state->sys_notify_watch, state->sys_notify_ctx, state->msg_ctx); if (!ok) { @@ -1337,6 +1339,7 @@ struct notify_rec_change_msg *chg; size_t pathlen; bool ok; + struct notify_instance instance; ok = notifyd_parse_rec_change(r->buf.data, r->buf.length, &chg, &pathlen); @@ -1346,8 +1349,9 @@ goto fail; } + memcpy(&instance, &chg->instance, sizeof(instance)); /* avoid of SIGBUS */ ok = notifyd_apply_rec_change(&r->src, chg->path, pathlen, - &chg->instance, peer->db, + &instance, peer->db, state->sys_notify_watch, state->sys_notify_ctx, state->msg_ctx);