Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Sep 2004 04:07:04 -0000
From:      Dennis Berger <db@nipsi.de>
To:        pf4freebsd@freelists.org
Subject:   [pf4freebsd] if_fxp.c.patch
Message-ID:  <40D760E5.7000903@nipsi.de>

next in thread | raw e-mail | index | archive | help
Hi,
today I tried the fxp driver patch and run into a kernelpanic if altq is 
enabled.
I guess it's something strange with the locking cause the debugger stops at
fxp_start_body();
this is exactly the point where a lock is needed, or whatever there 
happens...

pyun discovered similar problems months ago, he fixed it by modifying 
the LOCK macro.
to something like this

#define MY_LOCK     do { \
                                    if(!mtx_owned(&lock) \
                                        mtx_lock(&lock); \
                                     } while(0)
and
#define MY_UNLOCK do { \
                                     if(mtx_owned(&lock)); \
                                     mtx_unlock(&lock); \
                                     } while(0)

I don't know why he have to check if the lock is held...

greets Dennis




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40D760E5.7000903>