Block layer currently abuses rq->csd.list.next for storing fifo_time. That is a terrible hack and completely unnecessary as well. Union achieves the same space saving in a cleaner way.
Showing the changes to include/linux/blkdev.h (1 of 4 files). Show all
Unified · Split
| @@ -99,6 +99,7 @@ struct request { · 98 unmodified lines | |||
| 99 | union { | 99 | union { |
| 100 | struct call_single_data csd; | 100 | struct call_single_data csd; |
| 101 | struct work_struct mq_flush_work; | 101 | struct work_struct mq_flush_work; |
| 102 | unsigned long fifo_time; | ||
| 102 | }; | 103 | }; |
| 103 | 104 | ||
| 104 | struct request_queue *q; | 105 | struct request_queue *q; |