[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <200712272252.27273.rusty@rustcorp.com.au>
Date: Thu, 27 Dec 2007 22:52:26 +1100
From: Rusty Russell <rusty@...tcorp.com.au>
To: FUJITA Tomonori <fujita.tomonori@....ntt.co.jp>
Cc: davem@...emloft.net, linux-scsi@...r.kernel.org,
linux-kernel@...r.kernel.org, jens.axboe@...cle.com,
dougg@...que.net
Subject: Re: [PATCH 0/5] sg_ring for scsi
On Thursday 27 December 2007 13:09:27 FUJITA Tomonori wrote:
> On Wed, 26 Dec 2007 11:27:40 +1100
>
> Rusty Russell <rusty@...tcorp.com.au> wrote:
> > There are many signs through the code that it needs a great deal of
> > work: what is the purpose of sg_break? Why does the code check if
> > kmap_atomic fails?
>
> sg_break is a workaround for the hardware restrictions, I think.
Well, scb->breakup does that, can't see what scb->sg_break is for... May have
to wade through git history to understand it.
> > ===
> > Convert the ips SCSI driver to sg_ring.
> >
> > Slightly non-trivial conversion, will need testing.
>
> As I said, I don't think that converting SCSI drivers to sg_ring (with
> lots of non-trivial work) provides any benefits. Surely, sg_ring
> enables us to modify sg lists but SCSI drivers don't need the
> feature. What SCSI drivers needs is just a efficient way to get the
> next sg entry (they use 'sg++' in the past and sg_next now).
Sure, iteration over a two-level structure is a little more tricky, but it's
pretty trivial for most drivers.
Indeed, I think that it's probably better to have an explicitly different
interface for sg_ring, and keep the current interface for small sg arrays.
That would provide a nicer changeover.
I'll prototype something and see what it's like...
Rusty.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists