linux-bcachefs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH 00/32] bcachefs - a new COW filesystem
@ 2023-05-15 11:15 Askar Safin
  0 siblings, 0 replies; 4+ messages in thread
From: Askar Safin @ 2023-05-15 11:15 UTC (permalink / raw)
  To: Kent Overstreet
  Cc: linux-kernel, linux-fsdevel, linux-block, linux-mm, linux-bcachefs

Kent, please, make sure you dealt with problems specific to another
fs: btrfs: https://arstechnica.com/gadgets/2021/09/examining-btrfs-linuxs-perpetually-half-finished-filesystem/
. In particular, I dislike this btrfs problems, mentioned in the
article:

- "Yes, you read that correctly—you mount the array using the name of
any given disk in the array. No, it doesn't matter which one"
- "Even though our array is technically "redundant," it refuses to
mount with /dev/vdc missing... In the worst-case scenario—a root
filesystem that itself is stored "redundantly" on btrfs-raid1 or
btrfs-raid10—the entire system refuses to boot... If you're thinking,
"Well, the obvious step here is just to always mount degraded," the
btrfs devs would like to have a word with you... If you lose a drive
from a conventional RAID array, or an mdraid array, or a ZFS zpool,
that array keeps on trucking without needing any special flags to
mount it. If you then add the failed drive back to the array, your
RAID manager will similarly automatically begin "resilvering" or
"rebuilding" the array... That, unfortunately, is not the case with
btrfs-native RAID"

I suggest reading the article in full, at least from section "Btrfs
RAID array management is a mess" till the end.

Please, ensure that bcachefs has no these problems! These problems
scary me away from btrfs.

Please, CC me when answering
-- 
Askar Safin

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 00/32] bcachefs - a new COW filesystem
  2023-06-15 20:41 ` Pavel Machek
@ 2023-06-15 21:26   ` Kent Overstreet
  0 siblings, 0 replies; 4+ messages in thread
From: Kent Overstreet @ 2023-06-15 21:26 UTC (permalink / raw)
  To: Pavel Machek
  Cc: linux-kernel, linux-fsdevel, linux-block, linux-mm,
	linux-bcachefs, viro, akpm, boqun.feng, brauner, hch, colyli,
	djwong, mingo, jack, axboe, willy, ojeda, ming.lei, ndesaulniers,
	peterz, phillip, urezki, longman, will

On Thu, Jun 15, 2023 at 10:41:56PM +0200, Pavel Machek wrote:
> Hi!
> 
> > I'm submitting the bcachefs filesystem for review and inclusion.
> > 
> > Included in this patch series are all the non fs/bcachefs/ patches. The
> > entire tree, based on v6.3, may be found at:
> > 
> >   http://evilpiepirate.org/git/bcachefs.git bcachefs-for-upstream
> > 
> > ----------------------------------------------------------------
> > 
> > bcachefs overview, status:
> > 
> > Features:
> >  - too many to list
> > 
> > Known bugs:
> >  - too many to list
> 
> 
> Documentation: missing.

https://bcachefs.org/bcachefs-principles-of-operation.pdf

> Dunno. I guess it would help review if feature and known bugs lists were included.

https://evilpiepirate.org/~testdashboard/ci?branch=bcachefs

https://github.com/koverstreet/bcachefs/issues/

Hope that helps...

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 00/32] bcachefs - a new COW filesystem
  2023-05-09 16:56 Kent Overstreet
@ 2023-06-15 20:41 ` Pavel Machek
  2023-06-15 21:26   ` Kent Overstreet
  0 siblings, 1 reply; 4+ messages in thread
From: Pavel Machek @ 2023-06-15 20:41 UTC (permalink / raw)
  To: Kent Overstreet
  Cc: linux-kernel, linux-fsdevel, linux-block, linux-mm,
	linux-bcachefs, viro, akpm, boqun.feng, brauner, hch, colyli,
	djwong, mingo, jack, axboe, willy, ojeda, ming.lei, ndesaulniers,
	peterz, phillip, urezki, longman, will

Hi!

> I'm submitting the bcachefs filesystem for review and inclusion.
> 
> Included in this patch series are all the non fs/bcachefs/ patches. The
> entire tree, based on v6.3, may be found at:
> 
>   http://evilpiepirate.org/git/bcachefs.git bcachefs-for-upstream
> 
> ----------------------------------------------------------------
> 
> bcachefs overview, status:
> 
> Features:
>  - too many to list
> 
> Known bugs:
>  - too many to list


