kern/65702: Kernel panic on i386 5.2.1

db db at TruNet.dk
Sun Apr 18 07:24:53 PDT 2004


Hi all

I'm not a C programmer and I have not spend much time reading the
kernel, but regarding my bug report I may have found the problem:

143  static void
144  propagate_priority(struct thread *td)
145  {
146          struct turnstile_chain *tc;
147          struct turnstile *ts;
148          struct thread *td1;
149          int pri;
150
151          mtx_assert(&sched_lock, MA_OWNED);
152          pri = td->td_priority;
153          ts = td->td_blocked;
154          for (;;) {
155                  td = ts->ts_owner;
156
157                  if (td == NULL) {
158                          /*
159                           * This really isn't quite right. Really
160                           * ought to bump priority of thread that
161                           * next acquires the lock.
162                           */
163                          return;
164                  }

According to my first mail isn't td_blocked = 0x0? And wouldn't that
make line 155 fail?

br
db


More information about the freebsd-bugs mailing list