Changeset f619ec11 in mainline for kernel/generic/src/ddi/irq.c


Ignore:
Timestamp:
2007-02-03T21:26:54Z (17 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
cf5ddf6
Parents:
80bcaed
Message:

When clock() is called by an external interrupt dispatched by the IRQ dispatcher,
no spinlock can be held or the kernel will not be preemptive. This fixes Ticket #24.

Formating and indentation fixes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/ddi/irq.c

    r80bcaed rf619ec11  
    303303        spinlock_lock(&irq->lock);
    304304        if (devno == -1) {
    305                 /* Invoked by irq_dispatch(). */
     305                /* Invoked by irq_dispatch_and_lock(). */
    306306                rv = ((irq->inr == inr) && (irq->claim() == IRQ_ACCEPT));
    307307        } else {
    308                 /* Invoked by irq_find(). */
     308                /* Invoked by irq_find_and_lock(). */
    309309                rv = ((irq->inr == inr) && (irq->devno == devno));
    310310        }
     
    362362        spinlock_lock(&irq->lock);
    363363        if (devno == -1) {
    364                 /* Invoked by irq_dispatch() */
     364                /* Invoked by irq_dispatch_and_lock() */
    365365                rv = (irq->claim() == IRQ_ACCEPT);
    366366        } else {
    367                 /* Invoked by irq_find() */
     367                /* Invoked by irq_find_and_lock() */
    368368                rv = (irq->devno == devno);
    369369        }
Note: See TracChangeset for help on using the changeset viewer.