summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-11-10barbcachefs-erasure-codingKent Overstreet
2018-11-10TODO: plug ec into rebalanceKent Overstreet
2018-11-10fooKent Overstreet
2018-11-10bcachefs: Erasure codingKent Overstreet
2018-11-09bcachefs: Centralize marking of replicas in btree update pathKent Overstreet
2018-11-09bcachefs: Move key marking out of extents.cKent Overstreet
2018-11-09bcachefs: stripe support for replicas trackingKent Overstreet
2018-11-09bcachefs: revamp to_text methodsKent Overstreet
2018-11-09bcachefs: delete some dead codeKent Overstreet
2018-11-09bcachefs: fix a replicas bugKent Overstreet
2018-11-04Merge pull request #10 from modelrockettier/real_mount_timekoverstreet
Set the last mount time using the realtime clock
2018-11-04Set the last mount time using the realtime clockTim Schlueter
This way the last mount time is actually meaningful instead of just being various times from 1970 (which happens with the monotonic clock). Also, roundup_pow_of_two() is undefined when passed in 0, so check before calling it.
2018-11-04bcachefs: Disk usage in compressed sectors, not uncompressedKent Overstreet
2018-11-04bcachefs: Assorted fixes for running on very small devicesKent Overstreet
It's now possible to create and use a filesystem on a 512k device with 4k buckets (though at that size we still waste almost half to internal reserves)
2018-11-04bcachefs: Scale down number of writepoints when low on spaceKent Overstreet
this means we don't have to reserve space for them when calculating filesystem capacity
2018-11-03bcachefs: Fix an assertion when rebuilding replicasKent Overstreet
2018-11-03bcachefs: Rename nofsck opt to fsckKent Overstreet
2018-11-03bcachefs: Fix journal replay when replicas sb section missingKent Overstreet
2018-11-03bcachefs: fix bounds checks in bch2_bio_map()Kent Overstreet
2018-11-03bcachefs: Some fixes for building in userspaceKent Overstreet
userspace allocators don't align allocations as nicely as kernel allocators, which meant that in some cases we weren't allocating big enough bvec arrays - just make the calculations more rigorous and explicit to fix it.
2018-11-03bcachefs: fix bch2_bkey_print_bfloatKent Overstreet
was popping an assertion in the eytzinger code
2018-11-03bcachefs: new avoid mechanism for io retriesKent Overstreet
2018-11-03bcachefs: more key marking refactoringKent Overstreet
prep work for erasure coding
2018-11-03bcachefs: replicas: prep work for stripesKent Overstreet
2018-11-03bcachefs: kill struct bch_replicas_cpu_entryKent Overstreet
2018-11-03bcachefs: add functionality for heaps to update backpointersKent Overstreet
2018-11-03bcachefs: btree gc refactoringKent Overstreet
prep work for erasure coding
2018-11-01bcachefs: BCH_EXTENT_ENTRY_TYPES()Kent Overstreet
2018-11-01bcachefs: bch2_extent_ptr_decoded_append()Kent Overstreet
2018-10-12bcachefs: bch2_extent_drop_ptrs()Kent Overstreet
2018-10-12bcachefs: extent_for_each_ptr_decode()Kent Overstreet
2018-10-12bcachefs: kill bch_extent_crc_typeKent Overstreet
2018-10-12bcachefs: extent_ptr_decodedKent Overstreet
2018-10-12bcachefs: fix missing includeKent Overstreet
2018-10-12bcachefs: fix a spurious gcc warningKent Overstreet
2018-10-10fixup! bcachefs: Allocation code refactoringKent Overstreet
2018-10-06bcachefs: Allocation code refactoringKent Overstreet
bch2_alloc_sectors_start() was a nightmare to work with - it's got some tricky stuff to do, since it wants to use the buckets the writepoint already has, unless they're not in the target it wants to write to, unless it can't allocate from any other devices in which case it will use those buckets if it has to - et cetera. This restructures the code to start with a new empty list of open buckets we're going to use for the new allocation, pulling buckets from the write point's list as we decide that we really are going to use them - making the code somewhat more functional and drastically easier to understand. Also fixes a bug where we could end up waiting on c->freelist_wait (because allocating from one device failed) but return success from bch2_bucket_alloc(), because allocating from a different device succeeded. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2018-10-06bcachefs: Split out alloc_background.cKent Overstreet
2018-10-01bcachefs: Fix failure to suspendKent Overstreet
2018-09-27bcachefs: Fix suspend when moving data faster than ratelimitKent Overstreet
2018-09-21bcachefs: fix bch2_acl_chmod()Kent Overstreet
2018-09-15bcachefs: Fix a deadlockKent Overstreet
2018-09-06bcachefs: fix a divideKent Overstreet
2018-08-31block: optimize bvec_iter_advance()Kent Overstreet
This results in fewer branches/cmov instructions in the inner loop Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
2018-08-31cacheline align pagecache add lockKent Overstreet
2018-08-31bcachefs: optimize page_state_init_for_read()Kent Overstreet
2018-08-31bcachefs: hook up add_to_page_cache_lru_vec()Kent Overstreet
2018-08-31add_to_page_cache_lru_vec()Kent Overstreet
2018-08-31add_to_page_cache_vec()Kent Overstreet
2018-08-31page_cache_tree_insert_vec()Kent Overstreet