Commit Graph

90 Commits

Author SHA1 Message Date
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
Kent Overstreet
0abf87f973 fix check for SYS_random 2019-04-10 17:37:00 -04:00
Kent Overstreet
d13bbb2955 Update bcachefs sources to d83b992f65 bcachefs: Rewrite journal_seq_blacklist machinery 2019-04-04 22:25:40 -04:00
Kent Overstreet
133dfeb648 Update bcachefs sources to d868a87c67 bcachefs: fix initial gc 2019-03-28 05:28:38 -04:00
Kent Overstreet
365d345005 Align allocations like the kernel does 2019-03-24 23:38:17 -04:00
Kent Overstreet
0aaa849412 use a mutex for percpu rwsemaphores
bcachefs is using a percpu rwsem to protect percpu data structures, and
in userspace we don't have real percpu data structures - so we need to
guard all access to them with a mutex.
2019-03-08 14:41:57 -05:00
Kent Overstreet
166e32606e better implementation of WARN 2019-03-08 14:41:43 -05:00
Kent Overstreet
35fca2f044 Update bcachefs sources to 99750eab4d bcachefs: Persist stripe blocks_used 2019-01-23 15:53:32 -05:00
Kent Overstreet
47bd483d27 Update bcachefs sources to ef60854e99 bcachefs: More allocator startup improvements 2019-01-13 20:53:25 -05:00
Kent Overstreet
52e4726b51 delete dead code 2019-01-13 15:24:51 -05:00
Kent Overstreet
1504d4c98a check for errors from pthread_create() 2019-01-13 15:17:03 -05:00
Kent Overstreet
825d180c07 Delete more shim layer code 2018-12-19 20:34:24 -05:00
Kent Overstreet
0c7db4eca3 Update bcachefs sources to 62de7539dc bcachefs: Make bkey types globally unique 2018-11-30 12:51:13 -05:00
Kent Overstreet
bca8b084ad Update bcachefs sources to da7fefde29 bcachefs: shim for userspace raid library 2018-11-23 03:05:20 -05:00
Hadrien Copponnex
e69ff279fa Fixed xattr.h includes 2018-11-08 11:18:13 +01:00
Tim Schlueter
03c79a9a25 Added ktime_get_real_seconds() wrapper
Also, changed the last_mount print so it no longer prints out two newlines.
2018-11-04 21:00:33 -08:00
Kent Overstreet
55fbb25501 Update bcachefs sources to d7f6da1d60 bcachefs: fix missing include 2018-10-12 15:10:26 -04:00
Kent Overstreet
cef2f30ae2 Update bcachefs sources to 15f6e66e86 bcachefs: pass around bset_tree less 2018-08-15 20:00:21 -04:00
Kent Overstreet
75c7148e0a Update bcachefs sources to 940d6ca657 bcachefs: acl code improvements 2018-07-13 00:45:28 -04:00
Kent Overstreet
17e2f2775b Update bcachefs sources to 2cb70a82bc bcachefs: delete some debug code 2018-06-27 14:50:43 -04:00
Kent Overstreet
bb6f4111fb Update bcachefs sources to 9abf628c70 bcachefs: Fix a spurious error in fsck 2018-06-01 17:33:19 -04:00
Kent Overstreet
62e4df2a38 drop dead code 2018-05-17 07:24:39 -04:00
Kent Overstreet
84e8950cc7 Switch to liblz4 2018-05-17 02:45:49 -04:00
Kent Overstreet
3588fa621c fixes for 32 bit builds/non x86 archs 2018-05-17 02:36:19 -04:00
Kent Overstreet
ff86d47221 Update bcachefs sources to 0906b1fb49 bcachefs: fixes for 32 bit/big endian machines 2018-05-17 02:36:19 -04:00
Kent Overstreet
c598d91dcb Update bcachefs sources to edf5f38218 bcachefs: Refactor superblock code 2018-04-10 19:23:58 -04:00
Kent Overstreet
90ef8b9f57 Update bcachefs sources to 90d78c2461 bcachefs: Option parsing for io targets 2018-02-19 19:01:05 -05:00
Kent Overstreet
4aefd5f903 add missing include 2018-02-17 13:36:55 -05:00
Leah Neukirchen
e8a350841c include/linux/bitmap.h: inline __bitmap_weight and __bitmap_and 2018-02-10 00:08:32 +01:00
Leah Neukirchen
71c55882fa include/linux/time64.h: no need for __iter_div_u64_rem in userspace 2018-02-09 22:54:12 +01:00