HI I borrowed the block_write code from fs/block_dev.c. When I am doing a write the task locks up in schedual() - wait_on_buffer(). This means that the buffer is locked, and stays locked. The funny thing is when I do a 'dd if=/dev/zero of=/dev/igf0 bs=1024 count=16' the driver works and write zeros. But when I open the device in a different program, it locks up. The first block is written the it hangs. I have put printk() of the buffer flags and both (dd and my program)look the same. I am writting to a flash device that does not produce interrupts. I am waiting for sourceforge to give me a project so I can post the source. but fs/block_dev.c block_write() is the same code, almost Shaun Savage - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/