Commit Graph

119 Commits

Author SHA1 Message Date
Kent Overstreet
347c0b108e Update bcachefs sources to dbee44d5ab bcachefs: add bcachefs xxhash support 2021-07-07 20:30:53 -04:00
Kent Overstreet
ff578c6718 Update bcachefs sources to 69be0dae31 bcachefs: Always zero memory from bch2_trans_kmalloc() 2021-06-10 20:25:55 -04:00
Kent Overstreet
58ae103b0a Update bcachefs sources to e3a7cee503 bcachefs: Don't mark superblocks past end of usable space 2021-06-08 22:55:14 -04:00
Kent Overstreet
b61ad35b97 Update bcachefs sources to 3913e0cac3 bcachefs: Journal space calculation fix 2021-05-31 15:05:33 -04:00
Kent Overstreet
4a2acdaf65 Update closures from kernel source tree 2021-05-27 21:13:52 -04:00
Kent Overstreet
27d75d929f Grab math.h from kernel source tree
This gets us round_up() and round_down()

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2021-05-27 21:12:13 -04:00
Kent Overstreet
2e2d5a3f7e Update bcachefs sources to 0cd3e1d27a bcachefs: Fix for bch2_bkey_pack_pos() not initializing len/version fields 2021-05-17 16:48:48 -04:00
Kent Overstreet
8f72e6940c Fix some minor compiler warnings
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2021-05-17 16:35:54 -04:00
Kent Overstreet
bb74624daa Update bcachefs sources to a5c0e1bb30 bcachefs: Clean up bch2_btree_and_journal_walk() 2021-04-30 18:23:38 -04:00
Kent Overstreet
a14d39d7ac bit_spinlocks now use futexes
Spinlocks aren't a good idea in userspace, where we can't actually
disable preemption.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2021-04-26 20:18:47 -04:00
Kent Overstreet
edc3ffe8f2 Update bcachefs sources to 8d3093bd9b bcachefs: Evict btree nodes we're deleting 2021-04-26 20:18:47 -04:00
Kent Overstreet
30f72f75f5 Add a real mempool implementation
Imported from the kernel.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2021-04-24 01:36:43 -04:00
Kent Overstreet
ceac31bcb6 Update bcachefs sources to fe72e70682 bcachefs: Fix for btree_gc repairing interior btree ptrs 2021-04-19 21:26:48 -04:00
Kent Overstreet
967c870498 Update bcachefs sources to 8eca47e4d5 bcachefs: Improved check_directory_structure() 2021-04-13 10:24:15 -04:00
Kent Overstreet
b422ff58ba Update bcachefs sources to a8b3ce7599 fixup! bcachefs: Eliminate more PAGE_SIZE uses 2021-04-12 11:48:45 -04:00
Kent Overstreet
d340c4f4a8 Fix krealloc() alignment
bcachefs assumes kmalloc & krealloc give out allocations that are
naturally aligned, like the kernel allocators do.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2021-04-08 15:48:45 -04:00
Kent Overstreet
a2094890a9 Update bcachefs sources to 18686af684 bcachefs: Inode backpointers 2021-03-29 00:22:38 -04:00
Kent Overstreet
c88113e255 Update bcachefs sources to ad68801b93 bcachefs: Use pcpu mode of six locks for interior nodes 2021-03-24 22:13:00 -04:00
Kent Overstreet
c28f93bc52 generix radix trees: Don't overflow in peek() 2021-02-12 21:42:46 -05:00
Kent Overstreet
868abec1ab Update bcachefs sources to 5e73602f6c bcachefs: Fix for fsck hanging 2021-02-12 16:02:52 -05:00
Kent Overstreet
db931a4571 Update bcachefs sources to e1d0fb8c5f bcachefs: Don't require flush/fua on every journal write 2020-12-04 13:45:33 -05:00
Kent Overstreet
1e574cb1aa Update bcachefs sources to 021e62a098 bcachefs: Fix error in filesystem initialization 2020-11-30 00:06:46 -05:00
Kent Overstreet
13f53aa228 Update bcachefs sources to d1fd471830 bcachefs: Add more debug checks 2020-11-16 18:23:54 -05:00
Kent Overstreet
3420d86959 Round up aligned_alloc() allocations
this fixes an address sanitizer splat

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2020-11-16 18:23:47 -05:00
Kent Overstreet
4df03a2ead Fix kmalloc_array macro
This was causing us some valgrind errors.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2020-11-08 15:23:13 -05:00
Kent Overstreet
d2a118d921 Update bcachefs sources to 1d669389f7 bcachefs: use a radix tree for inum bitmap in fsck 2020-11-07 13:09:23 -05:00
Kent Overstreet
cd9892e543 Update bcachefs sources to 10ab39f2fa bcachefs: Improvements to the journal read error paths 2020-08-24 16:25:05 -04:00
Kent Overstreet
05408b6f8f Update bcachefs sources to 4837f82ee1 bcachefs: Use cached iterators for alloc btree 2020-06-15 16:27:19 -04:00
Kent Overstreet
c32bba1325 Fix build when CONFIG_BCACHEFS_DEBUG=y 2020-06-04 07:57:09 -04:00
Yuxuan Shui
69413acbdc kmalloc: use posix_memalign
posix_memalign doesn't have the restriction that size must be a multiply
of alignment.

