Re: Disabling interrupts before block device request call
Jens Axboe wrote > >Even with dropping io_request_lock, it's not recommended to sleep inside >the request_fn. WIth plugging, you are basically preventing the other >plugged queues from being run until you return. > >You could use a timer or similar to call you on a specified timeout >instead. > Does it mean, that if i need timer interrupts in my block device driver, i need to do sti() instead of unlock io_request_lock? Is there any common rule for device drivers in such case? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: Disabling interrupts before block device request call
On Fri, May 25 2001, Alexandr Andreev wrote: > Hi, list > In ll_rw_block.c, before calling block device specific request function > ( i mean do_hd_request, do_ftl_request, ... ) the io_request_lock is > locking, and all interrupts are disabling. I know, that request handler > routine have to be atomic, but when we read data from a flash device ( > for example ) we use a timeouts. Where do we have to enable timer > interrupts, or should we disable all interrupts? Even with dropping io_request_lock, it's not recommended to sleep inside the request_fn. WIth plugging, you are basically preventing the other plugged queues from being run until you return. You could use a timer or similar to call you on a specified timeout instead. -- Jens Axboe - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Disabling interrupts before block device request call
Hi, list In ll_rw_block.c, before calling block device specific request function ( i mean do_hd_request, do_ftl_request, ... ) the io_request_lock is locking, and all interrupts are disabling. I know, that request handler routine have to be atomic, but when we read data from a flash device ( for example ) we use a timeouts. Where do we have to enable timer interrupts, or should we disable all interrupts? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/