mirror of
https://github.com/schoebel/mars
synced 2025-03-01 02:50:44 +00:00
copy: allow non-strict write order
This commit is contained in:
parent
b32b2d57fe
commit
0da44a808f
@ -57,6 +57,9 @@
|
||||
int mars_copy_overlap = 1;
|
||||
EXPORT_SYMBOL_GPL(mars_copy_overlap);
|
||||
|
||||
/* Always leave at 1, disable only for throughput _testing_ */
|
||||
int mars_copy_strict_write_order = 1;
|
||||
|
||||
int mars_copy_timeout = 180;
|
||||
|
||||
int mars_copy_read_prio = MARS_PRIO_NORMAL;
|
||||
@ -551,7 +554,9 @@ restart:
|
||||
* Currenty, bio and aio are obeying this. Be careful when
|
||||
* implementing new IO bricks!
|
||||
*/
|
||||
if (st->prev >= 0 && !GET_STATE(brick, st->prev).writeout) {
|
||||
if (mars_copy_strict_write_order &&
|
||||
st->prev >= 0 &&
|
||||
!GET_STATE(brick, st->prev).writeout) {
|
||||
goto idle;
|
||||
}
|
||||
mref0 = st->table[0];
|
||||
|
@ -33,6 +33,7 @@
|
||||
#define COPY_INPUT_NR 4
|
||||
|
||||
extern int mars_copy_overlap;
|
||||
extern int mars_copy_strict_write_order;
|
||||
extern int mars_copy_timeout;
|
||||
extern int mars_copy_read_prio;
|
||||
extern int mars_copy_write_prio;
|
||||
|
@ -322,6 +322,7 @@ struct ctl_table mars_table[] = {
|
||||
#endif
|
||||
INT_ENTRY("io_flying_count", mars_global_io_flying, 0400),
|
||||
INT_ENTRY("copy_overlap", mars_copy_overlap, 0600),
|
||||
INT_ENTRY("copy_strict_write_order", mars_copy_strict_write_order, 0600),
|
||||
INT_ENTRY("copy_timeout", mars_copy_timeout, 0600),
|
||||
INT_ENTRY("copy_read_prio", mars_copy_read_prio, 0600),
|
||||
INT_ENTRY("copy_write_prio", mars_copy_write_prio, 0600),
|
||||
|
Loading…
Reference in New Issue
Block a user