Вот что-то для исследования/проверения. Я нашел этот бит в журнале фиксации для журнала фиксации Tegra ARM для версии 2.6.39 ядра:
Стекло Simon (1):
ARM: Tegra: Зафиксируйте зависают на перезагрузке
Я думаю, что это - патч что фиксация Simon, названная: [ИСПРАВЬТЕ 7/7] РУКА: Tegra: зафиксируйте зависают на перезагрузке, относится к:
From: Simon Glass
We cannot use writel() here since the resulting wmb() calls l2x0_cache_sync()
which uses a spinlock and L1 cache may be off at this point.
Signed-off-by: Simon Glass
Signed-off-by: Olof Johansson
---
arch/arm/mach-tegra/common.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-tegra/common.c b/arch/arm/mach-tegra/common.c
index 34559d1..b1ecf60 100644
--- a/arch/arm/mach-tegra/common.c
+++ b/arch/arm/mach-tegra/common.c
-41,7 +41,7 void tegra_assert_system_reset(char mode, const char *cmd)
reg = readl(reset);
reg |= 0x04;
- writel(reg, reset);
+ writel_relaxed(reg, reset);
}
static __initdata struct tegra_clk_init_table common_clk_init_table[] = {
--
Я думаю, что необходимо будет или бэкпортировать это изменение в 2.6.35 или переместиться до более нового ядра.
От человекаmount
:
errors={continue|remount-ro|panic}
Define the behavior when an error is encountered. (Either
ignore errors and just mark the filesystem erroneous and con‐
tinue, or remount the filesystem read-only, or panic and halt
the system.) The default is set in the filesystem superblock,
and can be changed using tune2fs(8).
Таким образом, вы должны смонтировать виртуальную машину с параметром continue
вместо remount-ro
.
mount -o errors=continue
mount -o remount
Это случалось в системе RHEL при перезагрузке/повторной -настройке подключенной SAN. Что сработало для меня, так это деактивировать группу томов и LVM, а затем снова активировать их.
vgchange -a n /vg_group_name
lvchange -a n /lvm_group_name
Затем вы должны повторно активировать их.
vgchange -a y /vg_group_name
lvchange -a y /lvm_group_name
Затем просто попробуйте перемонтировать все с помощью mount -a
.
Запустив тестовые примеры с использованием тестовой ВМ, работающей в хранилище данных NFS, которое я намеренно отключил, я не нашел ничего, что сработало. Команда blockdev не сработала, а команды vg / lv отказываются работать в смонтированной корневой /
системе.
На данный момент лучшим вариантом является установка errors=panic
в /etc/fstab , чтобы виртуальная машина просто отказала.