* raid10.c read_balance question
@ 2016-11-21 22:45 Robert LeBlanc
2016-11-22 4:49 ` NeilBrown
2016-11-22 9:59 ` Coly Li
0 siblings, 2 replies; 3+ messages in thread
From: Robert LeBlanc @ 2016-11-21 22:45 UTC (permalink / raw)
To: linux-raid
I'm looking to improve 'near' layout performance in raid10 and looking
at the code for read_balance, the comments mention that there is a
'next expected sequential IO' sector number stored for the RAID array,
but I don't see such a variable in the struct, nor do I see in
read_balance where that variable is being updated. With such a value,
I could use it (with another variable) to guess if the current
requests are random or sequential enough to take the latency hit to
move drive heads to help parallel the read. This would be a much
simpler route than what I was thinking about previously.
Am I just missing this variable? I would expect it to be in the
r10conf struct, would that be the right place to implement it if
doesn't exist?
Thanks,
----------------
Robert LeBlanc
PGP Fingerprint 79A2 9CA4 6CC4 45DD A904 C70E E654 3BB2 FA62 B9F1
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: raid10.c read_balance question
2016-11-21 22:45 raid10.c read_balance question Robert LeBlanc
@ 2016-11-22 4:49 ` NeilBrown
2016-11-22 9:59 ` Coly Li
1 sibling, 0 replies; 3+ messages in thread
From: NeilBrown @ 2016-11-22 4:49 UTC (permalink / raw)
To: Robert LeBlanc, linux-raid
[-- Attachment #1: Type: text/plain, Size: 1172 bytes --]
On Tue, Nov 22 2016, Robert LeBlanc wrote:
> I'm looking to improve 'near' layout performance in raid10 and looking
> at the code for read_balance, the comments mention that there is a
> 'next expected sequential IO' sector number stored for the RAID array,
> but I don't see such a variable in the struct, nor do I see in
> read_balance where that variable is being updated. With such a value,
> I could use it (with another variable) to guess if the current
> requests are random or sequential enough to take the latency hit to
> move drive heads to help parallel the read. This would be a much
> simpler route than what I was thinking about previously.
>
> Am I just missing this variable? I would expect it to be in the
> r10conf struct, would that be the right place to implement it if
> doesn't exist?
I think it is "head_position".
NeilBrown
>
> Thanks,
> ----------------
> Robert LeBlanc
> PGP Fingerprint 79A2 9CA4 6CC4 45DD A904 C70E E654 3BB2 FA62 B9F1
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 800 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: raid10.c read_balance question
2016-11-21 22:45 raid10.c read_balance question Robert LeBlanc
2016-11-22 4:49 ` NeilBrown
@ 2016-11-22 9:59 ` Coly Li
1 sibling, 0 replies; 3+ messages in thread
From: Coly Li @ 2016-11-22 9:59 UTC (permalink / raw)
To: Robert LeBlanc, linux-raid
在 2016/11/22 上午6:45, Robert LeBlanc 写道:
> I'm looking to improve 'near' layout performance in raid10 and looking
> at the code for read_balance, the comments mention that there is a
> 'next expected sequential IO' sector number stored for the RAID array,
> but I don't see such a variable in the struct, nor do I see in
> read_balance where that variable is being updated. With such a value,
> I could use it (with another variable) to guess if the current
> requests are random or sequential enough to take the latency hit to
> move drive heads to help parallel the read. This would be a much
> simpler route than what I was thinking about previously.
>
> Am I just missing this variable? I would expect it to be in the
> r10conf struct, would that be the right place to implement it if
> doesn't exist?
>
> Thanks,
> ----------------
> Robert LeBlanc
> PGP Fingerprint 79A2 9CA4 6CC4 45DD A904 C70E E654 3BB2 FA62 B9F1
Hi Robert,
This code was originally from Linux 2.6.9, it seems like copying from
raid1.c:read_balance(). IMHO you don't miss anything, we should remove
the following text from the comments,
There is a per-array 'next expected sequential IO' sector
number - if this matches on the next IO then we use the last disk.
How about compose a patch ?
Coly
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-11-22 9:59 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-21 22:45 raid10.c read_balance question Robert LeBlanc
2016-11-22 4:49 ` NeilBrown
2016-11-22 9:59 ` Coly Li
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).