void brl_set_have_read_oplocks(struct byte_range_lock *brl,
bool have_read_oplocks)
{
+ DEBUG(10, ("Setting have_read_oplocks to %s\n",
+ have_read_oplocks ? "true" : "false"));
SMB_ASSERT(brl->record != NULL); /* otherwise we're readonly */
brl->have_read_oplocks = have_read_oplocks;
brl->modified = true;
{
size_t data_len;
if (!br_lck->modified) {
+ DEBUG(10, ("br_lck not modified\n"));
goto done;
}
data_len += 1;
}
+ DEBUG(10, ("data_len=%d\n", (int)data_len));
+
if (data_len == 0) {
/* No locks - delete this entry. */
NTSTATUS status = dbwrap_record_delete(br_lck->record);
}
}
+ DEBUG(10, ("seqnum=%d\n", dbwrap_get_seqnum(brlock_db)));
+
done:
br_lck->modified = false;
TALLOC_FREE(br_lck->record);
talloc_get_size(br_lck->lock_data));
}
+ DEBUG(10, ("data.dsize=%d\n", (int)data.dsize));
+
if ((data.dsize % sizeof(struct lock_struct)) == 1) {
br_lck->have_read_oplocks = (data.dptr[data.dsize-1] == 1);
}
br_lock->have_read_oplocks = (data.dptr[data.dsize-1] == 1);
}
+ DEBUG(10, ("Got %d bytes, have_read_oplocks: %s\n", (int)data.dsize,
+ br_lock->have_read_oplocks ? "true" : "false"));
+
*state->br_lock = br_lock;
}
struct byte_range_lock *br_lock = NULL;
struct byte_range_lock *rw = NULL;
+ DEBUG(10, ("seqnum=%d, fsp->brlock_seqnum=%d\n",
+ dbwrap_get_seqnum(brlock_db), fsp->brlock_seqnum));
+
if ((fsp->brlock_rec != NULL)
&& (dbwrap_get_seqnum(brlock_db) == fsp->brlock_seqnum)) {
/*
bool ret;
struct share_mode_lock *lck;
+ DEBUG(10, ("remove_oplock called for %s\n",
+ fsp_str_dbg(fsp)));
+
/* Remove the oplock flag from the sharemode. */
lck = get_existing_share_mode_lock(talloc_tos(), fsp->file_id);
if (lck == NULL) {
struct share_mode_lock *lck;
struct byte_range_lock *brl;
+ DEBUG(10, ("downgrade_oplock called for %s\n",
+ fsp_str_dbg(fsp)));
+
lck = get_existing_share_mode_lock(talloc_tos(), fsp->file_id);
if (lck == NULL) {
DEBUG(0,("downgrade_oplock: failed to lock share entry for "