Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Jun 2007 15:50:25 +0900
From:      "Hidetoshi Shimokawa" <simokawa@FreeBSD.ORG>
To:        "Matthew Jacob" <lydianconcepts@gmail.com>
Cc:        freebsd-scsi@freebsd.org
Subject:   Re: scsi_target with multiple luns
Message-ID:  <626eb4530705312350n53e97987sff099c3bbd5f9f3a@mail.gmail.com>
In-Reply-To: <7579f7fb0705312313p5c766887s1c2e598884513d6e@mail.gmail.com>
References:  <86tztspdil.wl%simokawa@FreeBSD.ORG> <465F955E.7050103@samsco.org> <7579f7fb0705312147p60255cf2r9eac5d5eb8aa5236@mail.gmail.com> <626eb4530705312300n177e677cyac2e8ba69039160d@mail.gmail.com> <7579f7fb0705312313p5c766887s1c2e598884513d6e@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
OK. Now I understand that they are prototypes...
Actually,  sbp_targ(4) is the hardest part to lock the firewire stack.

On 6/1/07, Matthew Jacob <lydianconcepts@gmail.com> wrote:
> Yes. None of the extant stuff is deployable as solid solution without reworking.
>
> On 5/31/07, Hidetoshi Shimokawa <simokawa@freebsd.org> wrote:
> > Yes, scsi_target(8) is an example.
> > But the problem I described is actually a problem of targ(4)  (scsi_target.c).
> > The userland can do nothing about this problem.
> > Or do you mean targ(4) is also an example?
> >
> > On 6/1/07, Matthew Jacob <lydianconcepts@gmail.com> wrote:
> > > Remember that scsi_target is an example. A fine example, but an
> > > example. Having a single user process that can be shot and killed, no
> > > matter how multithreaded or AIO'd, is not necessarily the wisest
> > > choice for building a target device.
> > >
> > >
> > > On 5/31/07, Scott Long <scottl@samsco.org> wrote:
> > > > Hidetoshi Shimokawa wrote:
> > > > > I have not fully analyzed the problem but I'll describe it just for a note.
> > > > > I'd like to ask maintainers of scsi_target for further analysis.
> > > > >
> > > > > I experiance a problem with small number(1) of simq and multiple
> > > > > scsi_target(8) instances.
> > > > >
> > > > > As far as I understand, the following situation could occur under a fairly
> > > > > heavy load.
> > > > >
> > > > > 1. process A send a request -> cam send to sim
> > > > > 2. process B send a request -> blocked because the simq is full
> > > > > 3. the request of process A is finished (in the context of process A)
> > > > > 4. cam/scsi_target tries to send the request of process B.
> > > > >    But the mapped memory is of process A, and scsi_target send wrong
> > > > >    ccb to sim.
> > > > >
> > > > > Maybe, we should rewrite scsi_target in kernel space with GEOM support..
> > > >
> > > > I'm unclear on how GEOM would fix this.  Also, scsi targets aren't
> > > > always DA devices.  I dedicated scsi_da_target device that is backed
> > > > by GEOM might be interesting, though.  Even more interesting would be
> > > > a direct DMA method that required no KVA mappings for the data.
> > > >
> > > > Scott
> > > >
> > > > _______________________________________________
> > > > freebsd-scsi@freebsd.org mailing list
> > > > http://lists.freebsd.org/mailman/listinfo/freebsd-scsi
> > > > To unsubscribe, send any mail to "freebsd-scsi-unsubscribe@freebsd.org"
> > > >
> > >
> > >
> >
> >
> > --
> > /\ Hidetoshi Shimokawa
> > \/  simokawa@FreeBSD.ORG
> >
>
>


-- 
/\ Hidetoshi Shimokawa
\/  simokawa@FreeBSD.ORG



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