<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>61214</bug_id>
          
          <creation_ts>2026-10-25 13:22:27 +0300</creation_ts>
          <short_desc>Установщик ошибочно показывает неформатированный раздел как Ext4</short_desc>
          <delta_ts>2026-10-31 01:59:48 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>evms</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Жора Змейкин">me</reporter>
          <assigned_to name="Олег Соловьев">mcpain</assigned_to>
          <cc>mcpain</cc>
    
    <cc>mike</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>303347</commentid>
    <comment_count>0</comment_count>
      <attachid>22812</attachid>
    <who name="Жора Змейкин">me</who>
    <bug_when>2026-10-25 13:22:27 +0300</bug_when>
    <thetext>Created attachment 22812
Исправление ext2 плагина

Если один из разделов диска смонтирован, установщик может ошибочно показать новый раздел как Ext4. Это происходит даже при отмене форматирования: раздел записан в таблицу на диске, но ядро ещё не видит его.

## Шаги воспроизведения
1. Загрузиться в Live-режиме ALT Regular KDE. На тестовом диске должен быть существующий раздел и свободное место для нового.
2. Смонтировать существующий раздел этого диска, открыв его в файловом менеджере. В моём случае использовался FAT32-раздел.
3. Запустить установщик с рабочего стола. В ручной разметке выбрать тот же диск, не включая его очистку.
4. На свободном месте создать раздел размером 1024 МиБ. Остальные параметры оставить: смещение 0, тип Linux filesystem, флажок Create Volume включён.
5. В предложении создать файловую систему (Make Filesystem) нажать Cancel. Новый раздел появится в списке как Unknown.
6. Нажать «Назад». В списке ожидающих операций (Pending) подтвердить только создание нового раздела, без форматирования. Точку монтирования указывать не нужно.
7. Снова открыть ручную разметку этого диска.

## Фактический результат
Новый неформатированный раздел отображается как Ext4. Хотя на деле у него нет раздела.

И похоже проблема тут в двух местах. Первую проблему с Ext4 я встречал не раз, ещё во время этой проблемы: https://bugzilla.altlinux.org/60510. Дошли руки посмотреть, почему она возникает и всё указывает на ext2 плагин, тобишь plugins/ext2/fsimext2.c. rc изначально равен 0. При отрицательном результате open_volume выполняется:
&gt; int rc = 0;
&gt; fd = EngFncs-&gt;open_volume(volume, O_RDONLY, 0);
&gt; if (fd &lt; 0) {
&gt;     rc = -rc;
&gt;     return rc;
&gt; }

Функция возвращает ноль. fs_probe() принимает это за успешное распознавание, и тому назначается модуль с именем Ext4. Самый простой фикс это заменить на «rc = -fd», это исправит как минимум ложное распознавание из-за ошибки и не будет показываться Ext4 там, где его нет. Приложил патч 0001-ext2-propagate-open-volume-error.patch

Вторая проблема - EVMS допускает создание раздела на диске со смонтированным соседним разделом. При применении изменений это может помешать ядру перечитать таблицу разделов. Ранее этот сценарий никак не воспроизводился, но теперь с установщиком в LiveCD такой сценарий легко получить, просто, например, открыв существующий раздел в файловом менеджере. Поэтому приложил второй патч, перед созданием GPT/MBR-раздела он проверяет, есть ли на диске смонтированные тома, и при их наличии возвращает EBUSY</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>303348</commentid>
    <comment_count>1</comment_count>
      <attachid>22813</attachid>
    <who name="Жора Змейкин">me</who>
    <bug_when>2026-10-25 13:22:54 +0300</bug_when>
    <thetext>Created attachment 22813
