# Re: \[PATCH v6 04/21\] fsnotify: Reserve mark flag bits for backends

- From: Amir Goldstein \<amir73il@gmail.com\>
- Date: 2021-08-13 07:28:40 
- List: linux-ext4
- Page: https://ratatoskr.run/linux-ext4/2021/08/212332
- Thread: https://ratatoskr.run/linux-api/2021/08/212282/t.md

```text
On Fri, Aug 13, 2021 at 12:40 AM Gabriel Krisman Bertazi
[ref] wrote:
>
> Split out the final bits of struct fsnotify_mark->flags for use by a
> backend.
>
> Signed-off-by: Gabriel Krisman Bertazi <redacted>
>
> Changes since v1:
>   - turn consts into defines (jan)
> ---
>  include/linux/fsnotify_backend.h | 18 +++++++++++++++---
>  1 file changed, 15 insertions(+), 3 deletions(-)
>
> diff --git a/include/linux/fsnotify_backend.h b/include/linux/fsnotify_backend.h
> index 1ce66748a2d2..ae1bd9f06808 100644
> --- a/include/linux/fsnotify_backend.h
> +++ b/include/linux/fsnotify_backend.h
> @@ -363,6 +363,20 @@ struct fsnotify_mark_connector {
>         struct hlist_head list;
>  };
>
> +enum fsnotify_mark_bits {
> +       FSN_MARK_FL_BIT_IGNORED_SURV_MODIFY,
> +       FSN_MARK_FL_BIT_ALIVE,
> +       FSN_MARK_FL_BIT_ATTACHED,
> +       FSN_MARK_PRIVATE_FLAGS,
> +};
> +
> +#define FSNOTIFY_MARK_FLAG_IGNORED_SURV_MODIFY \
> +       (1 << FSN_MARK_FL_BIT_IGNORED_SURV_MODIFY)
> +#define FSNOTIFY_MARK_FLAG_ALIVE \
> +       (1 << FSN_MARK_FL_BIT_ALIVE)
> +#define FSNOTIFY_MARK_FLAG_ATTACHED \
> +       (1 << FSN_MARK_FL_BIT_ATTACHED)
> +
>  /*
>   * A mark is simply an object attached to an in core inode which allows an
>   * fsnotify listener to indicate they are either no longer interested in events
> @@ -398,9 +412,7 @@ struct fsnotify_mark {
>         struct fsnotify_mark_connector *connector;
>         /* Events types to ignore [mark->lock, group->mark_mutex] */
>         __u32 ignored_mask;
> -#define FSNOTIFY_MARK_FLAG_IGNORED_SURV_MODIFY 0x01
> -#define FSNOTIFY_MARK_FLAG_ALIVE               0x02
> -#define FSNOTIFY_MARK_FLAG_ATTACHED            0x04
> +       /* Upper bits [31:PRIVATE_FLAGS] are reserved for backend usage */

I don't understand what [31:PRIVATE_FLAGS] means

Otherwise:

Reviewed-by: Amir Goldstein <amir73il@gmail.com>

Thanks,
Amir.
```
