Re: [11/36] Use page_cache_xxx in fs/buffer.c

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Christoph Lameter <clameter@...>
Cc: Dmitry Monakhov <dmonakhov@...>, <torvalds@...>, <linux-fsdevel@...>, <linux-kernel@...>, Christoph Hellwig <hch@...>, Mel Gorman <mel@...>, William Lee Irwin III <wli@...>, David Chinner <dgc@...>, Badari Pulavarty <pbadari@...>, Maxim Levitsky <maximlevitsky@...>, Fengguang Wu <fengguang.wu@...>, swin wang <wangswin@...>, <totty.lu@...>, H. Peter Anvin <hpa@...>, <joern@...>, Eric W. Biederman <ebiederm@...>
Date: Friday, August 31, 2007 - 3:43 am

On Fri, Aug 31 2007, Christoph Lameter wrote:

They have nothing to do with each other, you are mixing things up. It
has nothing to do with the device being able to dma into that memory or
not, we have fine existing infrastructure to handle that. But different
hardware have different characteristics on what a single segment is. You
can say "a single segment cannot cross a 32kb boundary". So from the
example above, your single 64k page may need to be split into two
segments. Or it could have a maximum segment size of 32k, in which case
it would have to be split as well.

Do you see what I mean now?


But we do not split them up today - see what I wrote! Today we impose
the restriction that a device must be able to handle a single "normal"
page, and if it can't do that, it has to split it up itself.

But yes, you would have to create some out-of-line function to use
bio_split() until you have chopped things down enough. It's not a good
thing for performance naturally, but if we consider this a "just make it
work" fallback, I don't think it's too bad. You want to make a note of
that it is happening though, so people realize that it is happening.


OK, since it goes direct to bio anyway, it can be handled there.

-- 
Jens Axboe

-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Dmitry Monakhov, (Thu Aug 30, 5:20 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Christoph Lameter, (Thu Aug 30, 2:14 pm)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Christoph Lameter, (Thu Aug 30, 9:47 pm)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Jens Axboe, (Fri Aug 31, 2:56 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Christoph Lameter, (Fri Aug 31, 3:03 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Jens Axboe, (Fri Aug 31, 3:11 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Christoph Lameter, (Fri Aug 31, 3:17 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Jens Axboe, (Fri Aug 31, 3:26 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Christoph Lameter, (Fri Aug 31, 3:33 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Jens Axboe, (Fri Aug 31, 3:43 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Christoph Lameter, (Fri Aug 31, 3:52 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Dmitry Monakhov, (Fri Aug 31, 4:36 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Christoph Lameter, (Fri Aug 31, 11:28 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Jens Axboe, (Fri Aug 31, 4:12 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Christoph Lameter, (Fri Aug 31, 11:22 am)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Jens Axboe, (Fri Aug 31, 3:00 pm)
Re: [11/36] Use page_cache_xxx in fs/buffer.c, Jörn, (Fri Aug 31, 12:35 pm)