blob: bacf206592dc42b14a80631e359d4f9bed434afc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
Index: os-prober-1.76/os-probes/mounted/x86/05efi
===================================================================
--- os-prober-1.76.orig/os-probes/mounted/x86/05efi
+++ os-prober-1.76/os-probes/mounted/x86/05efi
@@ -28,13 +28,24 @@ if type udevadm > /dev/null 2>&1; then
fi
if type udevinfo > /dev/null 2>&1; then
- # Skip virtual devices
+ eval "$(udevinfo -q property -n "$partition" | grep -E '^(MD_CONTAINER|ID_PART_ENTRY_(TYPE|SCHEME))=')"
+ debug "$partition container is '$MD_CONTAINER'"
+
+ # Skip virtual devices unless they are known SW-RAID
if udevinfo -q path -n $partition | grep -q /virtual/; then
- debug "$1 is virtual device: exiting"
- exit 1
+ # Check for Intel Matrix array
+ if [ -n "$MD_CONTAINER" ]; then
+ eval "$(udevinfo -q property -n "$MD_CONTAINER" | grep -E '^MD_METADATA=')"
+ debug "$MD_CONTAINER metadata is '$MD_METADATA'"
+ fi
+ if [ "$MD_METADATA" = imsm ]; then
+ debug "$partition is on IMSM array"
+ else
+ debug "$1 is virtual device: exiting"
+ exit 1
+ fi
fi
- eval "$(udevinfo -q property -n "$partition" | grep -E '^ID_PART_ENTRY_(TYPE|SCHEME)=')"
debug "$partition partition scheme is $ID_PART_ENTRY_SCHEME"
debug "$partition partition type is $ID_PART_ENTRY_TYPE"
|