All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Mahoney <jeffm@suse.com>
To: Eric Sandeen <sandeen@sandeen.net>,
	"Luis R. Rodriguez" <mcgrof@kernel.org>
Cc: Jan Tulak <jtulak@redhat.com>, Dave Chinner <david@fromorbit.com>,
	linux-xfs@vger.kernel.org, jack@suse.com, okurz@suse.com,
	Libor Pechacek <lpechacek@suse.com>
Subject: Re: [PATCH 0/9] mkfs.xfs: add mkfs.xfs.conf support
Date: Fri, 12 May 2017 13:05:03 -0400	[thread overview]
Message-ID: <a206c22c-c4df-5793-6399-9113d8f5c38a@suse.com> (raw)
In-Reply-To: <142427e4-658a-3df2-9ff3-77beb868f48d@sandeen.net>


[-- Attachment #1.1: Type: text/plain, Size: 4607 bytes --]

On 5/12/17 12:05 PM, Eric Sandeen wrote:
> On 5/11/17 6:08 PM, Luis R. Rodriguez wrote:
>> On Thu, May 11, 2017 at 3:57 PM, Eric Sandeen <sandeen@sandeen.net> wrote:
>>> On 5/11/17 5:46 PM, Luis R. Rodriguez wrote:
>>>
>>>> FWIW, I've looked at ways to address this without your future work Jan, ie
>>>> backporting this feature, and ultimately have decided to *not* allow any
>>>> command line overwrite for options specified in the configuration file. So
>>>> for the backported versions of this feature a user will only be able to
>>>> overwrite if the config file is commented out or removed.
>>>>
>>>> How we end up doing this upstream may differ given we may have a way to
>>>> properly do sanity checks overall and treat "defaults" as real "defaults".
>>>> But without such mechanisms implementing a sensible way to overwrite things
>>>> in a compatible way was just crap.
>>>>
>>>> As such for the backported versions of this feature I'll make this big note
>>>> on the man page:
>>>
>>> I'm a little confused - backported from where to where?  I'm not sure what
>>> a "backport" means in this context, when there is no upstream solution at this
>>> time.
>>
>> Since we're still waiting for a bit of delta before I can push this
>> work then from my development tree to a stable older release.
>>
>>>> """
>>>> One  of  the uses of the configuration file is to enable distributions
>>>> to provide mkfs.xfs(8) updates from a base distribution release and enable to
>>>> create filesystems which are sure to remain supported and compatible. As such
>>>> systems with a mkfs.xfs.conf(5) file present have very likely been well thought
>>>> out, and  overriding configuration  file  defaults is discouraged unless you
>>>> know what you are doing and are familiar with the associated risks.  If you
>>>> know what you are doing, wish to waive compatibility, and wish to overwrite the
>>>> configuration file provided the best option is to either remove or uncomment
>>>> the  configuration  file  completely  as options cannot be overwritten on the
>>>> command line.
>>>> """
>>>
>>> So are you planning a forked, non-upstream behavior for your distro?
>>
>> Right.
> 
> I'm not really in a position to tell a distro what to do, other than out of
> concern for polluting user expectations with non-upstream behaviors.  Which
> /is/ a concern; I'm not looking forward to complaints from your users that
> upstream has "broken" behavior w.r.t. your fork when we (finally...?) ship a
> config-file capable mkfs.xfs.
> 
> i.e. you go that route, your forked behavior will differ from any behavior
> that we ever ship upstream.  Your users will eventually need to adapt to
> considerably different behavior which is unique to your distro, and just to
> be clear: "but we already shipped it!" will not hold any weight whatsoever
> in future upstream behavior discussions...
> 
> If you want to ship newer progs w/ older defaults, I really don't understand
> why you can't just revert the patches that added the new defaults.

The goal is to have one package that we can distribute and update across
releases and /not/ impact the experience for the user.  We'd ship the
config file with the release as a separate package and could update
xfsprogs at will.

I don't like the idea that the config file is the "one true" config
file, though.  The user should still be able to override options on the
command line.  The divergence from the upstream package should be
limited *only* to the defaults, not to the user experience.

I'm fine having this depend on Jan's work to make the defaults more
sane.  This is a wish-list item for us and it doesn't need to land tomorrow.

I really think the way it should work is as if the options from the
config file override the built-in options in the same way specifying
them on the command line would.  Subsequently, options on the actual
command line override those.  This seems to be the path to least user
surprise.  The weirdness with specifying units on the command line
affecting other options may make this a little more tricky than it's
laid out here, but the principle should be to surprise the user the
least.  Having this weird divergent "sorry you have a config file and
can't override anything anymore" violates that.  mkfs should issue a
message like "Using built-in defaults" or "Using defaults from <config
path>" so it's clear, especially for user reports, where the defaults
are coming from if there is unexpected behavior.

-Jeff


-- 
Jeff Mahoney
SUSE Labs


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

  parent reply	other threads:[~2017-05-12 17:05 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-03 23:13 [PATCH 0/9] mkfs.xfs: add mkfs.xfs.conf support Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 1/9] mkfs.xfs: add helper to parse command line options Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 2/9] mkfs.xfs: move dopts to struct mkfs_xfs_opts Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 3/9] mkfs.xfs: move iopts to " Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 4/9] mkfs.xfs: move lopts " Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 5/9] mkfs.xfs: move mopts " Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 6/9] mkfs.xfs: move nopts " Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 7/9] mkfs.xfs: move ropts " Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 8/9] mkfs.xfs: use parse_subopts() to parse sopts Luis R. Rodriguez
