Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Jul 2010 08:47:12 +0300
From:      Alexander Motin <mav@FreeBSD.org>
To:        Jerry Toung <jrytoung@gmail.com>, freebsd-hackers@freebsd.org
Subject:   Re: Giant free GEOM/CAM XPT
Message-ID:  <4C492CE0.3050105@FreeBSD.org>
In-Reply-To: <mailpost.1279833356.3711031.57007.mailing.freebsd.hackers@FreeBSD.cs.nctu.edu.tw>
References:  <mailpost.1279833356.3711031.57007.mailing.freebsd.hackers@FreeBSD.cs.nctu.edu.tw>

next in thread | previous in thread | raw e-mail | index | archive | help
Jerry Toung wrote:
> Hello List,
> while going through the xpt code (8.0 RELEASE), it seems to me that some
> gains can be had
> in src/sys/geom/geom_disk.c where dp->d_strategy(bp2) is surrounded by Giant
> lock. Especially in the case
> where one has 2+ controllers on the system with /dev/daXX attached to them
> during heavy I/O.

Giant locked there only if DISKFLAG_NEEDSGIANT flag is set, which da
driver is not doing.

> I am currently trying to get rid of giant there, but it branches in sys/cam
> and sys/dev/twa. Definitely not a
> trivial exercise. The dependency on Giant seems to come from the XPT code.
> 
> would be neat  if I could just use the SIM lock, which  is per controller.
> 
> Question: do you think it's worth the effort?

I think you misunderstood something. Most of CAM protected by SIM locks.
If some SIMs use Giant for that purpose - it is their own problem. But
as I can see, twa uses own lock, not Giant.

-- 
Alexander Motin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C492CE0.3050105>