困ったことに,pushad や popad は使えないようだ.
PUSHA, PUSHAD, POPA, and POPAD are not supported.
LKMで処理を挟み込む前に汎用レジスタを退避させたい.とりあえずの対処として,makeした後に生成される *.o を objdump -d で逆アセンブルして,使われるレジスタを見つけた.その後,使われているレジスタを push/pop で退避させた.
参考:Intel® 64 and IA-32 Architectures Software Developer Manuals
0 件のコメント:
コメントを投稿