Disables /dev/kmsg symlinking if set to 1. Signed-off-by: Alexander Vladimirov <alexander.idkfa.vladimi...@gmail.com> --- doc/lxc.conf.sgml.in | 19 +++++++++++++++++++ src/lxc/conf.c | 6 ++++-- src/lxc/conf.h | 1 + src/lxc/confile.c | 12 ++++++++++++ 4 files changed, 36 insertions(+), 2 deletions(-)
diff --git a/doc/lxc.conf.sgml.in b/doc/lxc.conf.sgml.in index b784025..b8078eb 100644 --- a/doc/lxc.conf.sgml.in +++ b/doc/lxc.conf.sgml.in @@ -554,6 +554,25 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA </refsect2> <refsect2> + <title>Disable kmsg symlink</title> + <para> + Disables default behavior to create /dev/kmsg as symlink to /dev/console. + </para> + <variablelist> + <varlistentry> + <term> + <option>lxc.disable_kmsg</option> + </term> + <listitem> + <para> + Set this to 1 to disable /dev/kmsg symlinking. + </para> + </listitem> + </varlistentry> + </variablelist> + </refsect2> + + <refsect2> <title>Mount points</title> <para> The mount points section specifies the different places to be diff --git a/src/lxc/conf.c b/src/lxc/conf.c index 9700c7a..9850d58 100644 --- a/src/lxc/conf.c +++ b/src/lxc/conf.c @@ -2768,8 +2768,10 @@ int lxc_setup(const char *name, struct lxc_conf *lxc_conf) return -1; } - if (setup_kmsg(&lxc_conf->rootfs, &lxc_conf->console)) // don't fail - ERROR("failed to setup kmsg for '%s'", name); + if (!lxc_conf->disable_kmsg) { + if (setup_kmsg(&lxc_conf->rootfs, &lxc_conf->console)) // don't fail + ERROR("failed to setup kmsg for '%s'", name); + } if (setup_tty(&lxc_conf->rootfs, &lxc_conf->tty_info, lxc_conf->ttydir)) { ERROR("failed to setup the ttys for '%s'", name); diff --git a/src/lxc/conf.h b/src/lxc/conf.h index 4c25970..e07c871 100644 --- a/src/lxc/conf.h +++ b/src/lxc/conf.h @@ -278,6 +278,7 @@ struct lxc_conf { int maincmd_fd; int autodev; // if 1, mount and fill a /dev at start int stopsignal; // signal used to stop container + int disable_kmsg; // disables /dev/kmsg symlinking char *rcfile; // Copy of the top level rcfile we read }; diff --git a/src/lxc/confile.c b/src/lxc/confile.c index cd02b2e..da3a49d 100644 --- a/src/lxc/confile.c +++ b/src/lxc/confile.c @@ -90,6 +90,7 @@ static int config_includefile(const char *, const char *, struct lxc_conf *); static int config_network_nic(const char *, const char *, struct lxc_conf *); static int config_autodev(const char *, const char *, struct lxc_conf *); static int config_stopsignal(const char *, const char *, struct lxc_conf *); +static int config_disable_kmsg(const char *, const char *, struct lxc_conf *); static struct lxc_config_t config[] = { @@ -138,6 +139,7 @@ static struct lxc_config_t config[] = { { "lxc.include", config_includefile }, { "lxc.autodev", config_autodev }, { "lxc.stopsignal", config_stopsignal }, + { "lxc.disable_kmsg", config_disable_kmsg }, }; struct signame { @@ -1049,6 +1051,16 @@ static int config_stopsignal(const char *key, const char *value, return 0; } +static int config_disable_kmsg(const char *key, const char *value, + struct lxc_conf *lxc_conf) +{ + int v = atoi(value); + + lxc_conf->disable_kmsg = v; + + return 0; +} + static int config_cgroup(const char *key, const char *value, struct lxc_conf *lxc_conf) { -- 1.8.1.5 ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_mar _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel