Hi all, I was testing some driver that I have for nRF24L01+. ATM the driver sends a frame a changes from TX to RX the fastest possible. The switching from TX to RX is maded at hard IRQ, the rf_hard_irq() sends one message, two spi_transfers to program the nRF24L01+ to RX. The messages are sended asynchronous and I have two trace_puts() calls to measure the times using FTRACE feature. The kernel version is 3.10.53 running on arm (i.MX6) I've noted that spi_master struct has an rt boolean member which should increace the priority of spi tasks to higher possible. I did that and measure the times, they were about 100us then I removed this and measue again, they were about 75us. Summarazing, increasing the spi workers priority had increased the time that takes to change from TX to RX, remembering that this change is done by sending two spi transfers to the nRF24L01+. I want to understand why I higher priority is decreasing the performance instead of boosting it? Best regards, The code can be viewed here: https://gist.github.com/gkos/f171be307cca71e375a8 -- "Do or do not. There is no try" Yoda Master _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies