CVE-2022-49132 (GCVE-0-2022-49132)
Vulnerability from cvelistv5
Published
2025-02-26 01:55
Modified
2025-05-04 08:30
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: ath11k: pci: fix crash on suspend if board file is not found Mario reported that the kernel was crashing on suspend if ath11k was not able to find a board file: [ 473.693286] PM: Suspending system (s2idle) [ 473.693291] printk: Suspending console(s) (use no_console_suspend to debug) [ 474.407787] BUG: unable to handle page fault for address: 0000000000002070 [ 474.407791] #PF: supervisor read access in kernel mode [ 474.407794] #PF: error_code(0x0000) - not-present page [ 474.407798] PGD 0 P4D 0 [ 474.407801] Oops: 0000 [#1] PREEMPT SMP NOPTI [ 474.407805] CPU: 2 PID: 2350 Comm: kworker/u32:14 Tainted: G W 5.16.0 #248 [...] [ 474.407868] Call Trace: [ 474.407870] <TASK> [ 474.407874] ? _raw_spin_lock_irqsave+0x2a/0x60 [ 474.407882] ? lock_timer_base+0x72/0xa0 [ 474.407889] ? _raw_spin_unlock_irqrestore+0x29/0x3d [ 474.407892] ? try_to_del_timer_sync+0x54/0x80 [ 474.407896] ath11k_dp_rx_pktlog_stop+0x49/0xc0 [ath11k] [ 474.407912] ath11k_core_suspend+0x34/0x130 [ath11k] [ 474.407923] ath11k_pci_pm_suspend+0x1b/0x50 [ath11k_pci] [ 474.407928] pci_pm_suspend+0x7e/0x170 [ 474.407935] ? pci_pm_freeze+0xc0/0xc0 [ 474.407939] dpm_run_callback+0x4e/0x150 [ 474.407947] __device_suspend+0x148/0x4c0 [ 474.407951] async_suspend+0x20/0x90 dmesg-efi-164255130401001: Oops#1 Part1 [ 474.407955] async_run_entry_fn+0x33/0x120 [ 474.407959] process_one_work+0x220/0x3f0 [ 474.407966] worker_thread+0x4a/0x3d0 [ 474.407971] kthread+0x17a/0x1a0 [ 474.407975] ? process_one_work+0x3f0/0x3f0 [ 474.407979] ? set_kthread_struct+0x40/0x40 [ 474.407983] ret_from_fork+0x22/0x30 [ 474.407991] </TASK> The issue here is that board file loading happens after ath11k_pci_probe() succesfully returns (ath11k initialisation happends asynchronously) and the suspend handler is still enabled, of course failing as ath11k is not properly initialised. Fix this by checking ATH11K_FLAG_QMI_FAIL during both suspend and resume. Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03003-QCAHSPSWPL_V1_V2_SILICONZ_LITE-2
Impacted products
Vendor Product Version
Linux Linux Version: d5c65159f2895379e11ca13f62feabe93278985d
Version: d5c65159f2895379e11ca13f62feabe93278985d
Version: d5c65159f2895379e11ca13f62feabe93278985d
Version: d5c65159f2895379e11ca13f62feabe93278985d
Create a notification for this product.
   Linux Linux Version: 5.6
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/net/wireless/ath/ath11k/pci.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "fed4cef115ab21a18faf499b3fa9b9a4b544f941",
              "status": "affected",
              "version": "d5c65159f2895379e11ca13f62feabe93278985d",
              "versionType": "git"
            },
            {
              "lessThan": "f3c5ef433da82d257337424b3647ce9dcb37d4b5",
              "status": "affected",
              "version": "d5c65159f2895379e11ca13f62feabe93278985d",
              "versionType": "git"
            },
            {
              "lessThan": "aeed776c00e804a0f7896db39c7c661cea34ee1f",
              "status": "affected",
              "version": "d5c65159f2895379e11ca13f62feabe93278985d",
              "versionType": "git"
            },
            {
              "lessThan": "b4f4c56459a5c744f7f066b9fc2b54ea995030c5",
              "status": "affected",
              "version": "d5c65159f2895379e11ca13f62feabe93278985d",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/net/wireless/ath/ath11k/pci.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.6"
            },
            {
              "lessThan": "5.6",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.34",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.16.*",
              "status": "unaffected",
              "version": "5.16.20",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.17.*",
              "status": "unaffected",
              "version": "5.17.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "5.18",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.34",
                  "versionStartIncluding": "5.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.16.20",
                  "versionStartIncluding": "5.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.17.3",
                  "versionStartIncluding": "5.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.18",
                  "versionStartIncluding": "5.6",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nath11k: pci: fix crash on suspend if board file is not found\n\nMario reported that the kernel was crashing on suspend if ath11k was not able\nto find a board file:\n\n[  473.693286] PM: Suspending system (s2idle)\n[  473.693291] printk: Suspending console(s) (use no_console_suspend to debug)\n[  474.407787] BUG: unable to handle page fault for address: 0000000000002070\n[  474.407791] #PF: supervisor read access in kernel mode\n[  474.407794] #PF: error_code(0x0000) - not-present page\n[  474.407798] PGD 0 P4D 0\n[  474.407801] Oops: 0000 [#1] PREEMPT SMP NOPTI\n[  474.407805] CPU: 2 PID: 2350 Comm: kworker/u32:14 Tainted: G        W         5.16.0 #248\n[...]\n[  474.407868] Call Trace:\n[  474.407870]  \u003cTASK\u003e\n[  474.407874]  ? _raw_spin_lock_irqsave+0x2a/0x60\n[  474.407882]  ? lock_timer_base+0x72/0xa0\n[  474.407889]  ? _raw_spin_unlock_irqrestore+0x29/0x3d\n[  474.407892]  ? try_to_del_timer_sync+0x54/0x80\n[  474.407896]  ath11k_dp_rx_pktlog_stop+0x49/0xc0 [ath11k]\n[  474.407912]  ath11k_core_suspend+0x34/0x130 [ath11k]\n[  474.407923]  ath11k_pci_pm_suspend+0x1b/0x50 [ath11k_pci]\n[  474.407928]  pci_pm_suspend+0x7e/0x170\n[  474.407935]  ? pci_pm_freeze+0xc0/0xc0\n[  474.407939]  dpm_run_callback+0x4e/0x150\n[  474.407947]  __device_suspend+0x148/0x4c0\n[  474.407951]  async_suspend+0x20/0x90\ndmesg-efi-164255130401001:\nOops#1 Part1\n[  474.407955]  async_run_entry_fn+0x33/0x120\n[  474.407959]  process_one_work+0x220/0x3f0\n[  474.407966]  worker_thread+0x4a/0x3d0\n[  474.407971]  kthread+0x17a/0x1a0\n[  474.407975]  ? process_one_work+0x3f0/0x3f0\n[  474.407979]  ? set_kthread_struct+0x40/0x40\n[  474.407983]  ret_from_fork+0x22/0x30\n[  474.407991]  \u003c/TASK\u003e\n\nThe issue here is that board file loading happens after ath11k_pci_probe()\nsuccesfully returns (ath11k initialisation happends asynchronously) and the\nsuspend handler is still enabled, of course failing as ath11k is not properly\ninitialised. Fix this by checking ATH11K_FLAG_QMI_FAIL during both suspend and\nresume.\n\nTested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03003-QCAHSPSWPL_V1_V2_SILICONZ_LITE-2"
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2025-05-04T08:30:40.946Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/fed4cef115ab21a18faf499b3fa9b9a4b544f941"
        },
        {
          "url": "https://git.kernel.org/stable/c/f3c5ef433da82d257337424b3647ce9dcb37d4b5"
        },
        {
          "url": "https://git.kernel.org/stable/c/aeed776c00e804a0f7896db39c7c661cea34ee1f"
        },
        {
          "url": "https://git.kernel.org/stable/c/b4f4c56459a5c744f7f066b9fc2b54ea995030c5"
        }
      ],
      "title": "ath11k: pci: fix crash on suspend if board file is not found",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2022-49132",
    "datePublished": "2025-02-26T01:55:07.144Z",
    "dateReserved": "2025-02-26T01:49:39.267Z",
    "dateUpdated": "2025-05-04T08:30:40.946Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2022-49132\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-02-26T07:00:50.497\",\"lastModified\":\"2025-09-23T18:17:53.660\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nath11k: pci: fix crash on suspend if board file is not found\\n\\nMario reported that the kernel was crashing on suspend if ath11k was not able\\nto find a board file:\\n\\n[  473.693286] PM: Suspending system (s2idle)\\n[  473.693291] printk: Suspending console(s) (use no_console_suspend to debug)\\n[  474.407787] BUG: unable to handle page fault for address: 0000000000002070\\n[  474.407791] #PF: supervisor read access in kernel mode\\n[  474.407794] #PF: error_code(0x0000) - not-present page\\n[  474.407798] PGD 0 P4D 0\\n[  474.407801] Oops: 0000 [#1] PREEMPT SMP NOPTI\\n[  474.407805] CPU: 2 PID: 2350 Comm: kworker/u32:14 Tainted: G        W         5.16.0 #248\\n[...]\\n[  474.407868] Call Trace:\\n[  474.407870]  \u003cTASK\u003e\\n[  474.407874]  ? _raw_spin_lock_irqsave+0x2a/0x60\\n[  474.407882]  ? lock_timer_base+0x72/0xa0\\n[  474.407889]  ? _raw_spin_unlock_irqrestore+0x29/0x3d\\n[  474.407892]  ? try_to_del_timer_sync+0x54/0x80\\n[  474.407896]  ath11k_dp_rx_pktlog_stop+0x49/0xc0 [ath11k]\\n[  474.407912]  ath11k_core_suspend+0x34/0x130 [ath11k]\\n[  474.407923]  ath11k_pci_pm_suspend+0x1b/0x50 [ath11k_pci]\\n[  474.407928]  pci_pm_suspend+0x7e/0x170\\n[  474.407935]  ? pci_pm_freeze+0xc0/0xc0\\n[  474.407939]  dpm_run_callback+0x4e/0x150\\n[  474.407947]  __device_suspend+0x148/0x4c0\\n[  474.407951]  async_suspend+0x20/0x90\\ndmesg-efi-164255130401001:\\nOops#1 Part1\\n[  474.407955]  async_run_entry_fn+0x33/0x120\\n[  474.407959]  process_one_work+0x220/0x3f0\\n[  474.407966]  worker_thread+0x4a/0x3d0\\n[  474.407971]  kthread+0x17a/0x1a0\\n[  474.407975]  ? process_one_work+0x3f0/0x3f0\\n[  474.407979]  ? set_kthread_struct+0x40/0x40\\n[  474.407983]  ret_from_fork+0x22/0x30\\n[  474.407991]  \u003c/TASK\u003e\\n\\nThe issue here is that board file loading happens after ath11k_pci_probe()\\nsuccesfully returns (ath11k initialisation happends asynchronously) and the\\nsuspend handler is still enabled, of course failing as ath11k is not properly\\ninitialised. Fix this by checking ATH11K_FLAG_QMI_FAIL during both suspend and\\nresume.\\n\\nTested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03003-QCAHSPSWPL_V1_V2_SILICONZ_LITE-2\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: ath11k: pci: se corrige el fallo en suspensi\u00f3n si no se encuentra el archivo de la placa Mario inform\u00f3 que el kernel se bloqueaba en suspensi\u00f3n si ath11k no pod\u00eda encontrar un archivo de placa: [ 473.693286] PM: Suspendiendo el sistema (s2idle) [ 473.693291] printk: Suspendiendo consola(s) (use no_console_suspend para depurar) [ 474.407787] ERROR: no se puede manejar el error de p\u00e1gina para la direcci\u00f3n: 0000000000002070 [ 474.407791] #PF: acceso de lectura de supervisor en modo kernel [ 474.407794] #PF: error_code(0x0000) - p\u00e1gina no presente [ 474.407798] PGD 0 P4D 0 [ 474.407801] Ups: 0000 [#1] PREEMPT SMP NOPTI [ 474.407805] CPU: 2 PID: 2350 Comm: kworker/u32:14 Contaminado: GW 5.16.0 #248 [...] [ 474.407868] Rastreo de llamadas: [ 474.407870]  [ 474.407874] ? _raw_spin_lock_irqsave+0x2a/0x60 [ 474.407882] ? lock_timer_base+0x72/0xa0 [ 474.407889] ? _raw_spin_unlock_irqrestore+0x29/0x3d [ 474.407892] ? try_to_del_timer_sync+0x54/0x80 [ 474.407896] ath11k_dp_rx_pktlog_stop+0x49/0xc0 [ath11k] [ 474.407912] ath11k_core_suspend+0x34/0x130 [ath11k] [ 474.407923] ath11k_pci_pm_suspend+0x1b/0x50 [ath11k_pci] [ 474.407928] pci_pm_suspend+0x7e/0x170 [ 474.407935] ? pci_pm_freeze+0xc0/0xc0 [ 474.407939] dpm_run_callback+0x4e/0x150 [ 474.407947] __device_suspend+0x148/0x4c0 [ 474.407951] async_suspend+0x20/0x90 dmesg-efi-164255130401001: Ups #1 Parte 1 [ 474.407955] async_run_entry_fn+0x33/0x120 [ 474.407959] process_one_work+0x220/0x3f0 [ 474.407966] worker_thread+0x4a/0x3d0 [ 474.407971] kthread+0x17a/0x1a0 [ 474.407975] ? process_one_work+0x3f0/0x3f0 [ 474.407979] ? set_kthread_struct+0x40/0x40 [ 474.407983] ret_from_fork+0x22/0x30 [ 474.407991]  El problema aqu\u00ed es que la carga del archivo de la placa ocurre despu\u00e9s de que ath11k_pci_probe() retorna exitosamente (la inicializaci\u00f3n de ath11k ocurre de manera asincr\u00f3nica) y el controlador de suspensi\u00f3n a\u00fan est\u00e1 habilitado, por supuesto fallando ya que ath11k no est\u00e1 inicializado correctamente. Solucione esto marcando ATH11K_FLAG_QMI_FAIL durante la suspensi\u00f3n y la reanudaci\u00f3n. Probado en: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03003-QCAHSPSWPL_V1_V2_SILICONZ_LITE-2\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-908\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.6\",\"versionEndExcluding\":\"5.15.34\",\"matchCriteriaId\":\"4826B343-2301-4772-8D0D-FC9B3661E54E\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.16\",\"versionEndExcluding\":\"5.16.20\",\"matchCriteriaId\":\"ABBBA66E-0244-4621-966B-9790AF1EEB00\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.17\",\"versionEndExcluding\":\"5.17.3\",\"matchCriteriaId\":\"AE420AC7-1E59-4398-B84F-71F4B4337762\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/aeed776c00e804a0f7896db39c7c661cea34ee1f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/b4f4c56459a5c744f7f066b9fc2b54ea995030c5\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/f3c5ef433da82d257337424b3647ce9dcb37d4b5\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/fed4cef115ab21a18faf499b3fa9b9a4b544f941\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}"
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…