Проверка монтирования</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>303613</commentid>
    <comment_count>2</comment_count>
    <who name="Олег Соловьев">mcpain</who>
    <bug_when>2026-10-29 11:39:25 +0300</bug_when>
    <thetext>(In reply to Жора Змейкин from comment #0)
&gt; Вторая проблема - EVMS допускает...

Одна проблема = один багрепорт.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>303696</commentid>
    <comment_count>3</comment_count>
    <who name="Жора Змейкин">me</who>
    <bug_when>2026-10-31 01:59:48 +0300</bug_when>
    <thetext>(Ответ для Олег Соловьев на комментарий #2)
&gt; (In reply to Жора Змейкин from comment #0)
&gt; &gt; Вторая проблема - EVMS допускает...
&gt; 
&gt; Одна проблема = один багрепорт.

Изначально занимался проблемой, связанная с неверным отображением раздела. Но так уж вышло, что теперь для воспроизведения этой проблемы нужно было найти ещё вторую проблему. Если так будет удобнее, могу завести второй баг-репорт</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22812</attachid>
            <date>2026-10-25 13:22:27 +0300</date>
            <delta_ts>2026-10-25 13:22:27 +0300</delta_ts>
            <desc>Исправление ext2 плагина</desc>
            <filename>0001-ext2-propagate-open-volume-error.patch</filename>
            <type>text/plain</type>
            <size>767</size>
            <attacher name="Жора Змейкин">me</attacher>
            
              <data encoding="base64">U3ViamVjdDogW1BBVENIXSBleHQyOiBwcm9wYWdhdGUgdm9sdW1lLW9wZW4gZXJyb3JzIHdoZW4g
cHJvYmluZyB0aGUgc3VwZXJibG9jawoKb3Blbl92b2x1bWUoKSByZXR1cm5zIGEgbmVnYXRpdmUg
ZXJybm8gb24gZmFpbHVyZS4gTmVnYXRpbmcgcmMsIHdoaWNoIGlzCnN0aWxsIHplcm8sIG1ha2Vz
IGZzaW1fZ2V0X2V4dDJfc3VwZXJibG9jaygpIHJlcG9ydCBzdWNjZXNzIHdpdGhvdXQgcmVhZGlu
ZwpvciB2YWxpZGF0aW5nIHRoZSBzdXBlcmJsb2NrLiBmc19wcm9iZSgpIHRoZW4gYWNjZXB0cyB0
aGUgdm9sdW1lIGFzIEV4dDQuCgpSZXR1cm4gdGhlIHBvc2l0aXZlIGVycm9yIGNvZGUgZnJvbSBm
ZCwgYXMgZXhwZWN0ZWQgYnkgdGhlIEZTSU0gaW50ZXJmYWNlLgoKZGlmZiAtLWdpdCBhL3BsdWdp
bnMvZXh0Mi9mc2ltZXh0Mi5jIGIvcGx1Z2lucy9leHQyL2ZzaW1leHQyLmMKaW5kZXggYTMwNDQ4
Yy4uZDE4ZmQ2NiAxMDA2NDQKLS0tIGEvcGx1Z2lucy9leHQyL2ZzaW1leHQyLmMKKysrIGIvcGx1
Z2lucy9leHQyL2ZzaW1leHQyLmMKQEAgLTUyMyw3ICs1MjMsNyBAQCBpbnQgZnNpbV9nZXRfZXh0
Ml9zdXBlcmJsb2NrKCBsb2dpY2FsX3ZvbHVtZV90ICp2b2x1bWUsIHN0cnVjdCBleHQyX3N1cGVy
X2Jsb2NrCiAKIAlmZCA9IEVuZ0ZuY3MtPm9wZW5fdm9sdW1lKHZvbHVtZSwgT19SRE9OTFksIDAp
OwogCWlmIChmZCA8IDApIHsKLQkJcmMgPSAtcmM7CisJCXJjID0gLWZkOwogCQlMT0dfRVhJVF9J
TlQocmMpOwogCQlyZXR1cm4gcmM7CiAJfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22813</attachid>
            <date>2026-10-25 13:22:54 +0300</date>
            <delta_ts>2026-10-25 13:22:54 +0300</delta_ts>
            <desc>Проверка монтирования</desc>
            <filename>0002-gpt-dos-refuse-create-on-mounted-disk.patch</filename>
            <type>text/plain</type>
            <size>1314</size>
            <attacher name="Жора Змейкин">me</attacher>
            
              <data encoding="base64">U3ViamVjdDogW1BBVENIXSBncHQsIGRvczogcmVqZWN0IG5ldyBwYXJ0aXRpb25zIG9uIG1vdW50
ZWQgZGlza3MKCkJlZm9yZSBhbGxvY2F0aW5nIGEgbmV3IHBhcnRpdGlvbiwgYXNrIHRoZSBleGlz
dGluZyBlbmdpbmUgb2ZmbGluZSBjaGVjawp3aGV0aGVyIHZvbHVtZXMgb24gdGhlIGRpc2sgYXJl
IG1vdW50ZWQuIFJldHVybiBFQlVTWSB3aXRob3V0IGNyZWF0aW5nCmEgc2VnbWVudCB3aGVuIHRo
ZSBkaXNrIGlzIG5vdCBvZmZsaW5lLgoKZGlmZiAtLWdpdCBhL3BsdWdpbnMvZG9zL2RlZnNlZ21n
ci5jIGIvcGx1Z2lucy9kb3MvZGVmc2VnbWdyLmMKaW5kZXggMzNmZWEwMC4uNWY2ODc0NyAxMDA2
NDQKLS0tIGEvcGx1Z2lucy9kb3MvZGVmc2VnbWdyLmMKKysrIGIvcGx1Z2lucy9kb3MvZGVmc2Vn
bWdyLmMKQEAgLTg1NSw2ICs4NTUsMTMgQEAgc3RhdGljIGludCBDcmVhdGVEaXNrU2VnbWVudCgg
RElTS1NFRyAgICAgICAgICAgICAgICogZnJlZV9zcGFjZSwJICAgIC8qIGEgZnJlZQogCQl9CiAJ
fQogCisJaWYgKGxkLT5vYmplY3RfdHlwZSA9PSBESVNLICYmCisJICAgIHN0cm5jbXAobGQtPm5h
bWUsICJtcGF0aCIsIDUpICE9IDAgJiYKKwkgICAgIUVuZ0ZuY3MtPmlzX29mZmxpbmUobGQsIE5V
TEwpKSB7CisJCUxPR19FWElUX0lOVChFQlVTWSk7CisJCXJldHVybiBFQlVTWTsKKwl9CisKIAkv
KgogCSAqICBEdW1wIGRlYnVnIGluZm8gdG8gZW5naW5lIGxvZwogCSAqLwpkaWZmIC0tZ2l0IGEv
cGx1Z2lucy9ncHQvZ3B0c2VnbWdyLmMgYi9wbHVnaW5zL2dwdC9ncHRzZWdtZ3IuYwppbmRleCA3
NjU5NzM1Li40ODk4MDI0IDEwMDY0NAotLS0gYS9wbHVnaW5zL2dwdC9ncHRzZWdtZ3IuYworKysg
Yi9wbHVnaW5zL2dwdC9ncHRzZWdtZ3IuYwpAQCAtMTEzNCw2ICsxMTM0LDEzIEBAIHN0YXRpYyBp
bnQgQ3JlYXRlRGlza1NlZ21lbnQoIHN0b3JhZ2Vfb2JqZWN0X3QgICAgICAqIGZyZWVzcGFjZSwg
ICAgICAgICAgICAvKiBhCiAgICAgICAgICAgICAgICAgcmV0dXJuIHJjOwogICAgICAgICB9CiAK
KyAgICAgICAgaWYgKGxkLT5vYmplY3RfdHlwZSA9PSBESVNLICYmCisgICAgICAgICAgICBzdHJu
Y21wKGxkLT5uYW1lLCAibXBhdGgiLCA1KSAhPSAwICYmCisgICAgICAgICAgICAhRW5nRm5jcy0+
aXNfb2ZmbGluZShsZCwgTlVMTCkpIHsKKyAgICAgICAgICAgICAgICBMT0dfRVhJVF9JTlQoRUJV
U1kpOworICAgICAgICAgICAgICAgIHJldHVybiBFQlVTWTsKKyAgICAgICAgfQorCiAgICAgICAg
IC8qCiAgICAgICAgICAqICBEdW1wIGRlYnVnIGluZm8gdG8gZW5naW5lIGxvZwogICAgICAgICAg
Ki8K
</data>

          </attachment>
      

    </bug>

</bugzilla>