linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: jes.sorensen@gmail.com
To: NeilBrown <neilb@suse.com>
Cc: linux-raid <linux-raid@vger.kernel.org>,
	Hannes Reinecke <hare@suse.de>,
	kernel-team@fb.com
Subject: Re: Can we deprecate ioctl(RAID_VERSION)?
Date: Fri, 07 Apr 2017 11:55:51 -0400	[thread overview]
Message-ID: <wrfjinmgqkjc.fsf@gmail.com> (raw)
In-Reply-To: <87vaqhyx4i.fsf@notabene.neil.brown.name> (NeilBrown's message of "Fri, 07 Apr 2017 08:44:29 +1000")

NeilBrown <neilb@suse.com> writes:
> On Thu, Apr 06 2017, Jes Sorensen wrote:
>> Neil,
>>
>> I see, thanks for explaining.
>>
>> The goal is to eventually get out of the ioctl() business and get to a 
>> state where we can do everything via sysfs/configfs. Right now we have a 
>> big mix between ioctl and sysfs where neither interface does everything. 
>> The recent issues with PPL (I think it was) showed that we had to add 
>> more ioctl support because the interfaces needed to do it for sysfs 
>> weren't quite there. My long term goal is to get that situation improved 
>> so we can avoid adding anymore ioctl interfaces and eventually allow for 
>> distros to build mdadm with ioctl support disabled. We had a discussion 
>> at LSF/MM in Boston about this (Hannes, Shaohua, Song, and myself).
>
> Sounds like a good goal, if approached cautiously (and it does sound
> like you are showing proper caution).
> And I don't think we need the "/configfs" bit.  Configfs is just for
> people who don't understand sysfs ;-)

Glad to hear we're in agreement on this. I definitely want to be
cautious about this. While change is good, we have a responsibility
towards existing users. This isn't a desktop environment after all :)

I am not really tied to sysfs/configfs on this, whoever does that part
of the work gets to show us what he/she works best and explain why.

>> I think it's fair to draw a line in the sand and say that mdadm-4.1+ 
>> will not support kernels older than 2.6.15. I am open to the kernel 
>> version we pick here, but I would like to start deprecating some of the 
>> really old code. I have patches that does this in my tree, but I need to 
>> add a check for kernel version > 2.6.15. I am not aware what SuSE's 
>> enterprise kernel versions look like, but checking RHEL/CentOS RHEL5 was 
>> 2.6.18, while RHEL4 was 2.6.9 - and RHEL4 has been unsupported for quite 
>> a while. At least for RHEL/CentOS 2.6.15 as the line in the sand seems fine.
>
> With my SUSE hat on, I'm happy for new mdadm to not support kernels
> older than 3.0.  Probably even 3.12.

I just pushed the first set of changes into git for this. We no longer
support kernels older than 2.6.15.

If it breaks something else, I am ready to take public blame! If it ends
up biting another distro for a slightly older kernel, we can look at
fixing that up.

>> For the kernel to expose features to userland in the future, I would 
>> prefer to go with a feature-flag style interface exposed via sysfs. That 
>> way a distro could enable one feature, but not the other in their kernel 
>> without having to worry about actual version numbers.
>
> I think there are usually better ways than feature flags.
> If the new feature requires a new file in sysfs, then the existence of
> the file signals the presence of the feature.

That is pretty much how I see feature flags.

Next question since I am wearing my 'what is this old stuff doing' hat.
mdassemble? Does anything still use this? The reason is a lot of the
newer features are explicitly included, and switching to sysfs is
effectively going to kill it, unless it gets a major upgrade.

Cheers,
Jes

  reply	other threads:[~2017-04-07 15:55 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-05 17:55 Can we deprecate ioctl(RAID_VERSION)? jes.sorensen
2017-04-05 19:02 ` jes.sorensen
2017-04-05 22:32   ` NeilBrown
2017-04-06 15:31     ` Jes Sorensen
2017-04-06 18:10       ` Coly Li
2017-04-06 18:14         ` Jes Sorensen
2017-04-07  3:54           ` Coly Li
2017-04-07 14:54             ` Jes Sorensen
2017-04-06 22:44       ` NeilBrown
2017-04-07 15:55         ` jes.sorensen [this message]
2017-04-09 23:01           ` NeilBrown
2017-04-10  9:26             ` Nix
2017-04-11 14:46             ` Jes Sorensen

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=wrfjinmgqkjc.fsf@gmail.com \
    --to=jes.sorensen@gmail.com \
    --cc=hare@suse.de \
    --cc=kernel-team@fb.com \
    --cc=linux-raid@vger.kernel.org \
    --cc=neilb@suse.com \
    /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 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).