In the Linux kernel, the following vulnerability has been resolved:
regulator: da9211: Use irq handler when ready
If the system does not come from reset (like when it is kexec()), the regulator might have an IRQ waiting for us.
If we enable the IRQ handler before its structures are ready, we crash.
This patch fixes:
[ 1.141839] Unable to handle kernel read from unreadable memory at virtual address 0000000000000078 [ 1.316096] Call trace: [ 1.316101] blockingnotifiercallchain+0x20/0xa8 [ 1.322757] cpu cpu0: dummy supplies not allowed for exclusive requests [ 1.327823] regulatornotifiercallchain+0x1c/0x2c [ 1.327825] da9211irqhandler+0x68/0xf8 [ 1.327829] irq_thread+0x11c/0x234 [ 1.327833] kthread+0x13c/0x154
{ "vanir_signatures": [ { "signature_type": "Function", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d443308edbfb6e9e757b478af908515110d1efd5", "target": { "file": "drivers/regulator/da9211-regulator.c", "function": "da9211_i2c_probe" }, "id": "CVE-2022-48891-00597e79", "digest": { "length": 1694.0, "function_hash": "14421842121869731910597651368545935284" }, "signature_version": "v1" }, { "signature_type": "Line", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@02228f6aa6a64d588bc31e3267d05ff184d772eb", "target": { "file": "drivers/regulator/da9211-regulator.c" }, "id": "CVE-2022-48891-0e44bb66", "digest": { "line_hashes": [ "236573431584419491344517322113174454223", "237514837948506040236310665155915950579", "322538376298713824564339715645958696502", "333857400021280439828767128641016414403", "260140824336700602985091549517242020557", "288710260708991210044412441878967783353", "77585491081566166829801384553845460133", "245473712994321740232473563776494605315", "125481121961003401143759620781893632498" ], "threshold": 0.9 }, "signature_version": "v1" }, { "signature_type": "Function", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@470f6a9175f13a53810734658c35cc5bba33be01", "target": { "file": "drivers/regulator/da9211-regulator.c", "function": "da9211_i2c_probe" }, "id": "CVE-2022-48891-31458a51", "digest": { "length": 1672.0, "function_hash": "45038931428278010548998445334679262298" }, "signature_version": "v1" }, { "signature_type": "Line", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d4aa749e046435f054e94ebf50cad143d6229fae", "target": { "file": "drivers/regulator/da9211-regulator.c" }, "id": "CVE-2022-48891-39e3f9a1", "digest": { "line_hashes": [ "236573431584419491344517322113174454223", "237514837948506040236310665155915950579", "322538376298713824564339715645958696502", "333857400021280439828767128641016414403", "260140824336700602985091549517242020557", "288710260708991210044412441878967783353", "77585491081566166829801384553845460133", "245473712994321740232473563776494605315", "125481121961003401143759620781893632498" ], "threshold": 0.9 }, "signature_version": "v1" }, { "signature_type": "Line", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1c1afcb8839b91c09d211ea304faa269763b1f91", "target": { "file": "drivers/regulator/da9211-regulator.c" }, "id": "CVE-2022-48891-3bb3134b", "digest": { "line_hashes": [ "236573431584419491344517322113174454223", "237514837948506040236310665155915950579", "322538376298713824564339715645958696502", "333857400021280439828767128641016414403", "260140824336700602985091549517242020557", "288710260708991210044412441878967783353", "77585491081566166829801384553845460133", "245473712994321740232473563776494605315", "125481121961003401143759620781893632498" ], "threshold": 0.9 }, "signature_version": "v1" }, { "signature_type": "Function", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1c1afcb8839b91c09d211ea304faa269763b1f91", "target": { "file": "drivers/regulator/da9211-regulator.c", "function": "da9211_i2c_probe" }, "id": "CVE-2022-48891-4436f48f", "digest": { "length": 1694.0, "function_hash": "14421842121869731910597651368545935284" }, "signature_version": "v1" }, { "signature_type": "Function", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@02228f6aa6a64d588bc31e3267d05ff184d772eb", "target": { "file": "drivers/regulator/da9211-regulator.c", "function": "da9211_i2c_probe" }, "id": "CVE-2022-48891-9be55cbc", "digest": { "length": 1672.0, "function_hash": "45038931428278010548998445334679262298" }, "signature_version": "v1" }, { "signature_type": "Line", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f75cde714e0a67f73ef169aa50d4ed77d04f7236", "target": { "file": "drivers/regulator/da9211-regulator.c" }, "id": "CVE-2022-48891-9fcf9dd3", "digest": { "line_hashes": [ "236573431584419491344517322113174454223", "237514837948506040236310665155915950579", "322538376298713824564339715645958696502", "333857400021280439828767128641016414403", "260140824336700602985091549517242020557", "288710260708991210044412441878967783353", "77585491081566166829801384553845460133", "245473712994321740232473563776494605315", "125481121961003401143759620781893632498" ], "threshold": 0.9 }, "signature_version": "v1" }, { "signature_type": "Function", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f75cde714e0a67f73ef169aa50d4ed77d04f7236", "target": { "file": "drivers/regulator/da9211-regulator.c", "function": "da9211_i2c_probe" }, "id": "CVE-2022-48891-bbeb6581", "digest": { "length": 1694.0, "function_hash": "14421842121869731910597651368545935284" }, "signature_version": "v1" }, { "signature_type": "Line", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ad1336274f733a7cb1f87b5c5908165a2c14df53", "target": { "file": "drivers/regulator/da9211-regulator.c" }, "id": "CVE-2022-48891-c1ae1dbd", "digest": { "line_hashes": [ "236573431584419491344517322113174454223", "237514837948506040236310665155915950579", "322538376298713824564339715645958696502", "333857400021280439828767128641016414403", "260140824336700602985091549517242020557", "288710260708991210044412441878967783353", "77585491081566166829801384553845460133", "245473712994321740232473563776494605315", "125481121961003401143759620781893632498" ], "threshold": 0.9 }, "signature_version": "v1" }, { "signature_type": "Line", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d443308edbfb6e9e757b478af908515110d1efd5", "target": { "file": "drivers/regulator/da9211-regulator.c" }, "id": "CVE-2022-48891-cbdae720", "digest": { "line_hashes": [ "236573431584419491344517322113174454223", "237514837948506040236310665155915950579", "322538376298713824564339715645958696502", "333857400021280439828767128641016414403", "260140824336700602985091549517242020557", "288710260708991210044412441878967783353", "77585491081566166829801384553845460133", "245473712994321740232473563776494605315", "125481121961003401143759620781893632498" ], "threshold": 0.9 }, "signature_version": "v1" }, { "signature_type": "Function", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ad1336274f733a7cb1f87b5c5908165a2c14df53", "target": { "file": "drivers/regulator/da9211-regulator.c", "function": "da9211_i2c_probe" }, "id": "CVE-2022-48891-d7cacde9", "digest": { "length": 1672.0, "function_hash": "45038931428278010548998445334679262298" }, "signature_version": "v1" }, { "signature_type": "Function", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d4aa749e046435f054e94ebf50cad143d6229fae", "target": { "file": "drivers/regulator/da9211-regulator.c", "function": "da9211_i2c_probe" }, "id": "CVE-2022-48891-dfd6e815", "digest": { "length": 1672.0, "function_hash": "45038931428278010548998445334679262298" }, "signature_version": "v1" }, { "signature_type": "Line", "deprecated": false, "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@470f6a9175f13a53810734658c35cc5bba33be01", "target": { "file": "drivers/regulator/da9211-regulator.c" }, "id": "CVE-2022-48891-f4c82426", "digest": { "line_hashes": [ "236573431584419491344517322113174454223", "237514837948506040236310665155915950579", "322538376298713824564339715645958696502", "333857400021280439828767128641016414403", "260140824336700602985091549517242020557", "288710260708991210044412441878967783353", "77585491081566166829801384553845460133", "245473712994321740232473563776494605315", "125481121961003401143759620781893632498" ], "threshold": 0.9 }, "signature_version": "v1" } ] }