aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXi Ruoyao <xry111@xry111.site>2023-07-28 19:59:01 +0800
committerXi Ruoyao <xry111@xry111.site>2023-07-28 19:59:01 +0800
commit44674e4c92f7ef20dbc985f479c5c19548378a08 (patch)
tree69524742f934a873fb137b74ea1e3d2915b92106
parentd0de26cbe0bf877b25219936b7b688f0b17d0a16 (diff)
sysv: Mount cgroup fs for memory pressure information early
Prepare for systemd-254 update. See #5293 for details.
-rw-r--r--bootscripts/ChangeLog3
-rw-r--r--bootscripts/lfs/init.d/mountvirtfs4
-rw-r--r--chapter01/changelog.xml13
-rw-r--r--chapter10/fstab.xml23
-rw-r--r--chapter10/kernel.xml5
-rw-r--r--packages.ent2
6 files changed, 38 insertions, 12 deletions
diff --git a/bootscripts/ChangeLog b/bootscripts/ChangeLog
index d255411b1..aff30cb41 100644
--- a/bootscripts/ChangeLog
+++ b/bootscripts/ChangeLog
@@ -1,3 +1,6 @@
+2023-07-28 Xi Ruoyao <xry111@xry111.site>
+ * In mountvirtfs, mount /sys/fs/cgroup for udev from systemd-254.
+
2023-07-22 Xi Ruoyao <xry111@xry111.site>
* In mountvirtfs, create symlinks /dev/{fd,std{in,out,err}} and
/dev/core (optional).
diff --git a/bootscripts/lfs/init.d/mountvirtfs b/bootscripts/lfs/init.d/mountvirtfs
index bbf30cf90..fd797787a 100644
--- a/bootscripts/lfs/init.d/mountvirtfs
+++ b/bootscripts/lfs/init.d/mountvirtfs
@@ -63,6 +63,10 @@ case "${1}" in
log_info_msg2 " ${INFO}/dev/shm"
mount -o nosuid,nodev /dev/shm || failed=1
+ mkdir -p /sys/fs/cgroup
+ log_info_msg2 " ${INFO}/sys/fs/cgroup"
+ mount -o nosuid,noexec,nodev /sys/fs/cgroup || failed=1
+
(exit ${failed})
evaluate_retval
if [ "${failed}" = 1 ]; then
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index cfb845733..73fc65f72 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -41,6 +41,19 @@
-->
<listitem revision='sysv'>
+ <para>2023-07-28</para>
+ <itemizedlist>
+ <listitem revision='sysv'>
+ <para>[xry111] - Enable cgroup-based memory pressure information
+ in kernel, and add the cgroup file system into /etc/fstab and the
+ mountvirtfs bootscript. This is a preparation for udev from
+ systemd-254. Addresses
+ <ulink url='&lfs-ticket-root;5293'>#5293</ulink>.</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem revision='sysv'>
<para>2023-07-22</para>
<itemizedlist>
<listitem revision='sysv'>
diff --git a/chapter10/fstab.xml b/chapter10/fstab.xml
index f78b234db..ccf767ab6 100644
--- a/chapter10/fstab.xml
+++ b/chapter10/fstab.xml
@@ -22,17 +22,18 @@
<screen revision="sysv"><userinput>cat &gt; /etc/fstab &lt;&lt; "EOF"
<literal># Begin /etc/fstab
-# file system mount-point type options dump fsck
-# order
-
-/dev/<replaceable>&lt;xxx&gt;</replaceable> / <replaceable>&lt;fff&gt;</replaceable> defaults 1 1
-/dev/<replaceable>&lt;yyy&gt;</replaceable> swap swap pri=1 0 0
-proc /proc proc nosuid,noexec,nodev 0 0
-sysfs /sys sysfs nosuid,noexec,nodev 0 0
-devpts /dev/pts devpts gid=5,mode=620 0 0
-tmpfs /run tmpfs defaults 0 0
-devtmpfs /dev devtmpfs mode=0755,nosuid 0 0
-tmpfs /dev/shm tmpfs nosuid,nodev 0 0
+# file system mount-point type options dump fsck
+# order
+
+/dev/<replaceable>&lt;xxx&gt;</replaceable> / <replaceable>&lt;fff&gt;</replaceable> defaults 1 1
+/dev/<replaceable>&lt;yyy&gt;</replaceable> swap swap pri=1 0 0
+proc /proc proc nosuid,noexec,nodev 0 0
+sysfs /sys sysfs nosuid,noexec,nodev 0 0
+devpts /dev/pts devpts gid=5,mode=620 0 0
+tmpfs /run tmpfs defaults 0 0
+devtmpfs /dev devtmpfs mode=0755,nosuid 0 0
+tmpfs /dev/shm tmpfs nosuid,nodev 0 0
+cgroup2 /sys/fs/cgroup cgroup2 nosuid,noexec,nodev 0 0
# End /etc/fstab</literal>
EOF</userinput></screen>
diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml
index ad6b252a7..376f6cdff 100644
--- a/chapter10/kernel.xml
+++ b/chapter10/kernel.xml
@@ -135,7 +135,12 @@
[*] Randomize the address of the kernel image (KASLR) [CONFIG_RANDOMIZE_BASE]
General setup ---&gt;
[ ] Compile the kernel with warnings as errors [CONFIG_WERROR]
+ CPU/Task time and stats accounting ---&gt;
+ [*] Pressure stall information tracking [CONFIG_PSI]
+ [ ] Require boot parameter to enable pressure stall information tracking [CONFIG_PSI_DEFAULT_DISABLED]
&lt; &gt; Enable kernel headers through /sys/kernel/kheaders.tar.xz [CONFIG_IKHEADERS]
+ [*] Control Group support [CONFIG_CGROUPS] ---&gt;
+ [*] Memory controller [CONFIG_MEMCG]
[ ] Configure standard kernel features (expert users) [CONFIG_EXPERT]
General architecture-dependent options ---&gt;
[*] Stack Protector buffer overflow detection [CONFIG_STACKPROTECTOR]
diff --git a/packages.ent b/packages.ent
index 6fd5c0280..09008604d 100644
--- a/packages.ent
+++ b/packages.ent
@@ -383,7 +383,7 @@
<!ENTITY less-fin-du "4.3 MB">
<!ENTITY less-fin-sbu "less than 0.1 SBU">
-<!ENTITY lfs-bootscripts-version "20230722"> <!-- Scripts depend on this format -->
+<!ENTITY lfs-bootscripts-version "20230728"> <!-- Scripts depend on this format -->
<!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB">
<!ENTITY lfs-bootscripts-url "&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.xz">
<!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM">