int ret = 0;
int id;
int fd;
+ int time_diff;
if (!reply_handle || !msg)
return NULL;
_D("speed check: %s", data->devnode);
fd = open(data->devnode, O_RDWR | O_SYNC);
- buf = calloc(1, SPEEDCHECK * 1024 * 1024);
+ buf = calloc(1, SPEEDCHECK << 20);
if (!buf) {
_E("calloc() failed");
close(fd);
}
clock_gettime(CLOCK_REALTIME, &start_time);
_I("start time: %lu.%lu", start_time.tv_sec, start_time.tv_nsec);
- ret = write(fd, buf, SPEEDCHECK * 1024 * 1024);
+ ret = write(fd, buf, SPEEDCHECK << 20);
clock_gettime(CLOCK_REALTIME, &end_time);
_I("end time %lu.%lu", end_time.tv_sec, end_time.tv_nsec);
free(buf);
- if (SPEEDCHECK / (end_time.tv_sec - start_time.tv_sec) < 4) {
+ time_diff = end_time.tv_sec - start_time.tv_sec;
+ if (time_diff > 0 && (SPEEDCHECK / time_diff < 4)) {
ret = -1;
close(fd);
goto out;