#define LED_BASE    0x240
#define IRQ_LED_ON  9
#define IRQ_LED_OFF 10

struct tq_struct led_on_tq;
struct tq_struct led_off_tq;
...
some kind of interrupt_acknowledge
to disable hardware that generated this interrupt
(disable own interrupt)

//here are the 2 lines of code to queue and mark the bottom half
queue_task(&led_on_tq, &tq_immediate);
mark_bh(IMMEDIATE_BH);
printk("<1>led_on_handler: top half; bottom half queued and marked...\n"); 

etc...