+ventoy_create_dev_ventoy_part() {
+ blkdev_num=$($VTOY_PATH/tool/dmsetup ls | $GREP ventoy | $SED 's/.*(\([0-9][0-9]*\),.*\([0-9][0-9]*\).*/\1 \2/')
+ $BUSYBOX_PATH/mknod -m 0666 /dev/ventoy b $blkdev_num
+
+ if [ -e /vtoy_dm_table ]; then
+ vtPartid=1
+
+ $CAT /vtoy_dm_table | while read vtline; do
+ echo $vtline > /ventoy/dm_table_part${vtPartid}
+ $VTOY_PATH/tool/dmsetup create ventoy${vtPartid} /ventoy/dm_table_part${vtPartid}
+
+ blkdev_num=$($VTOY_PATH/tool/dmsetup ls | $GREP ventoy${vtPartid} | $SED 's/.*(\([0-9][0-9]*\),.*\([0-9][0-9]*\).*/\1 \2/')
+ $BUSYBOX_PATH/mknod -m 0666 /dev/ventoy${vtPartid} b $blkdev_num
+
+ vtPartid=$(expr $vtPartid + 1)
+ done
+ fi
+}
+
+
+ventoy_create_chromeos_ventoy_part() {
+ blkdev_num=$($VTOY_PATH/tool/dmsetup ls | $GREP ventoy | $SED 's/.*(\([0-9][0-9]*\),.*\([0-9][0-9]*\).*/\1 \2/')
+ $BUSYBOX_PATH/mknod -m 0666 /dev/ventoy b $blkdev_num
+
+ if [ -e /vtoy_dm_table ]; then
+ vtPartid=1
+
+ $CAT /vtoy_dm_table | while read vtline; do
+ echo $vtline > /ventoy/dm_table_part${vtPartid}
+
+ if [ $vtPartid -eq $1 ]; then
+ $VTOY_PATH/tool/dmsetup create ventoy${vtPartid} /ventoy/dm_table_part${vtPartid} --readonly
+ else
+ $VTOY_PATH/tool/dmsetup create ventoy${vtPartid} /ventoy/dm_table_part${vtPartid}
+ fi
+
+ blkdev_num=$($VTOY_PATH/tool/dmsetup ls | $GREP ventoy${vtPartid} | $SED 's/.*(\([0-9][0-9]*\),.*\([0-9][0-9]*\).*/\1 \2/')
+ $BUSYBOX_PATH/mknod -m 0666 /dev/ventoy${vtPartid} b $blkdev_num
+
+ vtPartid=$(expr $vtPartid + 1)
+ done
+ fi
+}
+
+is_inotify_ventoy_part() {
+ if echo $1 | $GREP -q "2$"; then
+ if ! [ -e /sys/block/$1 ]; then
+ if [ -e /sys/class/block/$1 ]; then
+ if echo $1 | $EGREP -q "nvme|mmc|nbd"; then
+ vtShortName=${1:0:-2}
+ else
+ vtShortName=${1:0:-1}
+ fi
+
+ if [ -e /dev/$vtShortName ]; then
+ $VTOY_PATH/tool/vtoydump -f $VTOY_PATH/ventoy_os_param -c $vtShortName
+ return
+ fi
+ fi
+ fi
+ fi
+
+ [ "1" = "0" ]
+}
+
+ventoy_find_dm_id() {
+ for vt in $($BUSYBOX_PATH/ls /sys/block/); do
+ if [ "${vt:0:3}" = "dm-" ]; then
+ vtMajorMinor=$($CAT /sys/block/$vt/dev)
+ if [ "$vtMajorMinor" = "$1" ]; then
+ echo ${vt}
+ return
+ fi
+ fi
+ done
+ echo 'xx'
+}
+
+ventoy_swap_device() {
+ mv $1 $VTOY_PATH/swap_tmp_dev
+ mv $2 $1
+ mv $VTOY_PATH/swap_tmp_dev $2
+}