c - linux - kernel thread preemption -
i've got realtime linux kernel , i'm developing code kernel thread. thread called ethernet interrupt handler. noticed every call of thread takes 100 jiffies. in time reads 256 ethernet frames. ethernet 1gbps , download speed measured 4mb/s. think 4mb/s speed using 1gbps ethernet far slow.
i'm trying profile kernel thread, because think 100 jiffies much. i'd ask if there way tell how many times kernel thread has been preempted?
if inside thread, can give try following printk("preempt count %d\n",current_thread_info()->preempt_count);
you can add @ entry of thread , check count difference between successive prints
Comments
Post a Comment