Gerry Chen
e39d6c542e
Docker documentation on device passthrough
...
Primarily geared towards Mac, but serves as a rough template for Windows as well.
2020-07-30 14:22:37 -04:00
Michel Machado
9a9e74250d
libflow: accommodate Macs
...
As of today, macOS or OS X still does not implement
clock_nanosleep() according to this project:
https://github.com/ChisholmKyle/PosixMachTiming
2020-06-23 08:01:52 -04:00
Michel Machado
5ac9551d87
libflow: avoid types size_t and ssize_t in libflow.h
...
Those types are not included in libflow.h and
including them is overwhelming.
2020-06-23 07:35:05 -04:00
Michel Machado
099eb7fd42
f3read: tighten assert()
...
The last assert() in iterate_files() was doing an integer division
before comparing values, so there was potential for a bug going
silent due to the truncation fo the integer division.
This patch rewrite the test with a multiplication.
2020-06-23 07:14:21 -04:00
Michel Machado
ab76ce4f85
README: drop reference to F3X
...
The project F3X is no longer maintained.
This patch closes #127 .
2020-06-22 16:59:59 -04:00
Michel Machado
777c0758b8
f3read: add parameter --max-read-rate
2020-06-22 16:38:42 -04:00
Michel Machado
041c94c4ac
f3read: integrate with libflow
2020-06-22 16:38:42 -04:00
Michel Machado
2ba83fb441
f3read: replace fopen(3) with open(2)
...
This patch is another step to prepare f3read to be integrated with
libflow.
2020-06-22 16:38:42 -04:00
Michel Machado
79cd2d66a2
libflow: rename fields and variables for generality
...
The original libflow was written for f3write only, and
this was reflected in the name of fields and variables
throughout the code. This patch renames these fields and
variables to reflect the fact that libflow will eventually
support f3write AND f3read.
2020-06-22 16:38:42 -04:00
Michel Machado
a759140bc5
libflow: replace usleep() with clock_nanosleep()
...
POSIX.1-2008 removed usleep() and POSIX.1-2001 introduced
clock_nanosleep().
2020-06-22 16:38:42 -04:00
Michel Machado
e2a59bc08d
libflow: avoid fdatasync() and posix_fadvise()
...
This patch moves calls to fdatasync() and posix_fadvise() out of
libflow as one more step to generalize libflow.
2020-06-22 16:38:42 -04:00
Michel Machado
14b35b5bc6
f3write: avoid unnecessary calls to measure()
...
This patch is only meant to have a simpler calling pattern of
libflow since it'll be generalized down the line.
2020-06-22 16:38:42 -04:00
Michel Machado
791acdc326
libflow: do measurements over multiple files
...
With really fast drives (i.e. >1GB/s), f3write needs to
write multiple files before a measurement can be made.
This patch enhances the flow library to deal with such fast drives.
2020-06-22 16:38:42 -04:00
Michel Machado
b1ab05c280
f3write: move flow code to a new library (libflow)
...
This is the first step toward generalizing the flow code in order to
reuse it in f3read.
2020-06-22 16:38:42 -04:00
Michel Machado
09164052de
Merge pull request #133 from dproteus13/patch-1
...
Fix a typo
2020-05-10 11:27:50 -04:00
dproteus13
3c33c54e5d
Fix a typo
2020-05-08 22:56:34 -04:00
Michel Machado
5846f9dbb1
f3probe: report unexpected error codes in read_all()
...
No unexpected error code should happen in read_all(), but,
if it does, f3probe will report them before aborting.
This patch address the request of user @vi at the following comment:
https://github.com/AltraMayor/f3/issues/82#issuecomment-585829975
2020-02-18 10:27:07 -05:00
Michel Machado
3c19d21859
f3probe: allow errno == ENODATA when calling read(2)
...
The errno ENODATA is not documented in the manual, but according
to the comment the following comment, it behaves like EIO.
https://github.com/AltraMayor/f3/issues/82#issuecomment-584409275
2020-02-11 07:49:55 -05:00
Michel Machado
7e29f43a60
Merge pull request #129 from shoeper/fedora-deps
...
Readme: Add Fedora dependency install instructions
2019-12-20 18:42:54 -05:00
Sven Höper
7ba1cc4c9d
Readme: Add Fedora dependency install instructions
2019-12-20 17:41:05 +01:00
Michel Machado
63b68cbfd3
Merge pull request #125 from l29ah/pseudorandom
...
README: + mechanism of action
2019-09-30 17:35:33 -04:00
Sergey Alirzaev
9f8d16ad4d
README: + mechanism of action
2019-10-01 00:33:39 +03:00
Michel Machado
87ccddca43
Merge pull request #124 from peron/master
...
Dockerized
2019-09-26 08:54:51 -04:00
Per Junel
04845023be
Added link to Docker Hub.
2019-09-20 23:39:51 +02:00
Per Junel
54672797e0
Added a Dockerfile and updated the README on how to build and run with Docker.
2019-09-20 00:55:34 +02:00
Michel Machado
9c343a1b82
Bump version to 7.2
v7.2
2019-06-19 14:43:19 -04:00
Michel Machado
c9eee71ee9
f3write: add a backup speed measurement
...
If the drive is too fast for the measument of the flow algorithm,
this patch uses a coarse approximation of the writing speed.
2019-05-16 10:57:18 -04:00
Michel Machado
62ef9921c0
f3write: keep up with extremely fast NVM drives
...
NVM drives are fast enough to overflow 32-bit measurement variables
in bytes and blocks. This patch upgrades these variables to 64 bits.
This patch addresses issue #117 :
https://github.com/AltraMayor/f3/issues/117
2019-05-16 07:45:10 -04:00
Michel Machado
2766edd4be
f3write: adopt write_all() from libdevs.c
...
The file system HFS (i.e. "OS X Extended (Journaled)") of
macOS 10.11 may return a number of partial write()'s before
the file system is full.
This POSIX-permited, but unusual behavior was frist reported here:
https://github.com/AltraMayor/f3/issues/111
2019-03-11 12:22:48 -04:00
Michel Machado
3a25af5db3
Merge pull request #110 from bendem/feature/error-code
...
Return the status of the device as error code
2019-03-04 13:42:41 -03:00
bendem
90ed489c2a
Return the status of the device as error code
...
Closes #106
2019-03-04 16:57:36 +01:00
Michel Machado
fead723be5
f3write: improve measurement of write speed
...
A second shot on solving issue #102 .
2019-01-10 17:23:20 -05:00
Michel Machado
0b8c973c4c
f3write: improve measurement of write speed
...
According to issue #102 , calls to fdatasync() might take
a long time (.e.g. 3s or 4s) and distort the measurement of
the average write speed. This patch addresses it by only updating
the measurements when delays are within a tolerance.
2019-01-09 09:31:41 -05:00
Michel Machado
7f4a26d637
Merge pull request #101 from plonibarploni/patch-1
...
Update README.rst
2019-01-04 14:25:34 -05:00
plonibarploni
a0f22da863
Update README.rst
2019-01-04 14:12:39 -05:00
Michel Machado
1ba78e7e15
Merge pull request #99 from DEVoytas/add_missing_const
...
libdevs: bring back missing ‘const’ specifier
2019-01-02 08:22:32 -05:00
Mariusz Wojtasik
3ab5bad85c
libdevs: bring back missing ‘const’ specifier
...
Commit 7ff9fad37a32 ("libdevs: fix compiler warning") fixed the warning
by removing duplicate ‘const’ specifier.
The original intent of two ‘const’ specifiers, was most likely to make
non-mutable both: the ‘ftype_to_name‘ array itself and its elements,
so bring back the second ‘const’, but in the correct place this time,
i.e. after ‘*‘.
2018-12-30 21:31:07 +01:00
Michel Machado
7ff9fad37a
libdevs: fix compiler warning
...
Warning:
libdevs.c:26:19: warning: duplicate ‘const’ declaration specifier [-Wduplicate-decl-specifier]
static const char const *ftype_to_name[FKTY_MAX] = {
^~~~~
2018-12-10 14:07:48 -05:00
Michel Machado
381d8603c2
f3probe: deal with an assertion failure
...
This patch may address the following issue:
https://github.com/AltraMayor/f3/issues/82
2018-12-10 14:04:29 -05:00
Michel Machado
9ab7e7a48d
f3brew: add a comment to the code
...
The comment explains from where the name B-RE-W comes.
It is meant to address some confusion that may raise as
the following pull request points out:
https://github.com/AltraMayor/f3/pull/96
2018-11-28 09:33:36 -05:00
Michel Machado
4b2eabed72
Merge pull request #95 from dgw/link-updates
...
HTTPS-ify & fix links
2018-10-08 12:14:50 -04:00
dgw
f6f6d891c7
HTTPS-ify & fix links
...
Several of the HTTP links are now available over HTTPS, and the
documentation should link directly to the secure version of the
referenced page.
Along the way, a couple of broken links were updated.
2018-10-08 03:08:38 -05:00
Michel Machado
169ea4bcb4
Merge pull request #90 from jwilk-forks/spelling
...
Fix typos
2018-09-24 08:32:56 -04:00
Jakub Wilk
417a1851fa
Fix typos
2018-09-24 10:43:21 +02:00
Michel Machado
e56d2ac729
Bump version to 7.1
v7.1
2018-07-27 04:10:35 -04:00
Michel Machado
742f4e613f
f3probe: change default reset type to RT_NONE
...
Change default reset type from RT_USB to RT_NONE in order to
address the following issues:
https://github.com/AltraMayor/f3/issues/79
https://github.com/AltraMayor/f3/issues/81
2018-06-08 11:43:17 -04:00
Michel Machado
4eafe2885e
Merge pull request #75 from avindra/patch-1
...
Makefile: remove ownership setting
2018-02-05 09:48:57 -05:00
Avindra Goolcharan
74f2ead52d
Makefile: remove ownership setting
...
This causes openSUSE RPM builds to break (and probably other rpm based distros)
2018-02-03 12:56:20 -05:00
Michel Machado
e9495c16a3
Merge pull request #74 from mistydemeo/set_argp_per_os
...
Set argp-standalone flags per-OS
2018-01-31 10:27:01 -05:00
Michel Machado
572af383ca
Update README.rst
2018-01-31 10:25:02 -05:00