git: kernel - Fix atomicy issue in APIC EOI and enable_icus

Matthew Dillon dillon at crater.dragonflybsd.org
Fri Aug 28 18:36:09 PDT 2020


commit bbf928c6834c0d9a5b2e705795d21e32558b9af4
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Fri Aug 28 18:23:50 2020 -0700

    kernel - Fix atomicy issue in APIC EOI and enable_icus
    
    * Change ICU_INTREN() and ICU_INTRDIS() to only modify the ICU
      whos bit is being changed, rather than always setting the mask
      for both ICUs.
    
    * If masking a level IRQ on the APIC, make sure the EOI
      to the APIC is atomic with the masking operation.
    
    * Make sure that ICU enablement is atomic with ICU masking
      operations.
    
    * Does not fix any known bugs

Summary of changes:
 sys/platform/pc64/apic/apic_vector.s |  6 +++---
 sys/platform/pc64/icu/icu_ipl.s      | 20 ++++++++++++++++++--
 sys/platform/pc64/icu/icu_vector.s   |  8 ++++++--
 3 files changed, 27 insertions(+), 7 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/bbf928c6834c0d9a5b2e705795d21e32558b9af4


-- 
DragonFly BSD source repository



More information about the Commits mailing list