This also reverts the fix in commit f3fdbbfa92.

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
2020-05-23 17:43:38 +01:00
Kent Overstreet
f8d4cbe40b Update log2.h from linux kernel
This fixes a build breakage where the old log2.g referenced
__ilog2_NaN() which we weren't defining.
2020-05-21 17:19:47 -04:00
Yuxuan Shui
f3fdbbfa92 Make sure aligned_alloc size is a multiply of alignment
Fix a ASan complaint.

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
2020-05-21 14:36:00 +01:00
Kent Overstreet
34c9be19b3 Update bcachefs sources to e1f6739c4a bcachefs: Fix another iterator counting bug 2020-05-14 21:48:52 -04:00
Yuxuan Shui
5bc48bd428
Fix building on musl
* Add missing linux/stddef.h includes
* Explicitly cast PAGE_SIZE to size_t. PAGE_SIZE is defined without UL
  suffix in musl
* Musl doesn't define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP, so
  initialize the mutexes with pthread_once.
2020-05-05 10:29:31 +01:00
Kent Overstreet
4d697aa315 Don't leak ksets 2020-01-09 18:02:22 -05:00
Kent Overstreet
f712a866a4 Put valgrind support behind CONFIG_VALGRIND 2019-12-04 17:49:34 -05:00
Justin Husted
ff695c5afb Use the correct clock for userspace time.
The ktime_get_coarse_real_ts64() implementation for userspace was using
CLOCK_MONOTONIC instead of CLOCK_REALTIME_COARSE.  This resulted in
files being timestamped with a time close to the unix epoch.

Signed-off-by: Justin Husted <sigstop@gmail.com>
2019-11-04 21:23:46 -08:00
Justin Husted
bf7574260c Add better valgrind support for journal write buffers. 2019-11-03 23:17:43 -05:00
Justin Husted
ff4d082246 Change preempt_disable() etc. to use a recursive mutex.
This is part of the userspace implementation of the kernel APIs for
bcachefs-tools. The previous implementation just provided a barrier, but
this isn't sufficient to make the associated percpu implementation safe.

Signed-off-by: Justin Husted <sigstop@gmail.com>
2019-11-03 23:17:43 -05:00
Kent Overstreet
7f3557f57e Update bcachefs sources to 7e03c1ab0e bcachefs: Kill bchfs_extent_update() 2019-10-10 18:06:44 -04:00
Kent Overstreet
98b8f8d0c0 Update six locks 2019-10-01 15:55:42 -04:00
Kent Overstreet
db39aa3e1b Update bcachefs sources to 5a3a4087af bcachefs: Convert a BUG_ON() to a warning 2019-09-25 15:23:50 -04:00
Kent Overstreet
8192cc8ed8 Update llist code
This fixes a bug where the compiler was dropping a null ptr check
2019-08-28 11:35:00 -04:00
Kent Overstreet
cc41f52bcc Update bcachefs sources to 14f68409be bcachefs: Optimize fiemap 2019-08-27 17:37:03 -04:00
Kent Overstreet
72a408f848 Update bcachefs sources to ece184f718 bcachefs: Reflink 2019-08-21 13:19:36 -04:00
Kent Overstreet
f96ba8e0aa Update bcachefs sources to b91a514413 bcachefs: Don't try to delete stripes when RO 2019-07-11 12:00:51 -04:00
Kent Overstreet
7e35389599 Update bcachefs sources to f38382c574 bcachefs: Improve key marking interface 2019-05-24 11:58:42 -04:00
Kent Overstreet
93bdfcb210 Update bcachefs sources to 454bd4f82d bcachefs: Fix for the stripes mark path and gc 2019-05-08 19:13:46 -04:00
Kent Overstreet
b485aae1ba Update bcachefs sources to 6f603b8d79 bcachefs: some improvements to startup messages and options 2019-04-17 19:00:38 -04:00
Kent Overstreet
f652fdc962 define XATTR_CREATE/XATTR_REPLACE for systems with old headers 2019-04-11 00:31:22 -04:00