linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jan Kara <jack@suse.cz>
To: Amir Goldstein <amir73il@gmail.com>
Cc: Jan Kara <jack@suse.cz>,
	Matthew Bobrowski <mbobrowski@mbobrowski.org>,
	linux-fsdevel <linux-fsdevel@vger.kernel.org>
Subject: Re: [PATCH v5 10/17] fanotify: cache fsid in fsnotify_mark_connector
Date: Fri, 8 Feb 2019 11:15:10 +0100	[thread overview]
Message-ID: <20190208101510.GC6353@quack2.suse.cz> (raw)
In-Reply-To: <CAOQ4uxhT4GMtaAs=Fi6tu8Q_v2hUJ84swNDWwJ78wskCyT-XAw@mail.gmail.com>

On Thu 07-02-19 18:31:19, Amir Goldstein wrote:
> On Thu, Feb 7, 2019 at 4:48 PM Jan Kara <jack@suse.cz> wrote:
> >
> > On Thu 10-01-19 19:04:37, Amir Goldstein wrote:
> > > For FAN_REPORT_FID, we need to encode fid with fsid of the filesystem on
> > > every event. To avoid having to call vfs_statfs() on every event to get
> > > fsid, we store the fsid in fsnotify_mark_connector on the first time we
> > > add a mark and on handle event we use the cached fsid.
> > >
> > > Subsequent calls to add mark on the same object are expected to pass the
> > > same fsid, so the call will fail on cached fsid mismatch.
> > >
> > > If an event is reported on several mark types (inode, mount, filesystem),
> > > all connectors should already have the same fsid, so we use the cached
> > > fsid from the first connector.
> > >
> > > Suggested-by: Jan Kara <jack@suse.cz>
> > > Signed-off-by: Amir Goldstein <amir73il@gmail.com>
> >
> > I've somewhat modified the patch to simplify code flow around
> > fanotify_get_fid() and also made fsid argument for
> > fsnotify_add_mark_locked() mandatory. The resulting patch is attached.
> >
> 
> ACK. Two nits.
> 
> 1. Dan Carpenter reported a smatch warning. Please fix:
> 
> fs/notify/fanotify/fanotify.c:194 fanotify_encode_fid() error:
> uninitialized symbol 'type'.
> fs/notify/fanotify/fanotify.c:194 fanotify_encode_fid() error:
> uninitialized symbol 'err'.

Yes, but this problem went away with my changes as well since we do 'goto
out_err' only after setting err and type.

> 2. checkpatch doesn't like cutting long debug strings into 80 chars
> (and Greg's linuxsty.vim plugin doesn't warn about them)
> referring to the long string that you broke up
> pr_warn_ratelimited("%s: fsid mismatch on object of type %u: "...

I know and I don't take that too seriously. The point is: You don't want to
break the string so that it is easily greppable. But as long as the core
part of the string is in one line, it's OK. In particular once you get to
the part of the format string where you have the format specifiers,
breaking the string is irrelevant for grepping anymore since nobody can
sanely grep that part of the string. And I took care to follow these
guidances.

								Honza
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR

  reply	other threads:[~2019-02-08 10:15 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-10 17:04 [PATCH v5 00/17] fanotify: add support for more event types Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 01/17] fsnotify: annotate directory entry modification events Amir Goldstein
2019-02-06 14:14   ` Jan Kara
2019-01-10 17:04 ` [PATCH v5 02/17] fsnotify: remove dirent events from FS_EVENTS_POSS_ON_CHILD mask Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 03/17] fsnotify: send all event types to super block marks Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 04/17] fsnotify: move mask out of struct fsnotify_event Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 05/17] fanotify: rename struct fanotify_{,perm_}event_info Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 06/17] fanotify: open code fill_event_metadata() Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 07/17] fanotify: encode file identifier for FAN_REPORT_FID Amir Goldstein
2019-01-11  8:10   ` kbuild test robot
2019-01-11  8:37     ` Amir Goldstein
2019-01-18 18:39       ` Paul Burton
2019-01-10 17:04 ` [PATCH v5 08/17] fanotify: copy event fid info to user Amir Goldstein
2019-02-06 17:41   ` Jan Kara
2019-01-10 17:04 ` [PATCH v5 09/17] fanotify: enable FAN_REPORT_FID init flag Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 10/17] fanotify: cache fsid in fsnotify_mark_connector Amir Goldstein
2019-01-11  3:13   ` kbuild test robot
2019-01-14  7:30   ` Dan Carpenter
2019-01-14  7:30     ` Dan Carpenter
2019-01-14  9:17     ` Amir Goldstein
2019-02-07 14:48   ` Jan Kara
2019-02-07 16:31     ` Amir Goldstein
2019-02-08 10:15       ` Jan Kara [this message]
2019-01-10 17:04 ` [PATCH v5 11/17] vfs: add vfs_get_fsid() helper Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 12/17] fanotify: use vfs_get_fsid() helper instead of vfs_statfs() Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 13/17] fsnotify: report FS_ISDIR flag with MOVE_SELF and DELETE_SELF events Amir Goldstein
2019-02-07 14:57   ` Jan Kara
2019-01-10 17:04 ` [PATCH v5 14/17] fanotify: check FS_ISDIR flag instead of d_is_dir() Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 15/17] fanotify: support events with data type FSNOTIFY_EVENT_INODE Amir Goldstein
2019-02-07 15:18   ` Jan Kara
2019-02-07 16:10     ` Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 16/17] fanotify: add support for create/attrib/move/delete events Amir Goldstein
2019-01-10 17:04 ` [PATCH v5 17/17] fanotify: report FAN_ONDIR to listener with FAN_REPORT_FID Amir Goldstein
2019-02-07 16:26 ` [PATCH v5 00/17] fanotify: add support for more event types Jan Kara

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=20190208101510.GC6353@quack2.suse.cz \
    --to=jack@suse.cz \
    --cc=amir73il@gmail.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=mbobrowski@mbobrowski.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 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).