all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: Tobias Geerinckx-Rice <me@tobias.gr>
Cc: 29409@debbugs.gnu.org
Subject: [bug#29409] Remove hugetlb control group on ARM32.
Date: Thu, 21 Dec 2017 11:07:40 +0100	[thread overview]
Message-ID: <87shc48kcz.fsf@gnu.org> (raw)
In-Reply-To: <ced69a1e-368c-abe1-1018-e18897ca9a95@tobias.gr> (Tobias Geerinckx-Rice's message of "Thu, 21 Dec 2017 02:16:52 +0100")

Hello!

Tobias Geerinckx-Rice <me@tobias.gr> skribis:

> Mathieu Othacehe wrote on 20/12/17 at 20:15:
>> Mounting %control-groups fails on ARM32 platform because we build a
>> kernel without LPAE support which implies hugetlb control group cannot
>> be supported.
>
> What happens when the mount fails? At first glance, %control-groups
> aren't needed-for-boot. Unfortunately, I'm not able to test it now: it's
> all disgustingly hypothetical from here on.

If ‘mount’ fails with EOPNOTSUPP, we could handle that specifically,
perhaps with an (optional? #t) flag on the file system or something.

>> Like Debian we could have an ARMMP and ARMMP-LPAE kernel but the problem
>> would still exists for ARMMP.
>> 
>> I'm not sure what do about, a workaround could be the ugly hack
>> attached, WDYT ?
>
> So to me your patch implies that mounting the hugetlb cgroup is entirely
> optional, and that no other (known) services will actually break if it's
> not mounted. %control-groups are mounted as part of %base-file-systems,
> about which the manual:
>
>   -- Scheme Variable: %base-file-systems
>       These are essential file systems that are required on normal
>       systems, such as %PSEUDO-TERMINAL-FILE-SYSTEM and %IMMUTABLE-STORE
>       (see below.)  Operating system declarations should always contain
>       at least these.
>
> In practice, %base-file-systems depends on more mounts than it probably
> should, since some of them aren't essential and some can't even exist on
> some platforms. That keeps things simple, and isn't a problem *if*
> mounting optional file systems like %control-groups simply logs the
> error and continues normally with the next mount. A bit dirty, perhaps,
> but there are more places in file-systems.scm that feel that way to me.
>
> If the patch only serves to suppress such an error, I don't think it's
> worth copying details of our kernel configurations around.
>
> If it fixes a broken boot, there's something... off about the way we
> handle mounts.
>
> ...or maybe I am. Thoughts?

‘%base-file-systems’ is loosely defined and it’s a moving target.

Probably ‘%control-groups’ should be part of ‘%elogind-file-systems’ and
not ‘%base-file-systems’, because I think it’s elogind that needs them.

That would solve bare-bones-style configuration that doesn’t use
elogind.  It wouldn’t help for all things desktop, though.

WDYT?

> --- a/gnu/system/file-systems.scm
> +++ b/gnu/system/file-systems.scm
> @@ -21,6 +21,7 @@
>    #:use-module (rnrs bytevectors)
>    #:use-module (srfi srfi-1)
>    #:use-module (guix records)
> +  #:use-module (guix utils)

This is not great because (gnu system file-systems) is also used on the
“build side”, but (guix utils) would pull in (guix config), which is
configuration-dependent (it contains data that can vary from system to
system):

--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> ,use(guix modules)
scheme@(guile-user)> (source-module-closure '((guix utils)))
$3 = ((guix utils) (guix config) (guix memoization) (guix profiling) (guix build utils) (guix build syscalls))
scheme@(guile-user)> (source-module-closure '((gnu system file-systems)))
$4 = ((gnu system file-systems) (guix records) (gnu system uuid))
--8<---------------cut here---------------end--------------->8---

Thanks,
Ludo’.

  reply	other threads:[~2017-12-21 10:08 UTC|newest]

Thread overview: 96+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-23  9:45 [bug#29409] GuixSD ARM port Mathieu Othacehe
2017-11-23  9:49 ` [bug#29409] [PATCH] linux-libre: Adapt some arm options to match intel conf Mathieu Othacehe
2017-11-23 15:43   ` Ludovic Courtès
2017-11-23 19:09     ` bug#29409: " Mathieu Othacehe
2017-11-25  8:35   ` [bug#29409] " Danny Milosavljevic
2017-11-25 17:22     ` Mathieu Othacehe
2017-11-26  8:16       ` Danny Milosavljevic
2017-11-24 16:49 ` [bug#29409] [PATCH] vm: Use os-defined initrd intead of base-initrd Mathieu Othacehe
2017-11-24 21:36   ` Ludovic Courtès
2017-11-26 12:49     ` Mathieu Othacehe
2017-11-28  9:22 ` [bug#29409] [PATCH] gnu: dtc: Fix build on 32 bits platforms m.othacehe
2017-11-28  9:28 ` [bug#29409] [PATCH] gnu: grub: Disable tests on ARM platforms m.othacehe
2017-11-28 21:00   ` Leo Famulari
2017-11-29 14:03     ` Mathieu Othacehe
2017-11-29 14:20 ` [bug#29409] [PATCH] utils: Add target-arm? procedure m.othacehe
2017-11-29 14:20   ` [bug#29409] [PATCH] system: vm: Do not add EFI partition on ARM system m.othacehe
2017-12-01 20:14     ` Danny Milosavljevic
2017-12-02 12:46       ` Mathieu Othacehe
2017-12-08  9:24       ` Ludovic Courtès
2017-11-30 17:09   ` [bug#29409] [PATCH] utils: Add target-arm? procedure Ludovic Courtès
2017-12-01  9:21     ` Mathieu Othacehe
2017-11-29 17:34 ` [bug#29409] [PATCH] tests: install: Increase extlinux install partition size m.othacehe
2017-11-30 17:12   ` Ludovic Courtès
2017-12-01 13:02     ` Mathieu Othacehe
2017-12-01 14:57       ` Mathieu Othacehe
2017-12-01 16:07         ` Ludovic Courtès
2017-12-02 12:02           ` Mathieu Othacehe
2017-12-02 13:16             ` Mathieu Othacehe
2017-12-02 23:34             ` Ludovic Courtès
2017-12-03 19:31         ` Ludovic Courtès
2017-12-03 21:19           ` Mathieu Othacehe
2017-12-04  8:37             ` Ludovic Courtès
2017-12-04 14:29               ` Mathieu Othacehe
2017-12-04 14:30     ` Mathieu Othacehe
2017-11-30 10:47 ` [bug#29409] [PATCH] build: utils: Introduce dd m.othacehe
2017-12-01 12:47   ` Ludovic Courtès
2017-12-01 13:03     ` Mathieu Othacehe
2017-12-04 14:31     ` Mathieu Othacehe
2017-12-04 14:43       ` Ludovic Courtès
2017-12-04 15:53         ` Mathieu Othacehe
2017-12-04 17:17           ` Ludovic Courtès
2017-12-04 17:27             ` Mathieu Othacehe
2017-12-01 10:38 ` [bug#29409] [PATCH] utils: Add target-arm32? procedure m.othacehe
2017-12-01 10:38   ` [bug#29409] [PATCH] system: vm: Do not add EFI partition on ARM system m.othacehe
2017-12-01 11:01     ` Ludovic Courtès
2017-12-01 12:58       ` Mathieu Othacehe
2017-12-01 10:58   ` [bug#29409] [PATCH] utils: Add target-arm32? procedure Ludovic Courtès
2017-12-04 16:52 ` [bug#29409] [PATCH] build: vm: Use netdev qemu parameter m.othacehe
2017-12-04 18:19   ` Leo Famulari
2017-12-05  8:58     ` Mathieu Othacehe
2017-12-04 17:35 ` [bug#29409] [PATCH] build: vm: Use qemu drive device parameter m.othacehe
2017-12-08  9:38   ` Ludovic Courtès
2017-12-08 10:22     ` Mathieu Othacehe
2017-12-06 12:59 ` [bug#29409] [PATCH 0/4] ARM port m.othacehe
2017-12-06 12:59   ` [bug#29409] [PATCH 1/4] build: vm: Use netdev qemu parameter m.othacehe
2017-12-11 16:32     ` Ludovic Courtès
2017-12-11 17:36       ` Mathieu Othacehe
2017-12-12  9:00         ` Ludovic Courtès
2017-12-06 12:59   ` [bug#29409] [PATCH 2/4] build: vm: Use qemu drive device parameter m.othacehe
2017-12-11 16:33     ` Ludovic Courtès
2017-12-11 16:34     ` Ludovic Courtès
2017-12-06 12:59   ` [bug#29409] [PATCH 3/4] build: vm: Adapt qemu command to ARM m.othacehe
2017-12-11 16:38     ` Ludovic Courtès
2017-12-11 17:41       ` Mathieu Othacehe
2017-12-12  9:03         ` Ludovic Courtès
2017-12-06 12:59   ` [bug#29409] [PATCH 4/4] bootloader: Factorize write-file-on-device m.othacehe
2017-12-11 16:40     ` Ludovic Courtès
2017-12-11 17:41       ` Mathieu Othacehe
2017-12-07  8:52 ` [bug#29409] [PATCH] system: Add BeagleBone Black installer m.othacehe
2017-12-11 16:47   ` Ludovic Courtès
2017-12-11 17:32     ` ng0
2017-12-11 17:57     ` Mathieu Othacehe
2017-12-13 11:02 ` [bug#29409] [PATCH v2 1/4] vm: Adapt qemu command to ARM m.othacehe
2017-12-13 11:02   ` [bug#29409] [PATCH v2 2/4] bootloader: Factorize write-file-on-device m.othacehe
2017-12-15 10:34     ` Ludovic Courtès
2017-12-15 10:53       ` Mathieu Othacehe
2017-12-13 11:02   ` [bug#29409] [PATCH v2 3/4] scripts: system: Add --expression option m.othacehe
2017-12-15 10:39     ` Ludovic Courtès
2017-12-15 11:18       ` Mathieu Othacehe
2017-12-15 14:03         ` Ludovic Courtès
2017-12-15 15:38           ` Mathieu Othacehe
2017-12-13 11:02   ` [bug#29409] [PATCH v2 4/4] system: Add BeagleBone Black installer m.othacehe
2017-12-15 10:40     ` Ludovic Courtès
2017-12-15 10:33   ` [bug#29409] [PATCH v2 1/4] vm: Adapt qemu command to ARM Ludovic Courtès
2017-12-15 10:45     ` Mathieu Othacehe
2017-12-18 13:56 ` [bug#29409] [PATCH] system: examples: Add a template for BeagleBone Black m.othacehe
2017-12-18 14:22   ` Ludovic Courtès
2017-12-18 14:29     ` Mathieu Othacehe
2017-12-20 19:15 ` [bug#29409] Remove hugetlb control group on ARM32 Mathieu Othacehe
2017-12-21  1:16   ` Tobias Geerinckx-Rice
2017-12-21 10:07     ` Ludovic Courtès [this message]
2017-12-21  8:57   ` Danny Milosavljevic
2017-12-21 15:52     ` Ludovic Courtès
2017-12-22  7:54       ` Mathieu Othacehe
2017-12-22 10:50         ` Ludovic Courtès
2017-12-22 14:28           ` Mathieu Othacehe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87shc48kcz.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=29409@debbugs.gnu.org \
    --cc=me@tobias.gr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.