X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fmount.c;h=ef953f0d0aecdabc44f04a16b21e254a3de098f8;hb=64685e0cea62b4937f0804e47ce2cb7929f58223;hp=d26d45f038843148f556a86609e1b997a3e8ed02;hpb=a17204af0e950be7a5199db62ef400814e29aa3c;p=elogind.git diff --git a/src/mount.c b/src/mount.c index d26d45f03..ef953f0d0 100644 --- a/src/mount.c +++ b/src/mount.c @@ -320,7 +320,10 @@ static bool needs_quota(MountParameters *p) { return false; return mount_test_option(p->options, "usrquota") || - mount_test_option(p->options, "grpquota"); + mount_test_option(p->options, "grpquota") || + mount_test_option(p->options, "quota") || + mount_test_option(p->options, "usrjquota") || + mount_test_option(p->options, "grpjquota"); } static int mount_add_fstab_links(Mount *m) { @@ -354,9 +357,11 @@ static int mount_add_fstab_links(Mount *m) { if (mount_is_network(p)) { target = SPECIAL_REMOTE_FS_TARGET; - after = SPECIAL_NETWORK_TARGET; - } else + after = SPECIAL_REMOTE_FS_PRE_TARGET; + } else { target = SPECIAL_LOCAL_FS_TARGET; + after = SPECIAL_LOCAL_FS_PRE_TARGET; + } if (!path_equal(m->where, "/")) if ((r = unit_add_two_dependencies_by_name(UNIT(m), UNIT_BEFORE, UNIT_CONFLICTS, SPECIAL_UMOUNT_TARGET, NULL, true)) < 0) @@ -791,6 +796,7 @@ static int mount_spawn(Mount *m, ExecCommand *c, pid_t *_pid) { true, m->meta.manager->confirm_spawn, m->meta.cgroup_bondings, + m->meta.cgroup_attributes, &pid)) < 0) goto fail; @@ -1473,7 +1479,7 @@ static int mount_find_pri(char *options) { char *end, *pri; unsigned long r; - if (!(pri = mount_test_option(options, "pri="))) + if (!(pri = mount_test_option(options, "pri"))) return 0; pri += 4; @@ -1835,6 +1841,10 @@ DEFINE_STRING_TABLE_LOOKUP(mount_exec_command, MountExecCommand); const UnitVTable mount_vtable = { .suffix = ".mount", + .sections = + "Unit\0" + "Mount\0" + "Install\0", .no_alias = true, .no_instances = true,