[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1088104: marked as done (partman-auto-raid: Recipe delimiter parsing shortcoming restricts mdadm $EXTRA_ARGS)



Your message dated Thu, 27 Nov 2025 08:46:28 +0100
with message-id <FCE3492C-2AF6-4719-8393-97551C4FB2E9@mailbox.org>
and subject line Re: Bug#1088104: partman-auto-raid: Recipe delimiter parsing shortcoming restricts mdadm $EXTRA_ARGS
has caused the Debian Bug report #1088104,
regarding partman-auto-raid: Recipe delimiter parsing shortcoming restricts mdadm $EXTRA_ARGS
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1088104: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1088104
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: partman-auto-raid
Version: 51
Severity: normal
Tags: d-i patch

Dear Maintainer,

I was trying to get a preseeded Debian installation to create a md software
RAID array with superblock version 1.0. To do that, one has to issue `mdadm
--create ... --metadata=1.0 ...` at array creation time.

partman-auto-raid's auto-raidcfg/create_raid() optionally consumes EXTRA_ARGS
from a pre-seeded partman-auto-raid/recipe (the 8th argument in a single
recipe record) key, which is documented in partman-auto-raid-recipe.txt[0].

By massaging the recipe correctly, it should be possible to supply
`--metadata=1.0` on mdadm's resulting argv.

HOWEVER, since recipe records are currently separated from each other by means
of any single . character (ASCII 0x2e, a dot), it is effectively impossible to
pass this argument to mdadm: There is a simple `while` loop near the end of
auto-raidcfg that will try to split the recipe string as returned by
confmodule's get_db() at each occurence of ., which breaks when the EXTRA_ARG
intended for mdadm's argv contains that particular character.

If the recipe record separator were to be changed to a single ASCII dot
surrounded by any amount of whitespace, which all the preseed examples I could
find in circulation on the web as well as in official Debian documentation
already follow, having any mdadm metadata specification that requires a . in
its optarg would become possible.

I created a merge request on salsa with two patches that implement the new,
fixed split logic available at [1], and hope you will find this useful.

Thanks for all the hard and fruitful work you all are doing - on Debian in
general, and d-i in particular! :)


[0]: https://sources.debian.org/src/debian-installer/20240914/doc/devel/partman-auto-raid-recipe.txt/
[1]: https://salsa.debian.org/installer-team/partman-auto-raid/-/merge_requests/3

-- System Information:
Debian Release: 12.8
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.1.0-27-amd64 (SMP w/2 CPU threads; PREEMPT)
Kernel taint flags: TAINT_USER
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

--- End Message ---
--- Begin Message ---
Closing this bug then.

Am 26. November 2025 23:07:25 MEZ schrieb Pascal Hambourg <pascal@plouf.fr.eu.org>:
>Control: fixed -1 56
>
>partman-auto-raid 56 includes the fix so this bug can be closed.
>

-- 
Sent from /e/ OS on Fairphone3

--- End Message ---

Reply to: