メインコンテンツにスキップ
ブログリナックスRFT: "ubd=mmap" 実験的な設定オプション

RFT: "ubd=mmap" 実験的設定オプション

テストの依頼

UMLのファイルシステムへの書き込み方法を変更する新しいオプションをテストして、その結果をここに投稿していただけると幸いです。

通常、UMLは標準のopen/close read/writeライブラリコールを使用します。 これには、ホストのページキャッシュにデータが重複するという問題があり、ディスクI/Oのパフォーマンスにも影響を与えます。 新しいオプションでは、ファイルシステムのファイルを直接ページキャッシュにマッピングするため、ページの重複やページキャッシュの無駄遣いがなくなります...

Edit Config Profileページに新しい「Experimental Option」が追加されています。 これをオンにするには、ubd=mmapを有効にし、保存して再起動してください。 dmesgのkernel optionsのところに表示されているはずです。(dmesg | grep mmap)

何度も成功した報告があれば、全員がこの機能を使えるようにすることを検討します。

[color=darkred][b]警告:[/b][/color][/size] まだ誰もがこの機能をオンにすることをお勧めしません。 このような成熟した機能には、常にデータ損失の可能性があります。 Jeff Dikeは先月、ubd=mmapの最後の既知のバグを修正しましたが、これは4GB以上のファイルシステムを食べてしまうものでしたので、このオプションの使用には注意が必要です。 UMLのメーリングリストでは、mmapに関連した障害の報告はありませんが、このオプションは広く知られているわけではありません。

現在のバージョン(2.4.24カーネルに搭載)では、mmapを有効にしても問題なく動作していますが、あなたの経験にもよるでしょう。

ありがとうございます。
-Chris

コメント (7)

  1. Author Photo

    I’m game. 🙂

    I just rebooted my linode with it enabled. I do nightly backups, so I am not overly concerned. Here’s hoping for the best..

  2. Author Photo

    That went badly.

    From dmesg:

    EXT3-fs error (device ubd(98,32)) in ext3_reserve_inode_write: IO failure
    EXT3-fs error (device ubd(98,32)) in ext3_orphan_add: IO failure
    attempt to access beyond end of device
    62:20: rw=0, want=1086378492, limit=525312
    EXT3-fs error (device ubd(98,32)): ext3_get_inode_loc: unable to read inode block – inode=2507, block=808465534
    EXT3-fs error (device ubd(98,32)) in ext3_reserve_inode_write: IO failure
    attempt to access beyond end of device
    62:20: rw=0, want=1086378492, limit=525312
    EXT3-fs error (device ubd(98,32)): ext3_get_inode_loc: unable to read inode block – inode=2507, block=808465534
    EXT3-fs error (device ubd(98,32)) in ext3_reserve_inode_write: IO failure
    attempt to access beyond end of device
    62:20: rw=0, want=1086378492, limit=525312
    EXT3-fs error (device ubd(98,32)): ext3_get_inode_loc: unable to read inode block – inode=2507, block=808465534
    EXT3-fs error (device ubd(98,32)) in ext3_reserve_inode_write: IO failure

    Over and over and over, and I/O failures on files. I’m turning it back off..

  3. Author Photo

    Well then. Let me gather the info and send that along to the list.

    -Chris

  4. Author Photo

    My var filesystem was pretty goofed up, but I managed to fix it, and am up and running again without mmap.

  5. Author Photo

    Thanks for giving it a try. Glad it wasn’t too hosed… I guess there is our answer about mmap. It’s hungry for filesystems!

    I’ve posted a msg to uml-user, so we’ll see what comes of it. I also removed the option from the config edit page…

    Thanks,
    -Chris

  6. Author Photo

    Not a problem, I was prepared if it had gone worse. I saw your email, I’ll be interested to see if they can track down the problem.. It’s an interesting option that I’d like to use on my non-linode UML’s as well.

  7. Author Photo

    Sounds like Jeff knows what to look for (from #uml)…

    [code]13:05 < caker> jdike: anything else I can provide on the ubd=mmap corruption issue?
    13:33 < jdike> caker: I’ve seen problems, so I’ve got something to chase
    13:33 < jdike> caker: namely pages of zeros which shouldn’t be[/code]
    -Chris

コメントを残す

あなたのメールアドレスは公開されません。必須項目には*印がついています。