On Sun, 4 May 2003, Philippe Charnier wrote: > Robert Watson <rwatson_at_FreeBSD.org> wrote: > > >> 80 if (kl < 0) > >> 81 error = EINVAL; > >> 82 else > >> 83 /* XXXKSE: */ > >> 84 error = proc_read_regs(FIRST_THREAD_IN_PROC(p), &r); > >> 85 if (error == 0) > >> 86 error = uiomove(kv, kl, uio); > >> 87 PROC_LOCK(p); > >> 88 if (error == 0 && uio->uio_rw == UIO_WRITE) { > > > >Try moving the PROC_UNLOCK() call from line 79 to just after line 84 > >(i.e., before the error check and possible uiomove()). It looks like some > >similar bugs might exist in other bits of procfs. > > With your patch applied, the kernel does not panic anymore. > Thanks Ok, I've committed the fix following John's review. Please let us know if anything else like this turns up. Thanks! Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert_at_fledge.watson.org Network Associates LaboratoriesReceived on Mon May 05 2003 - 06:14:31 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:06 UTC