Skip to content

kernel: CONFIG_INOTIFY_USER is off on t40 and v83x, so nothing on those boards can watch a file #2364

Description

@widgetii

Two board kernel configs disable inotify outright, along with fanotify:

  • br-ext-chip-ingenic/board/t40/t40.generic.config:1805-1806
  • br-ext-chip-allwinner/board/v83x/v83x.generic.config:2572-2573
# CONFIG_INOTIFY_USER is not set
# CONFIG_FANOTIFY is not set

Affected defconfigs: t40_lite, t40_ultimate, v83x_lite, v83x_ultimate.

Why this looks unintentional

INOTIFY_USER is default y upstream, and every other board in the tree agrees with that:

state count
CONFIG_INOTIFY_USER=y 71
symbol absent (short .neo seed fragment, inherits default y) 6
explicitly is not set 2

The six that omit the symbol are ~230-line seed fragments, not full configs, so they are fine.
The two that turn it off are full generated configs (2320 and 3140 lines), so the negation is
almost certainly inherited from a vendor defconfig that was trimmed for size rather than a
decision anyone made about OpenIPC.

Why it matters

No in-tree consumer needs inotify today, which is why this has gone unnoticed. But it
silently removes a whole class of userspace capability on those four images — any daemon or
tool that wants to watch a file for changes simply cannot, and the failure mode is a
inotify_init1() returning ENOSYS at runtime rather than anything visible at build time.

The concrete case that prompted this: we are looking at having majestic watch
/etc/majestic.yaml so an edit applies without a reload. On t40 and v83x that watch could
never be established, so the feature would have to degrade to SIGHUP-only on exactly these
boards while working everywhere else — a per-board behavioural split with no reason behind it.

Asks

  1. Confirm whether the negation is deliberate, and measure what turning it back on costs in
    kernel size on each of the two boards.
  2. If the cost is small, set CONFIG_INOTIFY_USER=y for consistency with the other 71.
  3. If the cost is real and the boards are tight, record the exception somewhere a future
    author will find it, so the next feature that wants a file watch knows to degrade rather
    than assume.

Not urgent — filing so it is written down before it bites something.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions