mirror of
https://github.com/schoebel/mars
synced 2025-01-14 02:50:48 +00:00
Merge branch 'mars0.1.y' into mars0.1b.y
This commit is contained in:
commit
746f84cd32
@ -188,6 +188,13 @@ mars0.1balpha0
|
||||
-----------------------------------
|
||||
Changelog for series 0.1:
|
||||
|
||||
mars0.1stable40
|
||||
--------
|
||||
* Potentially critical fix: on very fast machines, and with
|
||||
extremely low probability, a race in AIO could lead to a kernel
|
||||
page fault.
|
||||
For maximum safety, update to this version is recommended.
|
||||
|
||||
mars0.1stable39
|
||||
--------
|
||||
* Minor fix: hangs of logfile updates. Found by stress-testing
|
||||
|
@ -407,6 +407,7 @@ static int aio_submit(struct aio_output *output, struct aio_mref_aspect *mref_a,
|
||||
// .aio_reqprio = something(mref->ref_prio) field exists, but not yet implemented in kernelspace :(
|
||||
};
|
||||
struct iocb *iocbp = &iocb;
|
||||
struct timing_stats *this_timing = &timings[mref->ref_rw & 1];
|
||||
unsigned long long latency;
|
||||
|
||||
mars_trace(mref, "aio_submit");
|
||||
@ -419,7 +420,10 @@ static int aio_submit(struct aio_output *output, struct aio_mref_aspect *mref_a,
|
||||
|
||||
oldfs = get_fs();
|
||||
set_fs(get_ds());
|
||||
latency = TIME_STATS(&timings[mref->ref_rw & 1], res = sys_io_submit(output->ctxp, 1, &iocbp));
|
||||
latency = TIME_STATS(
|
||||
this_timing,
|
||||
res = sys_io_submit(output->ctxp, 1, &iocbp)
|
||||
);
|
||||
set_fs(oldfs);
|
||||
|
||||
threshold_check(&aio_submit_threshold, latency);
|
||||
|
Loading…
Reference in New Issue
Block a user