Re: WITNESS + WITNESS_SKIPSPIN = panic

2001-04-26 Thread Dag-Erling Smorgrav

Peter Jeremy [EMAIL PROTECTED] writes:
 Is there any progress on fixing this?

I posted a patch a couple of months ago.  Search the archives.

DES
-- 
Dag-Erling Smorgrav - [EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: WITNESS + WITNESS_SKIPSPIN = panic

2001-04-16 Thread Peter Jeremy

On 2001-Apr-14 18:54:28 -0700, John Baldwin [EMAIL PROTECTED] wrote:

On 14-Apr-01 Peter Jeremy wrote:
 Is there any progress on fixing this?
 
 Peter

It panics?  I'll see if I can reproduce this on Monday.  I never use skipspin.

A similar problem was reported here in mid-March, ending with the
following message:

On Mon, 12 Mar 2001 10:49:51 -0800 (PST), in [EMAIL PROTECTED], 
John Baldwin [EMAIL PROTECTED] wrote:
Just don't use the skipspin stuff, it shouldn't hurt at all.  The new witness
code will hopefully be in by the end of the week.  *crosses fingers*

I bumped into the same problem last week and couldn't find anything
that looked like a change in the skipspin behaviour since mid-March.

Having looked in more detail at the previous thread, I suspect I may
be seeing something different.  In my case, the kernel is panicing
very early during the boot process in either line 302 or 305 of
/sys/kern/subr_witness.c in witness_initialize():

 299 /* First add in all the specified order lists. */
 300 for (order = order_lists; order-w_name != NULL; order++) {
 301 w = enroll(order-w_name, order-w_class);
 302 w-w_file = "order list";
 303 for (order++; order-w_name != NULL; order++) {
 304 w1 = enroll(order-w_name, order-w_class);
 305 w1-w_file = "order list";
 306 itismychild(w, w1);
 307 w = w1;
 308 }
 309 }

The problem is that enroll() will return NULL for spinlocks when
witness_skipspin is set, but the above code always assumes it
can de-reference the result from enroll().  (There are two other
calls to enroll() where a NULL return appears to be acceptable).

I don't understand the mutex initialisation well enough to be able
to readily work out the correct fix.

Peter

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: WITNESS + WITNESS_SKIPSPIN = panic

2001-04-16 Thread John Baldwin


On 16-Apr-01 Peter Jeremy wrote:
 On 2001-Apr-14 18:54:28 -0700, John Baldwin [EMAIL PROTECTED] wrote:

On 14-Apr-01 Peter Jeremy wrote:
 Is there any progress on fixing this?
 
 Peter

It panics?  I'll see if I can reproduce this on Monday.  I never use
skipspin.
 
 A similar problem was reported here in mid-March, ending with the
 following message:
 
 On Mon, 12 Mar 2001 10:49:51 -0800 (PST), in
 [EMAIL PROTECTED], John Baldwin [EMAIL PROTECTED] wrote:
Just don't use the skipspin stuff, it shouldn't hurt at all.  The new witness
code will hopefully be in by the end of the week.  *crosses fingers*
 
 I bumped into the same problem last week and couldn't find anything
 that looked like a change in the skipspin behaviour since mid-March.
 
 Having looked in more detail at the previous thread, I suspect I may
 be seeing something different.  In my case, the kernel is panicing
 very early during the boot process in either line 302 or 305 of
 /sys/kern/subr_witness.c in witness_initialize():
 
  299 /* First add in all the specified order lists. */
  300 for (order = order_lists; order-w_name != NULL; order++) {
  301 w = enroll(order-w_name, order-w_class);
  302 w-w_file = "order list";
  303 for (order++; order-w_name != NULL; order++) {
  304 w1 = enroll(order-w_name, order-w_class);
  305 w1-w_file = "order list";
  306 itismychild(w, w1);
  307 w = w1;
  308 }
  309 }
 
 The problem is that enroll() will return NULL for spinlocks when
 witness_skipspin is set, but the above code always assumes it
 can de-reference the result from enroll().  (There are two other
 calls to enroll() where a NULL return appears to be acceptable).

Argh, ok.

 I don't understand the mutex initialisation well enough to be able
 to readily work out the correct fix.

I'll fix it later on today.

 Peter

-- 

John Baldwin [EMAIL PROTECTED] -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



WITNESS + WITNESS_SKIPSPIN = panic

2001-04-14 Thread Peter Jeremy

Is there any progress on fixing this?

Peter

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



RE: WITNESS + WITNESS_SKIPSPIN = panic

2001-04-14 Thread John Baldwin


On 14-Apr-01 Peter Jeremy wrote:
 Is there any progress on fixing this?
 
 Peter

It panics?  I'll see if I can reproduce this on Monday.  I never use skipspin.

-- 

John Baldwin [EMAIL PROTECTED] -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message