2017-03-03 23:13 ` [PATCH 9/9] mkfs.xfs: add mkfs.xfs.conf parse support Luis R. Rodriguez
2017-03-03 23:55   ` Dave Chinner
2017-03-09  5:38   ` Eric Sandeen
2017-03-03 23:24 ` [PATCH 0/9] mkfs.xfs: add mkfs.xfs.conf support Luis R. Rodriguez
2017-03-04  3:49 ` Eric Sandeen
2017-03-04  4:56   ` Dave Chinner
2017-03-06  0:08     ` Eric Sandeen
2017-03-07 20:07       ` Jeff Mahoney
2017-03-07 20:09         ` Eric Sandeen
2017-03-06  8:50   ` Jan Kara
2017-03-09  0:16 ` Eric Sandeen
2017-03-09  0:51   ` Luis R. Rodriguez
2017-03-09  4:41     ` Eric Sandeen
2017-03-09 10:12       ` Jan Tulak
2017-03-09 14:31         ` Eric Sandeen
2017-03-09 15:21           ` Jan Tulak
2017-03-09 17:57       ` Luis R. Rodriguez
2017-03-09 22:34         ` Dave Chinner
2017-04-24  5:00           ` Luis R. Rodriguez
2017-04-24  7:26             ` Jan Tulak
2017-04-24  8:25               ` Luis R. Rodriguez
2017-05-11 22:46                 ` Luis R. Rodriguez
2017-05-11 22:57                   ` Eric Sandeen
2017-05-11 23:08                     ` Luis R. Rodriguez
2017-05-12  0:48                       ` Darrick J. Wong
2017-05-12 16:05                       ` Eric Sandeen
2017-05-12 17:03                         ` Luis R. Rodriguez
2017-05-12 17:05                         ` Jeff Mahoney [this message]
2017-05-12 17:30                           ` Luis R. Rodriguez
2017-05-11 23:00                   ` Darrick J. Wong
2017-05-11 23:19                     ` Luis R. Rodriguez

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=a206c22c-c4df-5793-6399-9113d8f5c38a@suse.com \
    --to=jeffm@suse.com \
    --cc=david@fromorbit.com \
    --cc=jack@suse.com \
    --cc=jtulak@redhat.com \
    --cc=linux-xfs@vger.kernel.org \
    --cc=lpechacek@suse.com \
    --cc=mcgrof@kernel.org \
    --cc=okurz@suse.com \
    --cc=sandeen@sandeen.net \
    /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.