Changeset f9d0a86 in mainline for kernel/generic/src/ipc/irq.c
- Timestamp:
- 2017-11-14T12:24:42Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 6cad776
- Parents:
- 887c9de (diff), d2d142a (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - git-author:
- Aearsis <Hlavaty.Ondrej@…> (2017-11-14 01:04:19)
- git-committer:
- Aearsis <Hlavaty.Ondrej@…> (2017-11-14 12:24:42)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/ipc/irq.c
r887c9de rf9d0a86 271 271 } 272 272 273 static void irq_hash_out(irq_t *irq) 274 { 275 irq_spinlock_lock(&irq_uspace_hash_table_lock, true); 276 irq_spinlock_lock(&irq->lock, false); 277 278 if (irq->notif_cfg.hashed_in) { 279 /* Remove the IRQ from the uspace IRQ hash table. */ 280 hash_table_remove_item(&irq_uspace_hash_table, &irq->link); 281 irq->notif_cfg.hashed_in = false; 282 } 283 284 irq_spinlock_unlock(&irq->lock, false); 285 irq_spinlock_unlock(&irq_uspace_hash_table_lock, true); 286 } 287 273 288 static void irq_destroy(void *arg) 274 289 { 275 290 irq_t *irq = (irq_t *) arg; 291 292 irq_hash_out(irq); 276 293 277 294 /* Free up the IRQ code and associated structures. */ … … 373 390 assert(kobj->irq->notif_cfg.answerbox == box); 374 391 375 irq_spinlock_lock(&irq_uspace_hash_table_lock, true); 376 irq_spinlock_lock(&kobj->irq->lock, false); 377 378 if (kobj->irq->notif_cfg.hashed_in) { 379 /* Remove the IRQ from the uspace IRQ hash table. */ 380 hash_table_remove_item(&irq_uspace_hash_table, 381 &kobj->irq->link); 382 kobj->irq->notif_cfg.hashed_in = false; 383 } 384 385 irq_spinlock_unlock(&kobj->irq->lock, false); 386 irq_spinlock_unlock(&irq_uspace_hash_table_lock, true); 392 irq_hash_out(kobj->irq); 387 393 388 394 kobject_put(kobj);
Note:
See TracChangeset
for help on using the changeset viewer.