Description
In the Linux kernel, the following vulnerability has been resolved: gpio: mt7621: avoid corruption of shared interrupt trigger state The bank-shared fields like 'rising' and 'falling' are modified using non-atomic read-modify-write operations. Since every gpio chip instance represents an entire bank of 32 pins, if 'mediatek_gpio_irq_type()' is called concurrently for different IRQs on the same bank a possible overwrite of each other's configuration is possible. Thus, protect this state with 'gpio_generic_lock_irqsave' lock in the same way it is handled in irp_chip 'mediatek_gpio_irq_mask()' and 'mediatek_gpio_irq_unmask()' callbacks.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
4ba9c3afda41213ec98c30053e32963892e6dc7c to < bddf9314a57a243dd11ed945ba11e146e331257eaffected4ba9c3afda41213ec98c30053e32963892e6dc7c to < 207d3ebf36f654a43a934addeb4d6775cb2dd667affected4ba9c3afda41213ec98c30053e32963892e6dc7c to < 877a243006788aaa586b2d087f27c9f3628071b0affected4ba9c3afda41213ec98c30053e32963892e6dc7c to < d3b9026ef78da3018a7d2c5a9c9d611de6d45c47affected4ba9c3afda41213ec98c30053e32963892e6dc7c to < a60a40c9ba30edd06d3fb4215fdf430ed968728eaffected4ba9c3afda41213ec98c30053e32963892e6dc7c to < 1781172526d1092323af443fa03f00e6de560401affected
Linux Linux
Default version status: affected
4.19affected0 to < 4.19unaffected6.1.184 to ≤ 6.1.*unaffected6.6.148 to ≤ 6.6.*unaffected6.12.101 to ≤ 6.12.*unaffected6.18.40 to ≤ 6.18.*unaffected7.1.5 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/bddf9314a57a243dd11ed945ba11e146e331257e ↗
- https://git.kernel.org/stable/c/207d3ebf36f654a43a934addeb4d6775cb2dd667 ↗
- https://git.kernel.org/stable/c/877a243006788aaa586b2d087f27c9f3628071b0 ↗
- https://git.kernel.org/stable/c/d3b9026ef78da3018a7d2c5a9c9d611de6d45c47 ↗
- https://git.kernel.org/stable/c/a60a40c9ba30edd06d3fb4215fdf430ed968728e ↗
- https://git.kernel.org/stable/c/1781172526d1092323af443fa03f00e6de560401 ↗