From 2cf91b98f3a8c8506426728c30b1f164d581162d Mon Sep 17 00:00:00 2001 From: Pavel <68122101+red-prig@users.noreply.github.com> Date: Wed, 11 Jun 2025 00:10:49 +0300 Subject: [PATCH] + --- sys/kern/kern_rangelock.pas | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sys/kern/kern_rangelock.pas b/sys/kern/kern_rangelock.pas index 9c2643f1..fe64e848 100644 --- a/sys/kern/kern_rangelock.pas +++ b/sys/kern/kern_rangelock.pas @@ -22,12 +22,24 @@ type off_t=Int64; p_rl_q_entry=^rl_q_entry; + + TAILQ_HEAD=packed record + tqh_first:p_rl_q_entry; + tqh_last :^p_rl_q_entry; + end; + + TAILQ_ENTRY=packed record + tqe_next:p_rl_q_entry; + tqe_prev:^p_rl_q_entry; + end; + rl_q_entry=record rl_q_link :TAILQ_ENTRY; //rl_q_entry rl_q_start:off_t; rl_q___end:off_t; rl_q_flags:Integer; rl_q_count:Integer; + rl_q_td :p_kthread; end; p_rangelock=^rangelock; @@ -295,9 +307,11 @@ begin entry:=rlqentry_new(); // Assert(entry<>nil); + entry^.rl_q_flags:=mode; entry^.rl_q_start:=start; entry^.rl_q___end:=__end; + entry^.rl_q_td :=curkthread; mtx_lock(ilk^); @@ -371,6 +385,8 @@ begin entry:=cookie; + Assert(entry^.rl_q_td=curkthread); + mtx_lock(ilk^); //save