ソースの表示以前のリビジョンバックリンク全て展開する/折り畳む文書の先頭へ Share via Share via... Twitter LinkedIn Facebook Pinterest Telegram WhatsApp Yammer Reddit Teams最近の変更Send via e-Mail印刷パーマリンク × ZFSでチェックサムエラー発生! zpool statusしてみたらチェックサムエラーが発生していた。 pool: zroot state: ONLINE status: One or more devices has experienced an error resulting in data corruption. Applications may be affected. action: Restore the file in question if possible. Otherwise restore the entire pool from backup. see: http://www.sun.com/msg/ZFS-8000-8A scan: none requested config: NAME STATE READ WRITE CKSUM zroot ONLINE 0 0 1 mirror-0 ONLINE 0 0 2 gpt/boot0a ONLINE 0 0 2 gpt/boot0b ONLINE 0 0 2 errors: 3 data errors, use '-v' for a list zpool scrub掛けて待つ事40分。改めてzpool status。 pool: zroot state: ONLINE status: One or more devices has experienced an error resulting in data corruption. Applications may be affected. action: Restore the file in question if possible. Otherwise restore the entire pool from backup. see: http://www.sun.com/msg/ZFS-8000-8A scan: scrub repaired 0 in 0h38m with 24 errors on Fri Oct 7 23:44:36 2011 config: NAME STATE READ WRITE CKSUM zroot ONLINE 0 0 25 mirror-0 ONLINE 0 0 50 gpt/boot0a ONLINE 0 0 50 gpt/boot0b ONLINE 0 0 50 errors: 24 data errors, use '-v' for a list ちょwwwwwwおまwwwwwwwエラー増えとるwwwwww 何かの間違いに違いない、と淡い期待を抱きつつ再びscrub&status。 pool: zroot state: ONLINE status: One or more devices has experienced an error resulting in data corruption. Applications may be affected. action: Restore the file in question if possible. Otherwise restore the entire pool from backup. see: http://www.sun.com/msg/ZFS-8000-8A scan: scrub repaired 0 in 0h38m with 24 errors on Sat Oct 8 00:25:46 2011 config: NAME STATE READ WRITE CKSUM zroot ONLINE 0 0 49 mirror-0 ONLINE 0 0 98 gpt/boot0a ONLINE 0 0 98 gpt/boot0b ONLINE 0 0 98 errors: 24 data errors, use '-v' for a list 更に増えとるorz しかも「修復出来なかったファイルリスト」みたいなのが続けて表示されてるorz これはどうしたものか・・・。 MinGW+OpenGL+GLUTで毎回ハマること $ gcc -lfreeglut -lglu32 -lopengl32 main.c main.o:main.c:(.text+0x1c): undefined reference to `_imp____glutInitWithExit@12' main.o:main.c:(.text+0x3e): undefined reference to `_imp____glutCreateWindowWithExit@8' main.o:main.c:(.text+0x60): undefined reference to `_imp____glutCreateMenuWithExit@8' main.o:main.c:(.text+0xa0): undefined reference to `_imp__glutInitDisplayMode@4' main.o:main.c:(.text+0xb9): undefined reference to `_imp__glutInitWindowSize@8' main.o:main.c:(.text+0xd2): undefined reference to `_imp__glutInitWindowPosition@8' main.o:main.c:(.text+0xf8): undefined reference to `_imp__glutDisplayFunc@4' main.o:main.c:(.text+0x109): undefined reference to `_imp__glutReshapeFunc@4' main.o:main.c:(.text+0x113): undefined reference to `_imp__glutMainLoop@0' main.o:main.c:(.text+0x13e): undefined reference to `glClear@4' (以下略) 大量のリンクエラーが出て(・3・)あるぇ~?となる。 解決方法・・・というか正しくは↓のように、コンパイル対象のソースを-lオプションより前に持ってくるである。 $ gcc main.c -lfreeglut -lglu32 -lopengl32 どういうわけか、この罠だけは毎度ハマっては、ライブラリを入れ替えてみたり小手先のマクロを定義してみたりして時間を無駄にしてしまうorz ExtAudioFileは重くなかった 前のエントリで発生していた音飛び問題が解決。 原因はインタリーブのデータを非インタリーブに変換する処理が間に合ってなかった模様。 この処理はNSFの再生でも行われてるし、その程度で処理落ちするか?って気もするが、全てインタリーブで処理するようにしたら奇麗サッパリ解決した。 疑ってごめんね、ExtAudioFileたん。 ExtAudioFileは重い? 本腰を入れてMac用のオーディオプレーヤーを作成中。足掛け3年位作り続けてるけど、今回は本気。もりもり機能実装中・・・と行きたいところだが、ExtAduioFileを使った各種オーディオファイルの再生で、たまにノイズが出るバグが取れなくて苦悩中。 Core Audioのレンダーコールバックで要求してくるサンプル数を多めにとってみたが、若干の改善が見られるも解決には至らず。それならばと、デコード部分を別スレッド化して非同期でバックバッファを埋めるようにしても、これまた有意な改善は見られず。バッファのロックが足かせになってるかも?と思い、急ごしらえでバッファ2枚を使ったスワップ式にしてみても駄目駄目。 開発機は4年前のMacBook Proだけど仮にもCore 2 Duo 2.4GHzのマシンだから、例えデバッグビルドだとしても、たかがAAC程度のデコードで処理落ちするとは考えられない。そもそも、ExtAudioFile自体は最適化の有無の影響は受けないだろうし、処理中もまだまだCPUの余裕はある。 NSF(NES Sound Format:ファミコンのサウンド形式)の再生は問題なく出来てるから、ネックになってるのはExtAudioFileとしか考えられないんだよなぁ…。 むーん・・・分からん。 次はCore Audioに渡すフォーマットを32bit Floatの正準フォーマットにしてみるとしよう。 シングルトン()笑 会社でこんなソースを見かけた。 class Hoge { public: static Hoge *Instance; static Hoge *getInstance() { return Instance; } Hoge() { Instance = this; }; void initialize() { if (Instance == 0) Instance = new Hoge; } (略) }; // シングルトン static Hoge hogeInstance; void doSomething() { hogeInstance::Instance->func(); } 見かけたというか、同じ仕組みのクラスがあっちこっちに散らばってた。念のために言っておく、コードはこれで間違いない。何度も見直したからね。 色々と突っ込みどころはあるけど、まず、シングルトンを想定してるのにコンストラクタをpublicで書いちゃう男の人って……。せめて多重生成検知のassertくらい入れようず。 いやいやいや、グループ会社内で(自称)一番技術力が高いと公言してるところの、仮にも俺より高給取りで優秀なプログラマが書いたコードだ。きっと俺なんぞには考えもつかない、深遠なる理由があるに違いない。 でも、色々と考えてみたけど、やっぱり何がしたいのか解らなかった。しかし、メンバ変数を触らないメンバ関数は、クラスの実体が無くても正常に呼べるって事は解った(実験済み)。つまり、上のクラスのinitialize()は期待通りの動作をする。これがC++の仕様の範疇かどうかは知らない。 静的メンバ関数がヌルポで呼び出せる(static_cast<Hoge*>(0)→staticFunc();)のは知ってたけど、メンバ関数も大丈夫だとはねぇ…。よーく考えてみれば、確かにメンバ関数はそのクラスで共用だから、関数の実体は静的に存在してるだろうから呼べてもおかしくないはない。でもやっぱり気持ち悪い。 < Newer Posts 1 2 ... 64 65 66 67 68 69 70 ... 83 84 Older Posts > start.txt 最終更新: 2022-07-27 15:26by Decomo