[GIANT-LOCKED] even without D_NEEDGIANT

Jimmy Olgeni olgeni at olgeni.com
Fri Jan 18 11:39:55 UTC 2013


Hello list,

At $DAILY_JOB I got involved with an ASI board that didn't have any 
kind of FreeBSD support, so I ended up writing a driver for it.

If you try to ignore the blatant style(9) violations (of which there 
are many, hopefully on the way to be cleaned up) it seems to work fine.

However, I noticed that when loading the driver I always get a
message about the giant lock being used, even if D_NEEDGIANT is not
specified anywhere.

The actual output when loading is this (FreeBSD 9-STABLE i386):

dektec0: <DekTec DTA-145> mem 0xfeaff800-0xfeafffff irq 16 at device 13.0 on pci0
dektec0: [GIANT-LOCKED]
dektec0: [ITHREAD]
dektec0: board model 145, firmware version 2 (tx: 0, rx: 2), tx fifo 16384 MB

Source code here:

   https://github.com/olgeni/freebsd-dektec/blob/master/dektec.c

Can anybody offer a clue about what could be triggering the GIANT
requirement? Could I be doing something that has this, and possibly
other, unintended side effects?

-- 
jimmy


More information about the freebsd-hackers mailing list