Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 9

Да, неловко вышло, но это не со зла)

Коллеги шутят, что к концу текста читатель доберётся только к пятнице, потому и выложили во вторник. На фоне этого любой другой мой ответ кажется не таким реалистичным.

Так и случилось :)))

Как вы думаете, для чего в коде сделана проверка inode? Ждем ваши варианты в комментариях

Чтобы ismount_raw("/") был true

Да, я тоже так подумал! Но не логичнее было бы нормализовать путь и сверить с "/"? Иначе выглядит слишком обобщённо и неочевидно, хотя кейс очень простой.

"нормализовать путь" -- нетривиальная операция, в отличие от stat :)

ну два stat'а у нас у же есть к этому моменту и мы выяснили -- p и p/.. лежат на одном устройстве... кстати, а bind mount создаёт новый st_dev ?

... нет, метод традиционный и нет, bind'ы не ловит: https://github.com/zxp8466/rt-n56u_musl/blob/2fa794cec078479cf064c68a9b5e9567e18e1666/trunk/user/util-linux/util-linux-2.21.2/sys-utils/mountpoint.c#L52

Зарегистрируйтесь на Хабре, чтобы оставить комментарий