[Bug 1213925] [NEW] upstart should notice "/etc" inode change

Dmitrijs Ledkovs launchpad at surgut.co.uk
Mon Aug 19 13:29:41 UTC 2013


Public bug reported:

When one boots ubuntu with "/" using overlayfs, the overlay would
typically be empty and not have RW "/etc/" overlay directory yet.

Upon writing to RO-base "/etc/", a RW "/etc" overlay directory will be
created.

Since a RW "/etc" didn't exist before, the inotify watches are still
watching the RO-base "/etc/" directory and thus not notifying upstart to
reload configurations of job files as appropriate.

If the filesystem used as an overlay support inotify, than inotify
events would be emitted on the RW "/etc" and thus upstart would monitor
it after initctl reload-configuration.

If RW "/" overlay is created before upstart is run, than when RW "/etc/"
overlay is created, the RW "/" does receive inotify event that "/etc" is
created.

I am thus proposing to add a by-default a job that monitors all "/"
events via file-bridge, and if it notices that "/etc" has been created,
executes initctl reload-configuration. Thus for a lot of common cases of
"/" overlayfs (live session off ubuntu desktop, lxc-cloned images with
overlayfs, cloud-image overlayfs) upstart in ubuntu will be reloaded
when needed.

Related bugs:
 * bug 882147:  overlayfs does not implement inotify interfaces correctly

** Affects: upstart (Ubuntu)
     Importance: Medium
     Assignee: Dmitrijs Ledkovs (xnox)
         Status: Confirmed

** Changed in: upstart (Ubuntu)
     Assignee: (unassigned) => Dmitrijs Ledkovs (xnox)

** Changed in: upstart (Ubuntu)
       Status: New => Confirmed

** Changed in: upstart (Ubuntu)
   Importance: Undecided => Medium

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to upstart in Ubuntu.
https://bugs.launchpad.net/bugs/1213925

Title:
  upstart should notice "/etc" inode change

Status in “upstart” package in Ubuntu:
  Confirmed

Bug description:
  When one boots ubuntu with "/" using overlayfs, the overlay would
  typically be empty and not have RW "/etc/" overlay directory yet.

  Upon writing to RO-base "/etc/", a RW "/etc" overlay directory will be
  created.

  Since a RW "/etc" didn't exist before, the inotify watches are still
  watching the RO-base "/etc/" directory and thus not notifying upstart
  to reload configurations of job files as appropriate.

  If the filesystem used as an overlay support inotify, than inotify
  events would be emitted on the RW "/etc" and thus upstart would
  monitor it after initctl reload-configuration.

  If RW "/" overlay is created before upstart is run, than when RW
  "/etc/" overlay is created, the RW "/" does receive inotify event that
  "/etc" is created.

  I am thus proposing to add a by-default a job that monitors all "/"
  events via file-bridge, and if it notices that "/etc" has been
  created, executes initctl reload-configuration. Thus for a lot of
  common cases of "/" overlayfs (live session off ubuntu desktop, lxc-
  cloned images with overlayfs, cloud-image overlayfs) upstart in ubuntu
  will be reloaded when needed.

  Related bugs:
   * bug 882147:  overlayfs does not implement inotify interfaces correctly

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/1213925/+subscriptions




More information about the foundations-bugs mailing list