Commit Graph

125 Commits

Author SHA1 Message Date
Kent Overstreet
e0a51ccce8 Update bcachefs sources to 3e93567c51 bcachefs: Switch to local_clock() for fastpath time source 2022-10-15 01:04:30 -04:00
Kent Overstreet
dded444b20 Update bcachefs sources to dfaf9a6ee2 lib/printbuf: Clean up headers 2022-08-18 12:49:48 -04:00
Kent Overstreet
986533d8d5 Update bcachefs sources to 6ddf061e68 bcachefs: Use a genradix for reading journal entries 2022-04-08 19:26:30 -04:00
Brett Holman
74c00c643e check for libkeyutils with pkg-config 2022-03-24 11:16:35 -06:00
Daniel B. Hill
2c0d0c4b7b Makefile: We need to exclude hidden folders
Sometimes user-specific apps create .c files in hidden folders breaking make.

Signed-off-by: Daniel B. Hill <daniel@gluo.nz>
2022-01-12 17:31:04 +13:00
Kent Overstreet
b3984515eb Fix makefile for building docs
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2022-01-10 21:38:14 -05:00
Kent Overstreet
1388212eb8 Delete old bcachefs.5 from makefile 2021-12-20 15:24:22 -05:00
Kent Overstreet
d06f5690fa Update bcachefs sources to ff3a76e1af bcachefs: Change need_whiteout_for_snapshot() to clone iterator 2021-12-19 19:37:29 -05:00
Chris Webb
49923376d1 Use scrypt from libsodium
bcachefs-tools has both libscrypt and libsodium as build dependencies,
but libsodium already includes the same scrypt implementation as libscrypt,
originally written by Colin Percival.

Use the libsodium copy, dropping the extra libscrypt dependency.

Explicitly adopt the default scrypt N, r and p values from libscrypt to
avoid unintended changes in the default work parameters for bcachefs.

Signed-off-by: Chris Webb <chris@arachsys.com>
2021-10-23 12:16:08 -04:00
Kayla Firestack
ae3d49e823 Makefile: fix rst2man lookup and add pytest lookup
add pytest and rst2man lookups though command-v and which if available,
default to ENV/ARGS in the case of user specified locations and otherwise lookup via shell

Signed-off-by: Kayla Firestack <dev@kaylafire.me>
2021-10-20 09:30:16 -04:00
Kayla Firestack
045f7d2ba1 Makefile: prefix libbcachefs.so installation with DESTDIR
Signed-off-by: Kayla Firestack <dev@kaylafire.me>
2021-10-19 14:43:08 -04:00
Kayla Firestack
f403ef61e7 rst2man: convert which to command -v
Signed-off-by: Kayla Firestack <dev@kaylafire.me>
2021-10-19 14:28:34 -04:00
Igor Velkov
a77c35a1c4 fix "no rst2man found!" build error on debian and ubuntu 2021-10-18 17:41:11 -04:00
Kent Overstreet
4ee9ebc32e Build with -fPIC
The changes to how we integrate with rust code mean that we now need to
be emitting position indepedent code.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2021-10-18 16:57:08 -04:00
Kayla Firestack
1f8fc31ddc split mount into a library crate for rust reuse
update makefile to output shared library and rust build
fix default.nix to properly get the binary name for `ln`ing - move binary to main.rs
add rustfmt and gitignore files
move build.rs file into bch_bindgen for reuse between projects
add outputs to nix flake and checks
add mount.toml to makefile
2021-10-18 16:30:52 -04:00
Brett Holman
08420d2481 Fix errors related to rst2man warning message:
- Warning message doesn't print and causes build to exit.
- .SHELLSTATUS doesn't work on some versions of Make.

Signed-off-by: Brett Holman <bholman.devel@gmail.com>
2021-10-12 00:37:02 -04:00
Brett Holman
60a6b2882e Clean up smoketest and pytests.
- Replace depreciated tempfile with mktemp in smoketest.
- Remove unused pytest imports and variables.
- Make path lookup less fragile. Allows pytest to run from any cwd.
- Prevent exeptions caused by calling functions/methods on None objects.
- Disable fuse tests in smoketest. These are broken and add noise.
- Add missing travis CI dependency.

Signed-off-by: Brett Holman <bholman.devel@gmail.com>
2021-10-11 20:24:12 -06:00
Kent Overstreet
f06b01e9ea Update bcachefs sources to b964c6cba8 bcachefs: Change lockrestart_do() to always call bch2_trans_begin() 2021-07-28 17:26:50 -04:00
jpsollie
cb09c48a26 fixup! rst2man detection hangs
rst2man tend to hang when called without arguments, so a small -V is appended to print the version.
Also, make sure we found at least one rst2man executable

Signed-off-by: jpsollie <janpieter.sollie@edpnet.be>
2021-07-24 17:10:10 -04:00
jpsollie
0b0b0ee234 Reapply compiler checks
The compiler checks where erroneously reverted in the Makefile - this reapplies them,
so GCC < 10 can still build the bcachefs tools

Signed-off-by: jpsollie <janpieter.sollie@edpnet.be>
2021-07-24 17:10:10 -04:00
Stijn Tintel
05c9879524 Makefile: detect rst2man
On some distros, rst2man has a .py extension and there is no rst2man.
Fix build on such systems by detecting what is available.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2021-07-24 14:18:40 -04:00
Kent Overstreet
632feaa69a Bring back debug makefile target
This seems to have been dropped by mistake

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2021-07-23 18:06:02 -04:00
Brett Holman
8e6f35cbf3 Documentation fixup: made filenames more descriptive, switched parsing utility to python 2021-07-10 13:51:03 -04:00
jpsollie
54d44fe56b add bcachefs xor / xxhash support
Following the initial xxhash / xor checksum support patches in kernel, bcachefs-tools needs some updated libraries as well.
Unfortunately, xor functionality is deeply linked into several low-level functions, so we're adding a set of patches here to translate those into userspace

Signed-off-by: Janpieter Sollie <janpieter.sollie@edpnet.be>
2021-07-07 20:30:39 -04:00
Kent Overstreet
8e07f30cd7 Fix some makefile misspellings
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2021-07-06 13:41:31 -04:00
Brett Holman
b916af97dd Switched documentation from asciidoc to rst, added doc autogeneration code for options 2021-07-06 00:15:44 -06:00
Kent Overstreet
07ec713e05 Update bcachefs sources to 1a510b00b6 bcachefs: Increase BTREE_TRANS_MEM_MAX 2021-07-04 23:33:54 -04:00
jpsollie
d228e43048 Cleanup Makefile for better compatibility + enable "make debug"
- clean up Makefile to improve compiler compatibility
- add a "Make debug" target for easier debug builds
- update INSTALL
- fix six.c when running "make debug" against GCC 9 (maybe-uninitialized)

Signed-off by: Janpieter Sollie <janpieter.sollie@edpnet.be>
2021-06-13 01:14:47 -04:00
Stijn Tintel
cec9ecc7e0 Makefile: rename D to BCACHEFS_DEBUG
BCACHEFS_DEBUG is far more descriptive. D also conflicts with the D
variable used in Gentoo ebuilds.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2021-05-24 23:34:38 +03:00
Brett Holman
9c0dc7b8d4 minor fixes for clang support 2021-05-19 23:26:13 -04:00
Kent Overstreet
a2094890a9 Update bcachefs sources to 18686af684 bcachefs: Inode backpointers 2021-03-29 00:22:38 -04:00
Kent Overstreet
dd707c9bfd Update bcachefs sources to 0010403265 bcachefs: Fix spurious alloc errors on forced shutdown 2020-12-03 13:13:53 -05:00
Kent Overstreet
eff87a4c44 Build with -Wno-zero_length_bounds
Copying the linux kernel build settings
2020-10-15 22:54:22 -04:00
Kent Overstreet
487ddeb03c Add a shell script version of mount.bcachefs
Sadly, some people are still running distributions too old to properly
support rust :( In the long term we'd like to use Rust for more of
userspace (and potentially in the kernel); this is just a stopgap
measure.
2020-08-24 23:17:17 -04:00
Kent Overstreet
9b3a770ae3 make D=1 now implies valgrind
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2020-08-24 16:27:42 -04:00
Kent Overstreet
21ade39653 Initial WIP new user's manual 2020-07-25 16:20:56 -04:00
Kent Overstreet
34c9be19b3 Update bcachefs sources to e1f6739c4a bcachefs: Fix another iterator counting bug 2020-05-14 21:48:52 -04:00
Kent Overstreet
f55b90dec9 Don't build mount.bcachefs by default
So as not to depend on rust yet
2020-05-08 21:25:12 -04:00
Yuxuan Shui
57ada395b2 Add a mount.bcachefs tool
This tool currently has most of the fundmental features implemented.
It can mount a filesystem specified by uuid, it can ask password for an
encrypted filesystem.

There may be some work that needs to be done to make it behave more like
a "mount.*" tool.

Related: #1

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
2020-05-05 21:33:40 +01:00
Kent Overstreet
9073be1298 Don't use pkgconfig for libkeyutils
Centos 7 has an old version that doesn't have the .pc file
2020-04-23 21:16:05 -04:00
Kent Overstreet
2bd18f4bae Use pkgconfig for libkeyutils 2020-03-25 16:01:38 -04:00
Justin Husted
3b8db3d7be bcachefs-tools: Add a smoke test master script.
This script builds and runs with various options to enable easy test
coverage.

Signed-off-by: Justin Husted <sigstop@gmail.com>
2019-12-28 17:08:10 -08:00
Brendon Boldt
7beefecf44 Add Fedora, Ubuntu, Arch info to INSTALL
Add fuse3 (>=3.7) version to Makefile
2019-12-06 11:19:42 -05:00
Kent Overstreet
f712a866a4 Put valgrind support behind CONFIG_VALGRIND 2019-12-04 17:49:34 -05:00
Justin Husted
a00998c4cd Make fuse3 support optional and document.
The experimental fuse3 support is not complete yet, and fuse3 is new and
still difficult to install on some platforms.

Make it optional at compile time, and default to off.

Signed-off-by: Justin Husted <sigstop@gmail.com>
2019-11-11 12:18:22 -08:00
Justin Husted
4ed889295c Add makefile support for tags.
Also, update .gitignore for various things.

Signed-off-by: Justin Husted <sigstop@gmail.com>
2019-11-04 21:23:46 -08:00
Justin Husted
61bc316a4d Initial version of bcachefs tests.
So far, these tests just test basic format, fsck, and list functions
under valgrind, as well as a few self-validation tests.

Signed-off-by: Justin Husted <sigstop@gmail.com>
2019-11-03 23:17:43 -05:00
Kent Overstreet
bc45c28470 fuse 2019-10-18 16:23:39 -04:00
Kent Overstreet
8b02f791c3 Build with -fno-delete-null-pointer-checks
Some of the code we use from the Linux kernel won't build correctly
without this...
2019-08-27 13:33:57 -04:00
Danilo Spinella
54badc02f7 Add PKG_CONFIG variable and replace pkg-config
Respect pkg-config value from environment.
2019-03-10 10:26:42 +00:00