[dm-devel] [mdadm PATCH] Create: tell udev md device is not ready when first created.
Peter Rajnoha
prajnoha at redhat.com
Wed May 3 14:32:14 UTC 2017
On 05/02/2017 03:42 PM, Jes Sorensen wrote:
> On 04/28/2017 01:05 AM, NeilBrown wrote:
>>
>> When an array is created the content is not initialized,
>> so it could have remnants of an old filesystem or md array
>> etc on it.
>> udev will see this and might try to activate it, which is almost
>> certainly not what is wanted.
>>
>> So create a mechanism for mdadm to communicate with udev to tell
>> it that the device isn't ready. This mechanism is the existance
>> of a file /run/mdadm/created-mdXXX where mdXXX is the md device name.
>>
>> When creating an array, mdadm will create the file.
>> A new udev rule file, 01-md-raid-creating.rules, will detect the
>> precense of thst file and set ENV{SYSTEMD_READY}="0".
>> This is fairly uniformly used to suppress actions based on the
>> contents of the device.
>>
>> Signed-off-by: NeilBrown <neilb at suse.com>
>> ---
>> Assemble.c | 2 +-
>> Build.c | 2 +-
>> Create.c | 9 +++++++-
>> Incremental.c | 4 ++--
>> Makefile | 4 ++--
>> lib.c | 29 +++++++++++++++++++++++++
>> mdadm.h | 4 +++-
>> mdopen.c | 52
>> ++++++++++++++++++++++++++++-----------------
>> udev-md-raid-creating.rules | 7 ++++++
>> 9 files changed, 86 insertions(+), 27 deletions(-)
>> create mode 100644 udev-md-raid-creating.rules
>
> Applied!
>
How is this solving the problem then? The patch is flagging a device as
not ready, then clearing the flag after some time. Where does the wiping
happen actually?
--
Peter
More information about the dm-devel
mailing list