All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthew Wilcox <willy@linux.intel.com>
To: Chris Mason <chris.mason@fusionio.com>
Cc: Jeff Moyer <jmoyer@redhat.com>,
	Linux FS Devel <linux-fsdevel@vger.kernel.org>,
	Jens Axboe <axboe@kernel.dk>
Subject: Re: [PATCH 1/2] block: Add support for atomic writes
Date: Tue, 12 Nov 2013 10:11:51 -0500	[thread overview]
Message-ID: <20131112151151.GI6900@linux.intel.com> (raw)
In-Reply-To: <20131107135220.3802.91392@localhost.localdomain>

On Thu, Nov 07, 2013 at 08:52:20AM -0500, Chris Mason wrote:
> Unfortunately, it's hard to say.  I think the fusionio cards are the
> only shipping devices that support this, but I've definitely heard that
> others plan to support it as well.  mariadb/percona already support the
> atomics via fusionio specific ioctls, and turning that into a real
> O_ATOMIC is a priority so other hardware can just hop on the train.
> 
> This feature in general is pretty natural for the log structured squirrels
> they stuff inside flash, so I'd expect everyone to support it.  Matthew,
> how do you feel about all of this?

NVMe doesn't have support for this functionality.  I know what stories I've
heard from our internal device teams about what they can and can't support
in the way of this kind of thing, but I obviously can't repeat them here!

I took a look at the SCSI Block Command spec.  If I understand it
correctly, SCSI would implement this with the WRITE USING TOKEN command.
I don't see why it couldn't implement this API, though it seems like
SCSI would prefer a separate setup step before the write comes in.  I'm
not sure that's a reasonable request to make of the application (nor
am I sure I understand SBC correctly).

I like the API, but I'm a little confused not to see a patch saying "Oh,
and here's how we implemented it in btrfs without any hardware support"
;-)  It seems to me that the concept is just as good a match for an
advanced filesystem that supports snapshots as it is for the FTL inside
a drive.

> With the fusionio drivers, we've recently increased the max atomic size.
> It's basically 1MB, disjoint or contig doesn't matter.  We're powercut
> safe at 1MB.

  parent reply	other threads:[~2013-11-12 15:11 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-01 21:27 [PATCH 0/2] Support for atomic IOs Chris Mason
2013-11-01 21:28 ` [PATCH 1/2] block: Add support for atomic writes Chris Mason
2013-11-01 21:47   ` Shaohua Li
2013-11-05 17:43   ` Jeff Moyer
2013-11-07 13:52     ` Chris Mason
2013-11-07 15:43       ` Jeff Moyer
2013-11-07 15:55         ` Chris Mason
2013-11-07 16:14           ` Jeff Moyer
2013-11-07 16:52             ` Chris Mason
2013-11-13 23:59             ` Dave Chinner
2013-11-12 15:11       ` Matthew Wilcox [this message]
2013-11-13 20:44         ` Chris Mason
2013-11-13 20:53           ` Howard Chu
2013-11-13 21:35           ` Matthew Wilcox
2013-11-01 21:29 ` [PATCH 2/3] fs: Add O_ATOMIC support to direct IO Chris Mason
  -- strict thread matches above, loose matches on Subject: below --
2013-11-20  8:23 [PATCH 1/2] block: Add support for atomic writes Kishore Sampathkumar
2013-11-26  6:24 Kishore Sampathkumar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20131112151151.GI6900@linux.intel.com \
    --to=willy@linux.intel.com \
    --cc=axboe@kernel.dk \
    --cc=chris.mason@fusionio.com \
    --cc=jmoyer@redhat.com \
    --cc=linux-fsdevel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.