Bug 27013

Summary: Слишком поздно размонтирует сетевые ФС при down
Product: Branch p6 Reporter: Andrey Liakhovets <a.o.liakh>
Component: NetworkManagerAssignee: Andrey Cherepanov <cas>
Status: CLOSED FIXED QA Contact: QA p6 <qa-p6>
Severity: normal    
Priority: P3 CC: berkut_174, radik, sem, shakirov
Version: не указана   
Hardware: all   
OS: Linux   

Description Andrey Liakhovets 2012-03-01 02:45:14 MSK
На ноутбуке смонтированы несколько сетевых ФС (cifs и nfs).
При вызове hibernate или suspend из KDE в логах вижу, что эти ФС размонтируются _после_ resume ноутбука (и тут же монтируются - они помечены _netdev,auto в /etc/fstab).
В результате ноутбук частенько не засыпает (похоже, из-за cifs).

Долго искал место, где можно вызвать service netfs stop _до_ "засыпания" NM, а потом увидел, что в NM уже предусмотрено именно такое отмонтирование, но выполняется оно при непонятном мне условии. Когда я вот так поменял условие, всё стало хорошо (мгновенное размонтирование и засыпание):
--- /etc/NetworkManager/dispatcher.d/10-netfs   2012-02-24 21:28:21.000000000 +0400
+++ /etc/NetworkManager/dispatcher.d/10-netfs.my     2012-03-01 01:26:01.150935259 +0400
@@ -11,7 +11,7 @@
                        $SERVICE netfs reload >/dev/null 2>&1 ||:
                ;;
        down)
-               [ $($IP route show | wc -l) -eq 0 ] &&
+               [ $($IP route show | wc -l) -ne 0 ] &&
                        $SERVICE netfs status >/dev/null 2>&1 &&
                        $SERVICE netfs stop >/dev/null 2>&1 ||:
                ;;

То же самое должно быть на Сизифе (такой же 10-netfs), но не проверял.

Возможно, https://bugzilla.altlinux.org/show_bug.cgi?id=17341 - тоже оно.
Comment 1 Lenar Shakirov 2012-03-01 11:24:39 MSK
в #27009 похожие симптомы
Comment 2 Mikhail Efremov 2012-03-01 11:40:42 MSK
*** Bug 27009 has been marked as a duplicate of this bug. ***
Comment 3 Mikhail Efremov 2012-03-01 12:00:22 MSK
(В ответ на комментарий №0)
> Долго искал место, где можно вызвать service netfs stop _до_ "засыпания" NM,

К сожалению, в NM такого места просто нет. Скрипты запускаются уже после того,
как интерфейс был опущен. Так что попытка размонтирования происходит когда сети
уже нет. Я уже точно не помню, но, видимо, надеялся на  umount -f в
UnmountFilesystems. Похоже зря.

> потом увидел, что в NM уже предусмотрено именно такое отмонтирование, но
> выполняется оно при непонятном мне условии. Когда я вот так поменял условие,
> всё стало хорошо (мгновенное размонтирование и засыпание):

В этом нет особого смысла. Если сетью управляет только NM, то на момент вызова
скрипта маршрутов (считай сети) уже нет и код не выполняется. Потому и
заработало. С таким же успехом его можно просто закомментировать.
Comment 4 Andrey Liakhovets 2012-03-01 17:00:04 MSK
> > Долго искал место, где можно вызвать service netfs stop _до_ "засыпания" NM,
> 
> К сожалению, в NM такого места просто нет. Скрипты запускаются уже после того,
> как интерфейс был опущен. Так что попытка размонтирования происходит когда сети
> уже нет. Я уже точно не помню, но, видимо, надеялся на  umount -f в
> UnmountFilesystems. Похоже зря.

Спасибо, теперь понял.
Т.е., именно этот скрипт мне и мешал :)
Тогда в самом деле надо этот код из "down" убрать. А то никакой пользы кроме вреда :).

Мысли вслух: что если приделать к NM скрипты predown, postdown, и т.п.?
(хотелось бы всё-таки сконфигурировать размонтирование при засыпании)

Интересно ещё, что это неработающее отмонтирование из 10-netfs не особо мешалось вплоть до недавних обновлений (только _иногда_ не засыпало). И я поэтому в основном думал в сторону обновившегося ядра.

Кстати, симптомы #27009 ни разу не наблюдал на этих 2х компьютерах, где нужно и засыпание, и сетевые ФС. Возможно, кто-то до NM успевает...
Comment 5 Mikhail Efremov 2012-03-01 18:03:39 MSK
(В ответ на комментарий №4)
> Мысли вслух: что если приделать к NM скрипты predown, postdown, и т.п.?
> (хотелось бы всё-таки сконфигурировать размонтирование при засыпании)

Это то, чего многие давно хотят от апстрима NM. Может когда-нибудь это сделают.

> Интересно ещё, что это неработающее отмонтирование из 10-netfs не особо
> мешалось вплоть до недавних обновлений (только _иногда_ не засыпало). И я
> поэтому в основном думал в сторону обновившегося ядра.

Недавно был исправлен https://bugzilla.altlinux.org/26947 ;)
Comment 6 Radik Usupov 2012-03-01 19:51:14 MSK
Похоже у меня что-то подобное..
Долго монтируется потому-что NM не стартанул и долго размонтируется потому что NM уже остановился :(
Comment 7 Repository Robot 2012-03-01 20:40:38 MSK
NetworkManager-0.9.2-alt3 -> sisyphus:

* Thu Mar 01 2012 Mikhail Efremov <sem@altlinux> 0.9.2-alt3
- Don't try to unmount network filesystems (closes: #27013).
Comment 8 Andrey Liakhovets 2012-03-03 16:20:00 MSK
(В ответ на комментарий №6)
> Похоже у меня что-то подобное..
> Долго монтируется потому-что NM не стартанул и долго размонтируется потому что
> NM уже остановился :(

Я описал похожее и свой костыль тут: https://bugzilla.altlinux.org/show_bug.cgi?id=27009#c6 (т.к. только посредством NM это не решается).