twa is giant locked in 7-Current or everywhere?
scottl at samsco.org
Wed Aug 15 11:17:26 PDT 2007
Kris Kennaway wrote:
> On Wed, Aug 15, 2007 at 09:09:33PM +0400, Artem Kuchin wrote:
>> When i installed twas driver on 6.2-STABLE it said
>> i presumed that it measn that twa is giant-lock free.
>> Now, after installing 7-CURRENT i see
>> Aug 15 17:00:02 omni3 kernel: 3ware device driver for 9000 series storage
>> controllers, version: 3.70.03.007
>> Aug 15 17:00:02 omni3 kernel: twa0: <3ware 9000 series Storage Controller>
>> port 0x3000-0x30ff mem 0x88000000-0x89ffffff,0x8a200000-0x8a200fff irq 16
>> at devic
>> Aug 15 17:00:02 omni3 kernel: twa0: [GIANT-LOCKED]
>> Aug 15 17:00:02 omni3 kernel: twa0: [ITHREAD]
>> So, it says GIANT-LOCKED and then ITHREAD.
>> Apparently, i have no real understaning what those words mean.
>> COuld anyone explain the meaning of
>> Giant-locked is self explanatory and.. bad.
> I think 6.x doesn't display the GIANT-LOCKED messages because users
> were freaking out too much after they were added at an earlier point
> in 6.x development ("Q: why is this driver suddenly giant locked?" "A:
> It's always been giant locked, now this fact is displayed as a note to
> While it's true that a non-giant locked driver would be better, it's
> not as bad as you might think because almost nothing else requires
> giant for most workloads thesedays (see
> http://wiki.freebsd.org/SMPTODO), so in those workloads performance
> will not be worse because of it. If you are really bothered by this
> you can enable mutex profiling to check how much of a problem it is
> for you.
Just to set the facts straight, the TWA driver has always been covered
by Giant, as I explained in another part of this thread. The indication
was just hidden because it used an INTR_FAST handler.
As for performance, having Giant-free drivers is still highly important.
Not having to compete with the tty subsystem or the USB stack is very
important. My recent change to make ATAPI-CAM Giant-free made CD
burning a lot more pleasant for people.
More information about the freebsd-stable