Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Oct 2012 08:27:23 +0530
From:      Jack <jacks.1785@gmail.com>
To:        freebsd-scsi@freebsd.org
Subject:   Re: passstart() and immediate CCBs
Message-ID:  <CACmXQA3DxafwiCp4CzaFvxnvOG4=yqj0aVmODDTb8gV0jXEknw@mail.gmail.com>
In-Reply-To: <20121012223203.GA68975@nargothrond.kdm.org>
References:  <CACmXQA141ZTRDd7DxfM41hd4idDg_uQ7%2BsWc4cZ8E%2B3aLoDJRg@mail.gmail.com> <20121012223203.GA68975@nargothrond.kdm.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Oct 13, 2012 at 4:02 AM, Kenneth D. Merry <ken@freebsd.org> wrote:

> Immediate CCBs are complete when xpt_action() returns, so no callback is
> needed.
>

 Does Immediate CCB transaction is similar to polling? I mean xpt_action() is
 called, xfer is done and then HBA asserts interrupt, the control is transfered
 back to xpt_action(), then it returns.

 Then what is the purpose of  cam_periph_ccbwait(), inside
cam_periph_runccb(), just after xpt_action().

>
> Immediate CCBs never go down to the hardware.  The priority mechanism is
> used to help determine who gets queue slots, and those are only
> needed for queued CCBs.
>

queued CCBs means non-immediate CCBs. right?

Sorry, I didn't get what do you mean by:
 " Immediate CCBs never go down to the hardware."

I guess immediate CCBs are preferred over non-immediate CCBs, in the
sense that they bypass struct cam_ed queue completely, and directly
sent to HBA driver, via xpt_action(). Is it?


Regards
-- 
Jack



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACmXQA3DxafwiCp4CzaFvxnvOG4=yqj0aVmODDTb8gV0jXEknw>