Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset 3fb14b0 in mainline


Ignore:
Timestamp:
2019-05-07T11:50:49Z (11 months ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
master
Children:
1e8b633
Parents:
1fbe639b
Message:

Fix CUDA interrupt handling race.

It is necessary to clear SR_INT flag before processing the interrupt,
otherwise we can loose an interrupt.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/bus/adb/cuda_adb/cuda_adb.c

    r1fbe639b r3fb14b0  
    274274        fibril_mutex_lock(&cuda->dev_lock);
    275275
     276        /* Lower IFR.SR_INT so that CUDA can generate next int by raising it. */
     277        pio_write_8(&cuda->regs->ifr, SR_INT);
     278
    276279        switch (cuda->xstate) {
    277280        case cx_listen:
     
    293296        }
    294297
    295         /* Lower IFR.SR_INT so that CUDA can generate next int by raising it. */
    296         pio_write_8(&cuda->regs->ifr, SR_INT);
    297298
    298299        fibril_mutex_unlock(&cuda->dev_lock);
Note: See TracChangeset for help on using the changeset viewer.