Documentation: missing.

Dunno. I guess it would help review if feature and known bugs lists were included.

BR,
									Pavel

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 00/32] bcachefs - a new COW filesystem
@ 2023-05-09 16:56 Kent Overstreet
  2023-06-15 20:41 ` Pavel Machek
  0 siblings, 1 reply; 4+ messages in thread
From: Kent Overstreet @ 2023-05-09 16:56 UTC (permalink / raw)
  To: linux-kernel, linux-fsdevel, linux-block, linux-mm, linux-bcachefs
  Cc: Kent Overstreet, viro, akpm, boqun.feng, brauner, hch, colyli,
	djwong, mingo, jack, axboe, willy, ojeda, ming.lei, ndesaulniers,
	peterz, phillip, urezki, longman, will

I'm submitting the bcachefs filesystem for review and inclusion.

Included in this patch series are all the non fs/bcachefs/ patches. The
entire tree, based on v6.3, may be found at:

  http://evilpiepirate.org/git/bcachefs.git bcachefs-for-upstream

----------------------------------------------------------------

bcachefs overview, status:

Features:
 - too many to list

Known bugs:
 - too many to list

Status:
 - Snapshots have been declared stable; one serious bug report
   outstanding to look into, most users report it working well.

   These are RW btrfs-style snapshots, but with far better scalability
   and no scalability issues with sparse snapshots due to key level
   versioning.

 - Erasure coding is getting really close; hope to have it ready for
   users to beat on it by this summer. This is a novel RAID/erasure
   coding design with no write hole, and no fragmentation of writes
   (e.g. RAIDZ).

 - Tons of scalabality work finished over the past year, users are
   running it on 100 TB filesystems without complaint, waiting for first
   1 PB user; next thing to address re: scalability is fsck/recovery
   memory usage.

 - Test infrastructure! Major project milestone, check out our test
   dashboard at
     https://evilpiepirate.org/~testdashboard/ci?branch=bcachefs

Other project notes:

irc::/irc.oftc.net/bcache is where most activity happens; I'm always
there, and most code review happens there - I find the conversational
format more productive.

------------------------------------------------

patches in this series:

Christopher James Halse Rogers (1):
  stacktrace: Export stack_trace_save_tsk

Daniel Hill (1):
  lib: add mean and variance module.

Dave Chinner (3):
  vfs: factor out inode hash head calculation
  hlist-bl: add hlist_bl_fake()
  vfs: inode cache conversion to hash-bl

Kent Overstreet (27):
  Compiler Attributes: add __flatten
  locking/lockdep: lock_class_is_held()
  locking/lockdep: lockdep_set_no_check_recursion()
  locking: SIX locks (shared/intent/exclusive)
  MAINTAINERS: Add entry for six locks
  sched: Add task_struct->faults_disabled_mapping
  mm: Bring back vmalloc_exec
  fs: factor out d_mark_tmpfile()
  block: Add some exports for bcachefs
  block: Allow bio_iov_iter_get_pages() with bio->bi_bdev unset
  block: Bring back zero_fill_bio_iter
  block: Rework bio_for_each_segment_all()
  block: Rework bio_for_each_folio_all()
  block: Don't block on s_umount from __invalidate_super()
  bcache: move closures to lib/
  MAINTAINERS: Add entry for closures
  closures: closure_wait_event()
  closures: closure_nr_remaining()
  closures: Add a missing include
  iov_iter: copy_folio_from_iter_atomic()
  MAINTAINERS: Add entry for generic-radix-tree
  lib/generic-radix-tree.c: Don't overflow in peek()
  lib/generic-radix-tree.c: Add a missing include
  lib/generic-radix-tree.c: Add peek_prev()
  lib/string_helpers: string_get_size() now returns characters wrote
  lib: Export errname
  MAINTAINERS: Add entry for bcachefs

 MAINTAINERS                                   |  39 +
 block/bdev.c                                  |   2 +-
 block/bio.c                                   |  57 +-
 block/blk-core.c                              |   1 +
 block/blk-map.c                               |  38 +-
 block/blk.h                                   |   1 -
 block/bounce.c                                |  12 +-
 drivers/md/bcache/Kconfig                     |  10 +-
 drivers/md/bcache/Makefile                    |   4 +-
 drivers/md/bcache/bcache.h                    |   2 +-
 drivers/md/bcache/btree.c                     |   8 +-
 drivers/md/bcache/super.c                     |   1 -
 drivers/md/bcache/util.h                      |   3 +-
 drivers/md/dm-crypt.c                         |  10 +-
 drivers/md/raid1.c                            |   4 +-
 fs/btrfs/disk-io.c                            |   4 +-
 fs/btrfs/extent_io.c                          |  50 +-
 fs/btrfs/raid56.c                             |  14 +-
 fs/crypto/bio.c                               |   9 +-
 fs/dcache.c                                   |  12 +-
 fs/erofs/zdata.c                              |   4 +-
 fs/ext4/page-io.c                             |   8 +-
 fs/ext4/readpage.c                            |   4 +-
 fs/f2fs/data.c                                |  20 +-
 fs/gfs2/lops.c                                |  10 +-
 fs/gfs2/meta_io.c                             |   8 +-
 fs/inode.c                                    | 218 +++--
 fs/iomap/buffered-io.c                        |  14 +-
 fs/mpage.c                                    |   4 +-
 fs/squashfs/block.c                           |  48 +-
 fs/squashfs/lz4_wrapper.c                     |  17 +-
 fs/squashfs/lzo_wrapper.c                     |  17 +-
 fs/squashfs/xz_wrapper.c                      |  19 +-
 fs/squashfs/zlib_wrapper.c                    |  18 +-
 fs/squashfs/zstd_wrapper.c                    |  19 +-
 fs/super.c                                    |  40 +-
 fs/verity/verify.c                            |   9 +-
 include/linux/bio.h                           | 132 +--
 include/linux/blkdev.h                        |   1 +
 include/linux/bvec.h                          |  70 +-
 .../md/bcache => include/linux}/closure.h     |  46 +-
 include/linux/compiler_attributes.h           |   5 +
 include/linux/dcache.h                        |   1 +
 include/linux/fs.h                            |  10 +-
 include/linux/generic-radix-tree.h            |  68 +-
 include/linux/list_bl.h                       |  22 +
 include/linux/lockdep.h                       |  10 +
 include/linux/lockdep_types.h                 |   2 +-
 include/linux/mean_and_variance.h             | 219 +++++
 include/linux/sched.h                         |   1 +
 include/linux/six.h                           | 210 +++++
 include/linux/string_helpers.h                |   4 +-
 include/linux/uio.h                           |   2 +
 include/linux/vmalloc.h                       |   1 +
 init/init_task.c                              |   1 +
 kernel/Kconfig.locks                          |   3 +
 kernel/locking/Makefile                       |   1 +
 kernel/locking/lockdep.c                      |  46 ++
 kernel/locking/six.c                          | 779 ++++++++++++++++++
 kernel/module/main.c                          |   4 +-
 kernel/stacktrace.c                           |   2 +
 lib/Kconfig                                   |   3 +
 lib/Kconfig.debug                             |  18 +
 lib/Makefile                                  |   2 +
 {drivers/md/bcache => lib}/closure.c          |  36 +-
 lib/errname.c                                 |   1 +
 lib/generic-radix-tree.c                      |  76 +-
 lib/iov_iter.c                                |  53 +-
 lib/math/Kconfig                              |   3 +
 lib/math/Makefile                             |   2 +
 lib/math/mean_and_variance.c                  | 136 +++
 lib/math/mean_and_variance_test.c             | 155 ++++
 lib/string_helpers.c                          |   8 +-
 mm/nommu.c                                    |  18 +
 mm/vmalloc.c                                  |  21 +
 75 files changed, 2485 insertions(+), 445 deletions(-)
 rename {drivers/md/bcache => include/linux}/closure.h (93%)
 create mode 100644 include/linux/mean_and_variance.h
 create mode 100644 include/linux/six.h
 create mode 100644 kernel/locking/six.c
 rename {drivers/md/bcache => lib}/closure.c (88%)
 create mode 100644 lib/math/mean_and_variance.c
 create mode 100644 lib/math/mean_and_variance_test.c

-- 
2.40.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-06-15 21:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-15 11:15 [PATCH 00/32] bcachefs - a new COW filesystem Askar Safin
  -- strict thread matches above, loose matches on Subject: below --
2023-05-09 16:56 Kent Overstreet
2023-06-15 20:41 ` Pavel Machek
2023-06-15 21:26   ` Kent Overstreet

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).