struct smb_time_audit_pread_state {
struct files_struct *fsp;
- struct timespec ts1;
ssize_t ret;
struct vfs_aio_state vfs_aio_state;
};
if (req == NULL) {
return NULL;
}
- clock_gettime_mono(&state->ts1);
state->fsp = fsp;
subreq = SMB_VFS_NEXT_PREAD_SEND(state, ev, handle, fsp, data,
{
struct smb_time_audit_pread_state *state = tevent_req_data(
req, struct smb_time_audit_pread_state);
- struct timespec ts2;
double timediff;
- clock_gettime_mono(&ts2);
- timediff = nsec_time_diff(&ts2,&state->ts1)*1.0e-9;
+ timediff = state->vfs_aio_state.duration * 1.0e-9;
if (timediff > audit_timeout) {
- smb_time_audit_log_fsp("pread", timediff, state->fsp);
+ smb_time_audit_log_fsp("async pread", timediff, state->fsp);
}
if (tevent_req_is_unix_error(req, &vfs_aio_state->error)) {
struct smb_time_audit_pwrite_state {
struct files_struct *fsp;
- struct timespec ts1;
ssize_t ret;
struct vfs_aio_state vfs_aio_state;
};
if (req == NULL) {
return NULL;
}
- clock_gettime_mono(&state->ts1);
state->fsp = fsp;
subreq = SMB_VFS_NEXT_PWRITE_SEND(state, ev, handle, fsp, data,
{
struct smb_time_audit_pwrite_state *state = tevent_req_data(
req, struct smb_time_audit_pwrite_state);
- struct timespec ts2;
double timediff;
- clock_gettime_mono(&ts2);
- timediff = nsec_time_diff(&ts2,&state->ts1)*1.0e-9;
+ timediff = state->vfs_aio_state.duration * 1.0e-9;
if (timediff > audit_timeout) {
- smb_time_audit_log_fsp("pwrite", timediff, state->fsp);
+ smb_time_audit_log_fsp("async pwrite", timediff, state->fsp);
}
if (tevent_req_is_unix_error(req, &vfs_aio_state->error)) {
struct smb_time_audit_fsync_state {
struct files_struct *fsp;
- struct timespec ts1;
int ret;
struct vfs_aio_state vfs_aio_state;
};
if (req == NULL) {
return NULL;
}
- clock_gettime_mono(&state->ts1);
state->fsp = fsp;
subreq = SMB_VFS_NEXT_FSYNC_SEND(state, ev, handle, fsp);
{
struct smb_time_audit_fsync_state *state = tevent_req_data(
req, struct smb_time_audit_fsync_state);
- struct timespec ts2;
double timediff;
- clock_gettime_mono(&ts2);
- timediff = nsec_time_diff(&ts2,&state->ts1)*1.0e-9;
+ timediff = state->vfs_aio_state.duration * 1.0e-9;
if (timediff > audit_timeout) {
- smb_time_audit_log_fsp("fsync", timediff, state->fsp);
+ smb_time_audit_log_fsp("async fsync", timediff, state->fsp);
}
if (tevent_req_is_unix_error(req, &vfs_aio_state->error)) {