Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-12-12 | bcache: treebitvec thingtreebitvec | Kent Overstreet | |
2016-12-12 | bcache: don't flush journal unnecessarily | Kent Overstreet | |
2016-12-12 | bcache: short circuit bch_prio_write() and journal flush when possible | Kent Overstreet | |
2016-12-12 | bcache: add field to superblock for maximum journal entry size | Kent Overstreet | |
2016-12-12 | block: add sysfs entry for fua support | Kent Overstreet | |
2016-12-12 | bcache: Refactor write path to not split bios unnecessarily | Kent Overstreet | |
compression code is a good deal saner now, too | |||
2016-12-11 | lz4: return amount of data we were able to compress on failure | Kent Overstreet | |
2016-12-11 | bcache: stash journal entry sequence number in struct journal_res | Kent Overstreet | |
2016-12-11 | bcache: cancel journal write timer when doing journal write | Kent Overstreet | |
2016-12-11 | bcache: fix journal bug with prio_buckets | Kent Overstreet | |
this code is all really stupid, need to finish off the new transaction machinery and get prio/gen journal entry converted to that | |||
2016-12-09 | bcachefs: fix find_get_entry() usage | Kent Overstreet | |
2016-12-09 | bcache: increase default journal write delay for spinning rust | Kent Overstreet | |
2016-12-08 | bcache: factor out eytzinger.h | Kent Overstreet | |
2016-12-07 | bcache: fix bad shifts in inorder_to_tree() | Kent Overstreet | |
caught by ubsan | |||
2016-12-07 | bcache: fix hash usage for journal has_inode hash | Kent Overstreet | |
2016-12-07 | bcache: fix uninitialized field | Kent Overstreet | |
bug was only when replication was enabled | |||
2016-12-06 | bcache: rw aux search tree improvement | Kent Overstreet | |
2016-12-06 | bcache: bkey_unpack_pos() | Kent Overstreet | |
slightly more efficient when we don't have a dynamically generated bkey_unpack_key() | |||
2016-12-06 | bcache: add end_offset to struct bset_tree | Kent Overstreet | |
duplicates bset->u64s - for better data locality | |||
2016-12-06 | bcache: drop a comparison in bset_search_tree() | Kent Overstreet | |
2016-12-06 | bcache: squish struct btree some more | Kent Overstreet | |
finally under half a kilobyte | |||
2016-12-06 | bcache: kill struct btree_keys | Kent Overstreet | |
2016-12-06 | bcache: larger bfloats for base of aux search tree | Kent Overstreet | |
2016-12-06 | bcache: kill bset_tree->prev_offset | Kent Overstreet | |
2016-12-06 | bcache: squish struct btree some more | Kent Overstreet | |
2016-12-06 | bcache: use a single buffer for btree node aux trees | Kent Overstreet | |
2016-12-06 | bcache: uninline bkey_cmp_left_packed() | Kent Overstreet | |
this is generally a slowpath | |||
2016-12-06 | bcache: more aux search tree microoptimizations | Kent Overstreet | |
2016-12-06 | Revert "bcache: Optimization for aux search tree slowpath" | Kent Overstreet | |
This reverts commit 27b3474087af56511602a52050a3f2ec0fc69325. Turned out to not really help, gonna go with a different approach. | |||
2016-12-06 | bcache: prefetch btree root in bch_btree_iter_init() | Kent Overstreet | |
2016-12-06 | bcache: inline some fastpaths | Kent Overstreet | |
2016-12-06 | bcache: btree_node_iter_init() optimizations | Kent Overstreet | |
2016-12-06 | bcache: round packed bkey format fields up to nearest byte when possible | Kent Overstreet | |
wasn't useful with the old bkey_unpack_key(), but with the new dynamic codegen bkey_unpack_key() we can take advantage of this to avoid shifts and generate smaller code | |||
2016-12-06 | bcache: jit bkey_unpack_key() | Kent Overstreet | |
2016-12-06 | bcache: packed bkeys refactoring | Kent Overstreet | |
2016-12-06 | bcache: asm bkey_cmp_packed() | Kent Overstreet | |
shouldn't need asm for this, but gcc is generating retarded code... later, we should precompute bkey_format_key_bits() and stash that somewhere | |||
2016-12-06 | bcache: drop trace_bkey_pack_pos_fail | Kent Overstreet | |
this isn't actually a slowpath - move the tracepoint to the actual slowpath | |||
2016-12-06 | bcache: fix another copygc deadlock | Kent Overstreet | |
since btree node reserves got reworked, btree updates can end up blocking on copygc - which means we have to run index updates for copygc out of a separate workqueue. also fix another deadlock related to rwsems being unfair. | |||
2016-12-06 | bcache: change copygc assertion to just print a warning | Kent Overstreet | |
also, fix the assertion... | |||
2016-12-06 | bcache: fix btree node write tracepoint | Kent Overstreet | |
b->nsets was changed, and it wasn't updated | |||
2016-12-05 | bcachefs: fix a regression from extent whiteouts optimizations | Kent Overstreet | |
checking bkey_whiteout(&s->insert->k->k) in extent_insert_committed() was incorrect, because if we were already finished, the insert key's size would be 0 and 0 size extents are always KEY_TYPE_DELETED (i.e. whiteouts). | |||
2016-12-02 | bcache: allow __bch_write() to fragment io more than twice without slowpath loop | Kent Overstreet | |
2016-11-28 | bcache: Whiteout optimizations: extents | Kent Overstreet | |
2016-11-28 | bcache: extent insert path refactoring | Kent Overstreet | |
2016-11-28 | bcache: re-enable btree_node_write() idx_to_write | Kent Overstreet | |
2016-11-28 | bcache: btree_node_verify() improvements | Kent Overstreet | |
2016-11-28 | bcache: Move unwritten whiteouts to a separate area | Kent Overstreet | |
2016-11-23 | bcache: Optimize btree node writes | Kent Overstreet | |
2016-11-23 | bcache: fix a race with journal_seq_blacklist flushing | Kent Overstreet | |
the code was checking for missing journal entries in journal replay - but by that point, journal_seq_blacklist entries could already have been flushed and removed, causing us to spuriously think we were missing journal entries | |||
2016-11-23 | bcache: New sorting infrastructure | Kent Overstreet | |
The upcoming whiteout optimizations have to do new kinds of sorting, add some new infrastructure to abstract out the comparison function Later, we should use this for the sorts we do when reading in a btree node (bch_key_sort_fix_overlapping and bch_extent_sort_fix_overlapping). |