xen vps サーバーで 3.2 カーネルを起動するとディスク I/O エラーが発生するのはなぜですか?

xen vps サーバーで 3.2 カーネルを起動するとディスク I/O エラーが発生するのはなぜですか?

私は xen vps を持っていますが、これを新しい LTS 12 Precise Pangolin にアップグレードしました。

しかし、起動時に次のエラーが表示されます:

[   12.848076] end_request: I/O error, dev xvda, sector 12841
[   12.848093] end_request: I/O error, dev xvda, sector 12841
[   12.848103] Buffer I/O error on device xvda1, logical block 1605
[   12.848110] lost page write due to I/O error on xvda1
[   12.848129] Aborting journal on device xvda1.

/ は読み取り専用でマウントされます。再起動:

[    3.087257] EXT3-fs (xvda1): warning: ext3_clear_journal_err: Marking fs in need of filesystem check.
[    3.087677] EXT3-fs (xvda1): recovery complete
[    3.088514] EXT3-fs (xvda1): mounted filesystem with ordered data mode
Begin: Running /scripts/local-bottom ... done.
done.
Begin: Running /scripts/init-bottom ... done.
fsck from util-linux 2.20.1
PRGMRDISK1 contains a file system with errors, check forced.
Checking disk drives for errors. This may take several minutes.
Press C to cancel all checks in progress
PRGMRDISK1: ***** REBOOT LINUX *****
PRGMRDISK1: 371152/6001184 files (2.8% non-contiguous), 4727949/12000000 blocks
mountall: fsck / [308] terminated with status 3
mountall: System must be rebooted: /
[  151.566949] Restarting system.
Name                                        ID   Mem VCPUs      State   Time(s)
shadowmint                                 236  2048     1     --p---      0.0

再起動 -> 1 に戻ります。

これは間違いなく 3.2 カーネルの問題です。3.0.0 または 2.6.38 カーネル シリーズを起動すると、この問題は魔法のように消えます。

これは何らかの奇妙な xen のようなものだと確信していますが、わかりません。

誰でも?

とにかく、これが解決されるまで私はアップグレードを強く推奨しませんxen サーバーを実行している場合。

答え1

仮想マシン用の特別なカーネルがあることに気付きました。

linux-image-3.2.0-23-virtual - 64 ビット x86 仮想ゲスト上のバージョン 3.2.0 の Linux カーネル イメージ linux-image-extra-3.2.0-23-virtual - 64 ビット x86 仮想ゲスト上のバージョン 3.2.0 の Linux カーネル イメージ

それで解決するかも知れません?

答え2

私も同様の問題を抱えていましたが、同様の問題には必ずしも同様の原因が関係しているわけではありません:-D。私は解決しました私の問題を追加することで障壁なし(マウント オプション) を/etc/fstabルート パーティションのマウント ラインに追加します。

UUID=7960e41c-6ad3-458e-ba0b-289c43a7508f / ext4 nobarrier 0 1

最初の再起動が成功した後、私は

dmesg | grep barrier

そしてこれが私が得たものです:

[    0.690596] blkfront: xvda: barrier: enabled 
[   12.914802] blkfront: xvda: empty barrier op failed
[   12.914807] blkfront: xvda: barrier or flush: disabled 
[   14.806961] EXT4-fs (xvda1): re-mounted. Opts: errors=continue,nobarrier

関連情報