今更ながら、include/linux/kernel.h container_of が相当使えるマクロ関数だと気づきました. 一見わかりにくいのですが、なんと「変数が入っている構造体へのポインタ」をコンパイル時に計算してくれるのです. container_of を用いることで、API に縛られず、データのひも付けを行うことができます. 以下のような感じです*1: struct callback_timer{ struct hrtimer timer; void (*callback)(unsigned long data); unsigned long data; int index; } struct callback_timer cb_timer[128]; // タイマが点火したときに呼ばれる関数. enum hrtimer_restart handle_hrtimer (struc