linux-2.6.33/BUG()
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#cce305f9]
#backlinks
*説明 [#pd9831e5]
-パス: [[linux-2.6.33/include/asm-generic/bug.h]]
--x86 版: [[linux-2.6.33/BUG()(x86)]]
-バグ警告を出してカーネルを停止(パニック)させる。
**引数 [#na0af98b]
-なし
**返り値 [#j5fc4ae9]
-なし
**参考 [#d68682db]
-独自の BUG() を実装しているアーキテクチャ
$ grep -r HAVE_ARCH_BUG . | grep define | grep -v BUG_ON
./arch/alpha/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/arm/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/avr32/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/blackfin/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/cris/include/arch-v10/arch/bug.h:#define HAVE_ARC...
./arch/cris/include/arch-v32/arch/bug.h:#define HAVE_ARC...
./arch/frv/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/ia64/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/m68k/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/mips/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/mn10300/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/parisc/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/powerpc/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/s390/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/sh/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/sparc/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/x86/include/asm/bug.h:#define HAVE_ARCH_BUG
*実装 [#e7675614]
***CONFIG_BUG が未定義の場合 [#pc0c4952]
#ifdef CONFIG_BUG
(...略...)
#ifndef HAVE_ARCH_BUG
-アーキテクチャ固有の BUG() がなければ共通の BUG() を使う。
--ほぼ全てのアーキテクチャが独自の BUG() を定義している。
#define BUG() do { \
printk("BUG: failure at %s:%d/%s()!\n", __FILE__...
); \
panic("BUG!"); \
} while (0)
-バグ警告(バグの発生したソースファイル、行番号、関数名)...
カーネルパニックさせる。
--[[linux-2.6.33/printk()]]
--[[linux-2.6.33/panic()]]
#endif
(...略...)
***CONFIG_BUG が未定義の場合 [#f656daf4]
#else /* !CONFIG_BUG */
#ifndef HAVE_ARCH_BUG
#define BUG()
-何もしない
#endif
(...略...)
#endif
*コメント [#q589800b]
終了行:
*参照元 [#cce305f9]
#backlinks
*説明 [#pd9831e5]
-パス: [[linux-2.6.33/include/asm-generic/bug.h]]
--x86 版: [[linux-2.6.33/BUG()(x86)]]
-バグ警告を出してカーネルを停止(パニック)させる。
**引数 [#na0af98b]
-なし
**返り値 [#j5fc4ae9]
-なし
**参考 [#d68682db]
-独自の BUG() を実装しているアーキテクチャ
$ grep -r HAVE_ARCH_BUG . | grep define | grep -v BUG_ON
./arch/alpha/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/arm/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/avr32/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/blackfin/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/cris/include/arch-v10/arch/bug.h:#define HAVE_ARC...
./arch/cris/include/arch-v32/arch/bug.h:#define HAVE_ARC...
./arch/frv/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/ia64/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/m68k/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/mips/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/mn10300/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/parisc/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/powerpc/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/s390/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/sh/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/sparc/include/asm/bug.h:#define HAVE_ARCH_BUG
./arch/x86/include/asm/bug.h:#define HAVE_ARCH_BUG
*実装 [#e7675614]
***CONFIG_BUG が未定義の場合 [#pc0c4952]
#ifdef CONFIG_BUG
(...略...)
#ifndef HAVE_ARCH_BUG
-アーキテクチャ固有の BUG() がなければ共通の BUG() を使う。
--ほぼ全てのアーキテクチャが独自の BUG() を定義している。
#define BUG() do { \
printk("BUG: failure at %s:%d/%s()!\n", __FILE__...
); \
panic("BUG!"); \
} while (0)
-バグ警告(バグの発生したソースファイル、行番号、関数名)...
カーネルパニックさせる。
--[[linux-2.6.33/printk()]]
--[[linux-2.6.33/panic()]]
#endif
(...略...)
***CONFIG_BUG が未定義の場合 [#f656daf4]
#else /* !CONFIG_BUG */
#ifndef HAVE_ARCH_BUG
#define BUG()
-何もしない
#endif
(...略...)
#endif
*コメント [#q589800b]
ページ名: