ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

カーネルエンジニアコミュのMIPSのTLB例外ハンドラについて

  • mixiチェック
  • このエントリーをはてなブックマークに追加
MIPS R3000のSMPマシンにLinux2.6.10を移植しています。

R3000のTLB例外ハンドラはSMPを想定していなかったため、
SMP対応に改造しました。
TLB例外(MOD)が発生すると、その例外ハンドラ経由で、
do_page_fault
handle_mm_fault
do_wp_page
flush_tlb_page
smp_call_function
の順で呼ばれるのですが、smp_call_functionは
例外発生を禁止した状態で呼ばれることを禁じています。

改造に不備があったのかと思い、どの時点で例外発生を
許可すればよいか調べるため、R4000の例外ハンドラを見て
いたのですが、どうも割り込みを許可するコードは入って
いないようです。

R4000ではどのようにしてこの問題(割り込みを禁じたまま
smp_call_functionを呼んでしまう)を回避しているのでしょうか?

ご存じの方いらっしゃいましたら、ご教授願います。

コメント(0)

mixiユーザー
ログインしてコメントしよう!

カーネルエンジニア 更新情報

カーネルエンジニアのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。