Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-08-21 | bcachefs: Prioritize fragmentation in bucket allocator | Kent Overstreet | |
2018-08-12 | bcachefs: pass around bset_tree less | Kent Overstreet | |
2018-08-12 | bcachefs: kill extent_insert_hook | Kent Overstreet | |
2018-08-12 | bcachefs: kill i_sectors_hook | Kent Overstreet | |
2018-08-12 | bcachefs: convert fcollapse to bch2_extent_update() | Kent Overstreet | |
2018-08-12 | bcachefs: convert fpunch to bch2_extent_update() | Kent Overstreet | |
2018-08-12 | bcachefs: convert truncate to bch2_extent_update() | Kent Overstreet | |
2018-08-12 | bcachefs: convert bchfs_write_index_update() to bch2_extent_update() | Kent Overstreet | |
2018-08-12 | bcachefs: bch2_extent_trim_atomic() | Kent Overstreet | |
Prep work for extents insert hook removal | |||
2018-08-12 | bcachefs: mempoolify btree_trans | Kent Overstreet | |
2018-08-12 | bcachefs: Fix build when CONFIG_BCACHEFS_DEBUG=n | Kent Overstreet | |
2018-08-12 | bcachefs: BTREE_INSERT_JOURNAL_RES_FULL is no longer possible | Kent Overstreet | |
2018-08-12 | bcachefs: extent_squash() can no longer fail | Kent Overstreet | |
2018-08-12 | bcachefs: make struct btree_iter a bit smaller | Kent Overstreet | |
2018-08-12 | bcachefs: lift ordering restriction on 0 size extents | Kent Overstreet | |
This lifts the restriction that 0 size extents must not overlap with other extents, which means we can now sort extents and non extents the same way, and will let us simplify a bunch of other stuff as well. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: extent unit tests | Kent Overstreet | |
2018-08-12 | bcachefs: bkey_written() | Kent Overstreet | |
also cleanups of btree node offsets | |||
2018-08-12 | bcachefs: improved rw_aux_tree_bsearch() | Kent Overstreet | |
shouldn't be any reason for an actual binary search here | |||
2018-08-12 | bcachefs: Factor out btree_key_can_insert() | Kent Overstreet | |
working on getting rid of all the reasons bch2_insert_fixup_extent() can fail/stop partway, which is needed for other refactorings. One of the reasons we could have to bail out is if we're splitting a compressed extent we might need to add to our disk reservation - but we can check that before actually starting the insert. | |||
2018-08-12 | bcachefs: BCH_SB_RESERVE_BYTES | Kent Overstreet | |
Add an option, gc_reserve_bytes, to set the copygc reserve as a size instead of a percent Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: Better calculation of copygc threshold | Kent Overstreet | |
2018-08-12 | bcachefs: Change how replicated data is accounted | Kent Overstreet | |
Due to compression, the different replicas of a replicated extent don't necessarily have to take up the same amount of space - so replicated data sector counts shouldn't be stored divided by the number of replicas. | |||
2018-08-12 | bcachefs: Account for internal fragmentation better | Kent Overstreet | |
2018-08-12 | bcachefs: kill s_alloc, use bch_data_type | Kent Overstreet | |
2018-08-12 | bcachefs: bch2_mark_key() now takes bch_data_type | Kent Overstreet | |
2018-08-12 | bcachefs: Fix an assertion in the btree node merge path | Kent Overstreet | |
2018-08-12 | bcachefs: Fix locking in allocator thread | Kent Overstreet | |
gc lock must be held while invalidating buckets - fixes "1f7a95698e bcachefs: Invalidate buckets when writing to alloc btree" Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: fix bch2_val_to_text() | Kent Overstreet | |
was returning wrong value | |||
2018-08-12 | bcachefs: minor fsync fix | Kent Overstreet | |
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: Assorted journal refactoring | Kent Overstreet | |
Also improve error reporting - only return an error from bch2_journal_flush_seq() if we had an error writing that entry (i.e. not if there was an error with a newer entry). Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: fix last_seq_ondisk | Kent Overstreet | |
2018-08-12 | bcachefs: fix mtime/ctime update on truncate | Kent Overstreet | |
2018-08-12 | bcachefs: fix fsync after create | Kent Overstreet | |
2018-08-12 | bcachefs: fix nbuckets usage on device resize | Kent Overstreet | |
2018-08-12 | bcachefs: Invalidate buckets when writing to alloc btree | Kent Overstreet | |
Prep work for persistent alloc information. Refactoring also lets us make free_inc much smaller, which means a lot fewer buckets stranded on freelists. | |||
2018-08-12 | bcachefs: kill bucket mark sector count saturation | Kent Overstreet | |
2018-08-12 | bcachefs: don't call bch2_bucket_seq_cleanup from journal_buf_switch | Kent Overstreet | |
journal_buf_switch is called from the foreground when getting a journal reservation and thus is somewhat latency sensitive; bch2_bucket_seq_cleanup has to run infrequently but is a bit expensive when it does run. Call it from the journal write path instead, and punt the journal write to worqueue context. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: Fix an assertion | Kent Overstreet | |
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: fix rename + fsync | Kent Overstreet | |
2018-08-12 | bcachefs: Use ei_update_lock consistently | Kent Overstreet | |
This is prep work for using deferred btree updates for inode updates - the way inodes are done now we're relying on btree locking for ei_inode and ei_update_lock could probably be removed, but it'll actually be needed when we switch to deferred updates. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: bch2_trans_update() now takes struct btree_insert_entry | Kent Overstreet | |
2018-08-12 | bcachefs: Fix mtime/ctime updates | Kent Overstreet | |
Also make inode flags consistent with how the rest of the inode is updated Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: Simplify bch2_write_inode_trans, fix lockdep splat | Kent Overstreet | |
ei_update_lock isn't currently needed for write inode (but it will be needed again when deferred btree updates are used for inode updates) Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: add bch_verbose() statements for shutdown | Kent Overstreet | |
2018-08-12 | bcachefs: Fix a use after free in the journal code | Kent Overstreet | |
2018-08-12 | bcachefs: Fix device add | Kent Overstreet | |
2018-08-12 | bcachefs: trace transaction restarts | Kent Overstreet | |
exceptionally crappy "tracing", but it's a start at documenting the places restarts can be triggered Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: Convert raw uses of bch2_btree_iter_link() to new transactions | Kent Overstreet | |
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: Only check inode i_nlink during full fsck | Kent Overstreet | |
Now that all filesystem operatinos that manipulate the filesystem heirachy and i_nlink are fully atomic, we can add a feature bit to indicate i_nlink doesn't need to be checked. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> | |||
2018-08-12 | bcachefs: Convert bch2_symlink to new transactions | Kent Overstreet | |
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> |