linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
To: Richard Weinberger <richard@nod.at>, <dedekind1@gmail.com>
Cc: <linux-mtd@lists.infradead.org>, <adrian.hunter@intel.com>,
	<linux-fsdevel@vger.kernel.org>
Subject: Re: [PATCH RESEND] ubifs: Introduce a mount option of force_atime.
Date: Wed, 10 Jun 2015 11:16:19 +0800	[thread overview]
Message-ID: <5577AC03.9060909@cn.fujitsu.com> (raw)
In-Reply-To: <55769D97.3010602@nod.at>

On 06/09/2015 04:02 PM, Richard Weinberger wrote:
> Am 09.06.2015 um 08:36 schrieb Artem Bityutskiy:
>> On Mon, 2015-06-08 at 18:07 +0800, Dongsheng Yang wrote:
>>> Currently, ubifs does not support access time anyway. I understand
>>> that there is a overhead to update inode in each access from user.
>>>
>>> But for the following two reasons, I think we can make it optional
>>> to user.
>>>
>>> (1). More and more flash storage in server are trying to use ubifs,
>>> it is not only for a device such as mobile phone any more, we want
>>> to use it in more and more generic way. Then we need to compete
>>> with some other main filesystems. From this point, access time is
>>> necessary to us, at least as a choice to user currently.
>>>
>>> (2). The default mount option about atime is relatime currently,
>>> it's much relaxy compared with strictatime. Then we don't update
>>> the inode in any accessing. So the overhead is not too much.
>>> It's really acceptable.
>>>
>>> Signed-off-by: Dongsheng Yang <yangds.fnst@cn.fujitsu.com>
>>> ---
>>> 	It's a RESEND patch to cc to fsdevel as Artem suggested.
>>> I would rename force_atime to enable_atime in next version.
>>
>> Why do you need to introduce a custom "force_atime" option if there are
>> already standard "atime" and "noatime" mount option? I am fine with
>> adding atime support to UBIFS in general, and I'd expect this behavior
>> then.
>
> I think the rationale behind force_atime was "I know atime can hurt my NAND and I know what
> I'm doing". :-)
> Such that possible users think of the consequences.

Thanx Richard, Yes, that's my point. :-)

In addition, the atime and noatime are non-fs dependent options.
Then these options would be parsed in userspace and vfs will
get a flags about them. vfs are treating default as atime enabled,
then vfs will set MNT_RELATIME in flags:

2592         /* Default to relatime unless overriden */
2593         if (!(flags & MS_NOATIME))
2594                 mnt_flags |= MNT_RELATIME;

But ubifs is working differently. ubifs disables atime by default.
The problem is, we can not distinguish the following two case
in ubifs.

1. mount -t ubifs ... - MNT_RELATIME in flags
2. mount -t ubifs -o atime - MNT_RELATIME in flags too

In vfs, they are equal. In ubifs, we want different behaviours but we
can not distinguish them.

Therefore, I introduced a new option named as force_atime in ubifs.
That's a ubifs-dependent opiton and it works as a main switch, in
a higher level compared with atime and noatime. If force_atime, we
support the atime-related flags. Otherwise, we don't care about all of
them in flags and don't support atime anyway.

Thanx
Yang

>
> Thanks,
> //richard
> .
>


  reply	other threads:[~2015-06-10  3:21 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-08 10:07 [PATCH RESEND] ubifs: Introduce a mount option of force_atime Dongsheng Yang
2015-06-08 22:35 ` Richard Weinberger
2015-06-08 22:55 ` Richard Weinberger
2015-06-09  2:57   ` Dongsheng Yang
2015-06-09  3:24   ` Dongsheng Yang
2015-06-09  5:00     ` Dongsheng Yang
2015-06-09  5:09       ` Dongsheng Yang
2015-06-09  6:36 ` Artem Bityutskiy
2015-06-09  8:02   ` Richard Weinberger
2015-06-10  3:16     ` Dongsheng Yang [this message]
2015-06-10  9:21       ` Artem Bityutskiy
2015-06-10 10:10         ` Dongsheng Yang
2015-06-10 10:25           ` Artem Bityutskiy
2015-06-10 10:34             ` Dongsheng Yang
2015-06-10 11:05               ` Artem Bityutskiy
2015-06-23  9:55                 ` Dongsheng Yang
2015-06-23 10:44                   ` Artem Bityutskiy
2015-06-23 23:49                     ` Dongsheng Yang
2015-06-24  0:33                     ` Dave Chinner
2015-06-24 16:04                       ` Artem Bityutskiy
2015-06-25  9:55                       ` Dongsheng Yang
2015-06-25 10:08                         ` Artem Bityutskiy
2015-06-25 10:10                           ` Dongsheng Yang
2015-06-25 11:28                             ` Artem Bityutskiy
2015-06-26  1:17                               ` Dongsheng Yang
2015-06-26  7:01                                 ` Artem Bityutskiy
2015-06-26  7:13                                   ` Dongsheng Yang
2015-06-26  7:43                                     ` Artem Bityutskiy
2015-06-26  7:52                                       ` Dongsheng Yang
2015-06-26  8:19                                         ` Artem Bityutskiy
2015-06-26  8:22                                           ` Dongsheng Yang

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=5577AC03.9060909@cn.fujitsu.com \
    --to=yangds.fnst@cn.fujitsu.com \
    --cc=adrian.hunter@intel.com \
    --cc=dedekind1@gmail.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=richard@nod.at \
    /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).