[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0807141720350.30981@devserv.devel.redhat.com>
Date: Mon, 14 Jul 2008 17:26:38 -0400 (EDT)
From: Mikulas Patocka <mpatocka@...hat.com>
To: FUJITA Tomonori <fujita.tomonori@....ntt.co.jp>
cc: davem@...emloft.net, andi@...stfloor.org,
sparclinux@...r.kernel.org, linux-kernel@...r.kernel.org,
jens.axboe@...cle.com
Subject: Re: [SUGGESTION]: drop virtual merge accounting in I/O requests
On Tue, 15 Jul 2008, FUJITA Tomonori wrote:
> On Sun, 13 Jul 2008 20:20:35 -0700 (PDT)
> David Miller <davem@...emloft.net> wrote:
>
>> From: FUJITA Tomonori <fujita.tomonori@....ntt.co.jp>
>> Date: Mon, 14 Jul 2008 11:19:02 +0900
>>
>>> Now IOMMUs don't ignore the max_segment_size. We hit this problem.
>>
>> It seems simply that max_segment_size needs to propagate
>> down into the block layer VMERGE code so that it can
>> act accordingly.
>
> Yeah, I think so. I'll take care of that.
>
> But I think that even with the fix, SPARC64 IOMMU still hits the
> problem.
>
> With the VMERGE accounting enabled,
>
> - an IOMMU must merge segments that the block layer expects the IOMMU
> to merge.
>
> - an IOMMU must return an error if it can't merge such segments.
>
> But the current SPARC64 IOMMU code doesn't return an error if it can't
> merge such segments (as POWER's IOMMU does, as you know).
BTW. what should the block device driver do when it receives a mapping
error? (if it aborts the request and it was write request, there will be
data corruption). Is it even legal to return IOMMU error in case where no
real hardware error or overflow happened?
Mikulas
--
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