Messages in this thread | | | From | "MEHTA,HIREN (A-SanJose,ex1)" <> | Subject | RE: spin locks and timers in scsi hba driver | Date | Mon, 15 Oct 2001 16:44:44 -0600 |
| |
Well, I thought spin_unlock_irq() is supposed to enable all maskable interrupts by setting IF flag in the EFLAGS register which gets cleared by local_irq_save(). I understand that spin_unlock_irq does not restore all the flags. But it atleast sets the IF flag which enables the interrupt. I believe that this is atleast true in case of intel x86 arch. We have not made our sources open-source yet. So I cannot give out the sources. Sorry.
Thanks and regards, -hiren
-----Original Message----- From: arjan@fenrus.demon.nl [mailto:arjan@fenrus.demon.nl] Sent: Monday, October 15, 2001 3:11 PM To: hiren_mehta@agilent.com Cc: linux-kernel@vger.kernel.org Subject: Re: spin locks and timers in scsi hba driver
In article <01A7DAF31F93D511AEE300D0B706ED9208E495@axcs13.cos.agilent.com> you wrote: > Hi List,
> I want to make sure that my hba-driver timers do run > when the uppar scsi-layer calls any of the error handler entry points > and while I am still doing the error handling. As I know, scsi-layer > calls spin_lock_irqsave(&io_request_lock, flags) before calling the > error handlers and they call spin_unlock_irqrestore(&io_request_lock, flags) > after returning from the error handlers. So, inside the error handlers, > I call spin_unlock_irq(&io_request_lock); wait for the timers to run, > and the again call spin_lock_irq(&io_request_lock).
well interrupts are still disabled... Could you give an URL to the source of your driver so that I and others can see what you really are trying to do ?
Greetings, Arjan van de Ven - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |