On Mon, Jun 22, 2015 at 09:54:51AM -0700, Dan Williams wrote: > > I don't see why you're comparing with MD and DM here. MD and DM > > sit cleanly ontop of any block device. If btt was independent of > > libnvdimm and just used ->rw_bytes we could see it as this. > > > > But it's all a giant entangled mess, where btt for example is probed > > by libnvdimm. At the same time pmem.c isn't really a true block > > driver, it's really just a trivial shim between the block API > > and pmem-style memcpy. Especially with the proper pmem API btt > > would become cleaner just calling that directly. > > The pmem api does nothing to fix torn sectors, there's no extra > atomicity guarantees that come from those instructions. Of course not. And neither does pmem.c help with you in any way. That's the point: btt should be a peer to pmem.c, not on top of it as there's no value add in pmem.c for it, and they are logically peers. > Well, let's start with per-disk btt and see where that gets us, we can > always ramp up complexity later. I'd just as soon make the default > opt-in/out a Kconfig toggle with a sysfs override. Kconfig or sysfs are both utterly horrible choices. It's a disk format choice so it needs to be persisted. -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in